Preheat the oven to 325 degrees F (165 degrees C). Grease and flour a 10 inch tube pan.
In a large bowl, cream together the butter, shortening, and sugar until light and fluffy. Beat in the eggs one at a time, mixing just until the yellow disappears. Combine the flour, baking powder, and cinnamon; stir into the creamed mixture alternately with the milk. Stir in the vanilla and walnuts, and pour into the prepared pan.
Bake for 1 hour and 30 minutes, or until a knife or toothpick inserted into the crown comes out clean. Cool in the pan for about 15 minutes before turning out of the pan onto a wire rack to cool completely.