1. Chop onion and 2 tomatoes separately, and set these aside.
2. Drain garbanzos and wash them until the froth is removed.
3. Grind one tomato and a handful of garbanzos coarsely or mash them using a masher; set this aside.
4. Place a pan over heat and add oil. Add cumin seeds, bay leaves, cloves, cardamom and turmeric powder. Allow the cumin seeds to sputter and then add Garam masala; fry for a few seconds.
5. At this time, add garlic-ginger paste and onions. Saute until the aroma emits or until the onions are light brown. Add chopped tomatoes and fry until the mixture begins to come together, leaving the sides of the pan.
6. Add tomato-garbanzo coarse paste, and mix well.
7. Drain all extra water from the garbanzos and add to the above mixture. Mix well and allow the mixture to boil for 5 -,- 10 minutes.
8. Turn off the heat, transfer into a serving bowl, and garnish with cilantro.
Chole can be served with warm rice or any other Indian breads.