In a pan, pour oil and heat it up.
Add whole garam masala (Cumin, cloves, cinnamon sticks, bay leaves, green cardamom). Let it pop for a few seconds.
As the garam masala starts popping, add sliced onion and fry till it gets pink.
Now add chicken and cook on high heat for few minutes until chicken changes the color.
Add ginger-garlic paste. Saute and season with salt, red chili powder, turmeric, and coriander powder. Make sure to cook all the spices until the oil appears to float on pan sides.
At this stage, add 1 cup of yogurt and give it a good mix so the curry shows a one-tone homogenous texture.
As the curry starts to form the gravy (salan) and oil starts to floats on the surface then add 500 ml water. Sprinkle garam masala and stir well.
Cover with the lid and simmer for about 25 to 30 minutes on low-medium heat to tenderize the chicken.
After 30 minutes, check the chicken and give it a good mix using a spoon in the curry to blend the curry in a smooth form.
If there is some water showing in salan then cook on high heat to evaporate.
Now chicken salan is ready to serve!