In a mixing bowl, clean the chicken pieces, run the salt all over and let it sit for a while.
In a large pan, on medium heat, heat the cinnamon, cloves, cardamom pods, star anise, peppercorns, fennel, coriander seeds, red chillies for a minute or so, until fragrant. Then add the grated coconut, and cashew kernels and heat for another minute.
In a coffee or spice grinder, grind the dry roasted spices (without adding water). This is the masala blend which will be used to make the gravy for the dish.
In the same pan, on medium heat, add some oil and add the bay leaves and onions. Saute for a minute and then add the Kashmiri chilli powder, turmeric powder and ginger garlic paste. Saute for another minute.
Now add the tomato, and give it a stir. Cook for a minute or so untill the tomato begins to soften.
Add the curry leaves, coriander leaves and the ground masala that you just prepared.
Give it all a good stir and then add the chicken, stirring it well, so that the chicken is well coated with all the spices. Add 1 cup of water to the pan, cover it with a lid and let it cook on medium heat for around 25 minutes, giving the curry a good stir occasionally.
Once done, garnish with the reserved chopped coriander and serve with basmati rice.