platform Directory (Compact 2013)
3/26/2014
The PLATFORM directory contains high-level directories that are specific to individual board support packages (BSPs), including cloned BSPs that you create.
PLATFORM Directory Structure
The following tree structure represents the high-level structure of the PLATFORM directory. Click a directory name for details on that directory.
PLATFORM
COMMON
SRC
<HW-Platform>
CATALOG
CESYSGEN
FILES
SRC
TEST
TOOLS
The PLATFORM directory contains two directory types:
- A COMMON directory. Contains OEM adaptation layer (OAL) source code, including routines that are common to all BSPs and routines that are specific to a CPU or system-on-a-chip (SOC). For information on the COMMON directory, see Directories within COMMON.
- A directory for each BSP that you specified when you installed Windows Embedded Compact. The processor-specific directories all have the same basic structure and contain one or more of the same six directory types. The placeholder <HW-Platform> represents these platform-specific directories, which contain memory-mapped configuration files, include files that define the memory layout for the hardware platform, any code that includes board descriptions or the board layout, and board-level customization code. Each <HW-Platform> directory contains the code you need to build the boot loader and the OS image.
For information on the <HW-Platform> directories, see Directory Types within <HW-Platform> Directories.
Directories within COMMON
The COMMON directory contains only one directory, SRC, which contains OAL source code, including routines that are common to all BSPs and routines for specific CPUs or SOCs.
The SRC directory is divided by CPU architecture. Each CPU architecture directory is further divided into more specific architecture information, such as the CPU family or the CPU manufacturer. As you navigate down the directory tree, the directories become more CPU architecture-specific. For example, the ARM\ARM920T tree contains cache and data abort routines for the ARM920T CPU, and the ARM\ARM926 tree contains the cache routines for the ARM926 CPU. Code can also be inherited from the directories that are higher up in the tree.
Although you might want to override some of the code in the COMMON directory for performance reasons, overall, the code works without modification. You do not have to copy any of the code in this directory unless necessary. Typically, you include the library from the particular location in the COMMON directory in your %_WINCEROOT%\Platform\<Hardware Platform Name> sources file.
The following table describes the directories within COMMON\SRC.
Directory |
Description |
---|---|
ARM |
Contains the ARM processor-specific OAL code. Contains two subdirectories:
|
COMMON |
Contains OAL code that is generic across all CPU architectures. |
INC |
Contains all the header files that export OAL components. |
SOC |
Contains a collection of SOC and CPU or chipset-level peripheral drivers. The SOC directory also contains directories that provide the drivers specific to a SOC or chipset. These directories are named in the following format: <SOC or Chipset Model>_<vendor name>_<version>. You can port the chipset driver for a core peripheral to any new hardware platform environment that makes use of the SOC or chipset without modification. OEMs can ship code in this directory structure. Use this directory structure for chipset-specific code which is fit for reuse. |
X86 |
Contains the x86 processor-specific OAL code. Contains a COMMON directory that contains components common to all x86 platforms. The COMMON directory contains the following directories:
|
Directory Types within <HW-Platform> Directories
The PLATFORM directory contains a directory for each BSP that you specified when you installed Windows Embedded Compact, indicated by the placeholder <HW-Platform>. The following table describes the directory types contained within the processor-specific directories.
Directory |
Description |
---|---|
CATALOG |
Contains the Platform Builder catalog pbcxml file. |
CESYSGEN |
Contains a makefile for filtering any of the configuration files in the FILES directory. |
FILES |
Contains project-specific files for building the run-time image, initial directory structure, initialized databases, and initialized registry. |
SRC |
Contains source code for the hardware platform. Contains the following directories:
|
TOOLS |
Contains platform-specific compiler information, drivers, and utilities. This directory is not present for all platforms. |