Ideally, the system you're designing will look identical to a supported evaluation platform. In reality, this isn't always the case, so you'll need to customize some of the components in that system.
We've provided the source code to a large number of the "customizable" pieces of the OS. This diagram gives you the high-level view of the directory structure for the source tree we ship:
As you can see, we've divided the source tree into three major branches: ipl, startup, and flash. Each branch consists of further subdirectories: