Cut potatoes into 1-inch pieces if large. Place potatoes in a saucepan with salted water, bring to a boil and cook until tender. Drain and set aside.
Heat olive oil in a sauté pan over medium-low heat.Add onion and whole spices. Sauté until onions are translucent and starting to brown.
Stir in diced tomato, garlic, ginger, ground spices, salt, and water/broth. Bring to a gentle simmer and cook for 5-10 minutes, or until tomatoes break down.
Add yogurt and stir until smooth then add in cooked potatoes. Heat through and serve garnished with cilantro and cashews.