Sift the flour, baking powder, baking soda, cinnamon, and salt together and set aside. Cream the butter or margarine with the sugars until light and fluffy. Add the eggs one at a time, beating well after each.
Add the dry ingredients alternately with the buttermilk, beating well after each addition. Spread the batter into a greased and floured 9x13-inch baking pan. Combine the topping ingredients and sprinkle on the batter. Cover with foil and refrigerate overnight. In the morning, preheat the oven to 350 degrees F and bake 35 to 40 minutes.