In a large, heavy-bottomed dutch oven, heat oil over medium heat. Add onion and sautuntil translucent, about 5 minutes. Add yam and sautee for another 5 minutes.
Reduce heat to low and add ginger, garlic, and pepper flakes, and stir. Add lentils and ground spices to the pot, and stir until fully incorporated. Add tomatoes and 3 1/2 cups water, and raise heat to high until the mixture boils.
Once boiling, reduce heat until mixture is at a rapid simmer and cook about 40 minutes, stirring occasionally, or until lentils are fully cooked and the liquid is absorbed. Season to taste with salt.
Remove from heat once liquid is absorbed and lentils are cooked, add coconut cream and stir. Garnish with cilantro and serve immediately.