Crush together cardamom, cloves, cinnaomon, pepper and fennel seeds.
Crush together pearl onion, ginger & garlic and green chilli
Heat 2 tbsp oil in a deep and wide pan. Add the crushed whole spices (cardamom-fennel seeds). Add sliced onion and cook till it browns.
Add crushed small onion, ginger & garlic and green chilli. Cook for 3-4 mins or till the raw smell goes.
Add sliced tomato, curry leaves and salt. Cook till tomato becomes soft.
Add all the spice powders and cook for 3-4 mins, till the raw smell goes and oil starts appearing. Add 1-2 tbsp hot water to bring together the masala.
Add cleaned chicken pieces. Mix well. Make sure the chicken pieces are coated well with masala.
Once chicken starts changing color, add medium thick coconut milk. Bring it to boil. Reduce flame to lowest, cover and cook till chicken is done, around 25 mins.
Add thick coconut milk and mix gently, so that it's incorporated well into the curry. Continue cooking on lowest flame for 5 mins.
Meanwhile heat 2 tsp oil in a small pan and crackle the mustard seeds. Add sliced pearl onions, curry leaves and dry red chilli. Once it browns, add to the curry. Cover the dish and let it rest for 15 – 20 mins for the flavor to seetle in.