Drain chickpeas and place in a large saucepan with 6 cups of water. Bring to a boil over medium-high heat. Reduce heat to medium-low to maintain a gentle boil and cook, partially covered, until beans are soft, 45 minutes to 1 hour. Strain, reserving liquid.
Return saucepan to stove over medium-high heat, and add oil. Add onions and saute until they begin to brown, 6-8 minutes. Reduce heat to medium and saute until deep golden in color, about 15 minutes.
Add tomatoes, chiles, ginger, cumin, coriander, cayenne, turmeric, and salt. Cook for 3-4 minutes to soften tomatoes. Pour in 2 cups of the reserved liquid and then cover and bring to a boil. Reduce heat to a medium-low. Simmer for 5 minutes. Mash mixture (masala) with the back of a spoon.
Mix in the cooked chickpeas and the tamarind. Add ½ cup of the reserved bean liquid. Cover and cook for 15 minutes. Mash a few beans against the side of the pan to thicken the gravy.
Arrange rolls on a platter if using. Spoon chickpeas and gravy on top. Scatter the onion rings over top for garnish. Alternatively, serve the bread separately and dip in the gravy. Can also be served with rice or potatoes instead of rolls.