armsys2410 大容量sd卡驱动开发 (续)
CBEMA 2008-09-16 04:08:11 没错我按照您的方法修改了C:\WINCE500\PUBLIC\COMMON\OAK\CSP\ARM\SAMSUNG\S3C2410X\SDHC\SDHCBASE 中的函数。
但是C:\WINCE500\PUBLIC\COMMON\OAK\CSP\ARM\SAMSUNG\S3C2410X\SDHC\SDHC中有一个注册表内容是:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SDHC_SMDK2410]
"Order"=dword:21
"Dll"="sdhc_smdk2410.dll" ‘实际生成的是sdhc_sc2410.dll,这里是不是要手动修改成sdhc_sc2410.dll’
"Prefix"="SDH"
"DMAChannel"=dword:0 ; DMA channel to use. Set to 0xffffffff to disable DMA
"DMAIrq"=dword:11
"DMA_IST_Priority"=dword:96
"SDIOIrq"=dword:15
"SDIO_IST_Priority"=dword:97
"PollingTimeout"=dword:100 ; 100 ms
"CardDetect_Thread_Priority"=dword:98
"CardDetectGPIO"="G" ; card detect on GPG10
"CardDetectMask"=dword:400
"CardDetectFlag"=dword:0
"CardDetectControlMask"=dword:fffcffff
"CardDetectControlFlag"=dword:0
"CardDetectPullupMask"=dword:ffffffef
"CardDetectPullupFlag"=dword:10
"CardReadWriteGPIO"="H" ; card R/W on GPH8
"CardReadWriteMask"=dword:100
"CardReadWriteFlag"=dword:100
"CardReadWriteControlMask"=dword:ffcfffff
"CardReadWriteControlFlag"=dword:0
"CardReadWritePullupMask"=dword:ffffffbf
"CardReadWritePullupFlag"=dword:40
"HandleBusyFinishOnCommand38"=dword:1
"DmaTransferTimeoutFactor"=dword:8
"DmaTransferTimeoutConstant"=dword:3000
由于这个驱动通过Catalog无法直接加载,所以我在platform.bib文件中的MODULES段加入了
SDHC_SC2410.DLL $(_FLATRELEASEDIR)\SDHC_SC2410.dll NK SH
然后手动将上面那个注册表的内容添加到platform.reg里。这样做可不可以?还是注册表是自动加进去的,可是我通过观察
wince注册表,运行的系统并没有直接加入SDHC_SC2410.dll到注册表?