In a large saucepan over medium-low heat, heat oil, and sauté onion until softened.
Add sweet potato, and sauté for about 5 minutes.
Add minced ginger and garlic; stir, and reduce heat to low.
Finely dice chili, keeping seeds if you wish to add more heat.
Add chili, lentils, coriander, cumin, turmeric and ground ginger to pan.
Stir until lentils are well coated with oil.
Add tomatoes and 4 cups water.
Raise heat to bring to a boil, then reduce heat until mixture is at a fast simmer.
Cook uncovered until lentils and potatoes are soft, stirring occasionally, about 25 minutes.
Season to taste with salt, and continue to simmer until mixture has thickened, about 10 minutes.
Whisk dal to amalgamate lentils and sweet potatoes. If dal is too soupy, increase heat and cook for a little longer.
To serve, place dal in a serving bowl and sprinkle with chopped cilantro.
If desired, shave thin strips of fresh coconut on top. Serve hot.