The reason that parts of the datawarehouse aren't normalized is that they serve functions that don't demand normalization and are often better served by other designs.
The staging area is typically not fully normalized because it pulls from the various source systems, and it is usually a compromise between the actual warehouse architechture and the source architecture.
The atomic area of the warehouse is normally third normal form, with a few possible exceptions that are driven by business needs.
The rollup area of the warehouse is intended to present data as the users need it. This is modeled heavily on the business needs of the users, so it is often non-normalized to make queries faster and simpler.
Data Marts are sometimes considered part of the warehouse. They exist solely to serve a specific business need. There is little if any normalization in a Data Mart.