Windows CE 5.0 Platform Builder Monthly Update (April 2007) 提供了 SDHC 的 Driver Code, 並更改了 PXA27x的 SD Controller Code
基本上 SD Device 在 Windows CE 上 的Device Stack 是
Hardware —— SD Host Controller
HAL —— SD Bus Driver
Client —— SDIO Device/SDMemory
這次的 Source Code change主要是 SD Bus driver 跟 SDMemory Client Driver 做了更動,主要是因為 SDHC Specification 是定義 FAT to FAT32基本的 SD Host controller 基本上都是沒有變更的。但是因為還是有多了幾個 CMD(Command),所以將 CSP 的 PXA270 相關的 Code 也稍微update
另外Freescale 的 iMX31 本來的 BSP 據說就已經有 support SDHC
可參見 SD card技术了解并WINCE下SDHC驱动开发(updating)
底下是 Windows CE Monthly update April 2007 的更新部份內容
Component: SDCard
-
070405_KB933809 – This update installs SD Bus driver compliant with SD 2.0 Specification and an enhanced SD Memory Driver that supports High Capacity Cards of size > 4GB and up to 32 GB.
To enable SD Bus2 set IMGSDBUS2 = 1.
Note:
The new SD Bus and enhanced SD Memory Drivers for High Capacity Card Support might require OEMs to modify their SD Host Controller software if they were tightly coded to SD 1.1 Commands.
The file(s) with the new source code changes for this component can be found in the directory %_WINCEROOT%:
publiccommoncesysgenmakefile
publiccommonddkincsdcard.h
publiccommonddkincsdcardddk.h
publiccommonoakcsparmintelpxa27xsdhcsdcontrol.c
publiccommonoakdriversbusenumbusdefdefbus.cpp
publiccommonoakdriverssdcarddirs
publiccommonoakdriverssdcardsdbusmakefile
publiccommonoakdriverssdcardsdbussdbus.cpp
publiccommonoakdriverssdcardsdbussdbus.hpp
publiccommonoakdriverssdcardsdbussdbusdef.h
publiccommonoakdriverssdcardsdbussdbusreq.cpp
publiccommonoakdriverssdcardsdbussdbusreq.hpp
publiccommonoakdriverssdcardsdbussdclient.cpp
publiccommonoakdriverssdcardsdbussddebug.cpp
publiccommonoakdriverssdcardsdbussddevice.cpp
publiccommonoakdriverssdcardsdbussddevice.hpp
publiccommonoakdriverssdcardsdbussddevinf.cpp
publiccommonoakdriverssdcardsdbussdiofeat.cpp
publiccommonoakdriverssdcardsdbussdslot.cpp
publiccommonoakdriverssdcardsdbussdslot.hpp
publiccommonoakdriverssdcardsdbussdworki.cpp
publiccommonoakdriverssdcardsdbussdworki.hpp
publiccommonoakdriverssdcardsdbussources
publiccommonoakdriverssdcardsdbusdriversdbusdriver.cpp
publiccommonoakdriverssdcardsdbusdriversdbusdriver.h
publiccommonoakdriverssdcardsdbusdriversdbusrequest.cpp
publiccommonoakdriverssdcardsdbusdriversdbusrequest.h
publiccommonoakdriverssdcardsdbusdriversdcardio.cpp
publiccommonoakdriverssdcardsdbusdriversdclient.cpp
publiccommonoakdriverssdcardsdbusdriversdenum.cpp
publiccommonoakdriverssdcardsdbusdriversdenum.h
publiccommonoakdriverssdcardsdbusdriversdhcenum.cpp
publiccommonoakdriverssdcardsdbusdriversdhceventhandlers.cpp
publiccommonoakdriverssdcardsdbusdriversdmain.cpp
publiccommonoakdriverssdcardsdcardlibsdcardapistubs.cpp
publiccommonoakdriverssdcardsdcardlibsddebug.cpp
publiccommonoakdriverssdcardsdclientdriverssdmemorysdmemcardio.cpp
publiccommonoakdriverssdcardsdclientdriverssdmemorysdmemdiskio.cpp
publiccommonoakdriverssdcardsdclientdriverssdmemorysdmemmain.cpp
publiccommonoakdriverssdcardsdclientdriverssdmemorysdmemory.h
publiccommonoakdriverssdcardsdhcdriverssdiostdhcbasesdhc.cpp
publiccommonoakdriverssdcardsdhcdriverssdiostdhcbasesdhc.h
publiccommonoakdriverssdcardsdhcdriverssdiostdhcbasesdhcregs.h
publiccommonoakdriverssdcardsdhcdriverssdiostdhcbasesdhcslot.cpp
publiccommonoakdriverssdcardsdhcdriverssdiostdhcbasesdhcslot.h
publiccommonoakincdefbus.h
publiccommonoakincsdhcd.h