Clean and out the chicken into l inch cubes.
Heat the oil in a saucepan. Add the cloves, cinnamon, cardamom and the onions. Cover and cook the onions over low heat till they are soft and golden brown. Add the tomatoes, chilli paste, salt, turmeric, coriander and ginger and cook for 2-3 minutes on medium to high heat. Then stir in the yoghurt, tablespoon at a time. Cook for further 5 minutes; until the sauce has thickened. Add the chicken and stir gently to mix. Cover and cook the chicken over low heat for 15—20 minutes.
Add garam masala at the end of cooking and garnish with chopped fresh coriander just before serving.
Serve the chicken with rice or chappatis and a salad.