Step 2) Mix sugar, oil, eggs, and vanilla in a large bowl. Add flour, baking soda, baking powder, ginger and pineapple; mixing well. Fold in coconut and nuts.
Step 3) Pour batter into a greased 9-inch square pan.
Step 4) Bake for 30 to 35 minutes, or until toothpick inserted in center of cake comes out clean. Cool on a wire rack. Frost when cooled.
For frosting: beat cream cheese and butter together in medium bowl. Mix in remaining frosting ingredients and blend until frosting is desired spreading consistency.
Garnish with 1/4 cup toasted coconut and 1/4 cup macadamia nuts, if desired.