摘要网络出处:http://blog.csdn.net/huangfeng152/article/details/4729874
http://jazka.blog.51cto.com/809003/741166
驱动需要:
PLATFORM/COMMON:这里存放了所有可重用的代码。这一部分代码将在BSP之前编译。
PLATFORM/COMMON/SRC/COMMON:这里存放了被BSP中重用的通用代码,这一部分代码是跟硬件平台无关的。譬如一般的IOCTL处理函数、与内核交互的公共的中断程序等等,另外还包括一下库文件,如OAL_IOCTL.lib、oal_intr.lib、oal_log.lib、kitl_log.lib等等。这一部分代码由微软提供,一般不能修改。
PLATFROM/COMMON/SRC/<CPU>:CPU表示MCU的不同体系结构,如ARM、MIPS、SH和X86。这些目录分别存放了各体系结构的MCU的相关代码,如CACHE相关代码、物理地址和虚拟地址转换的代码等等。这部分代码只针对MCU的内核,不涉及具体的芯片。这一部分代码也由微软提供,不建议修改。
PLATFORM/COMMON/SRC/SOC:该目录下存放了不同的MCU对应的代码,跟BSP对应,这里可看做是CSP(CHIPSET SUPPORTPACKAGE)。这一部分的代码一般来说不能直接修改,如果需要移植类似平台的BSP,应该复制一个,重命名后再做修改。这里的目录和其中链接后的库文件的命名也遵循一定的规则(芯片名称_厂商名称_版本号)。这里需要注意的是SOC目录下dirs文件需要包括体系结构的说明,如PLATFORM/COMMON/SRC/SOC/PXA27X_MS_V1中的dirs文件以DIRS_ARM= /打头。这与BSP中的一般的DIRS文件不同。我在移植BSP的时候,并没有在这里做任何修改,只是将其中相关的文件拷贝到我自己的BSP目录下,这样方便BSP的发布
PLATFORM/BSPName:这里存放了跟开发板对应的相关代码。在编译WinCE操作系统时,它在/PLATFORM/COMMON的目录之后编译。我们在针对一款新的硬件平台移植WinCE5.0时就是在这里做相应的添加和修改。
BSP目录下的内容: