wince6.0+6410 flash 分区问题
[复制链接]
最近在研究用ce6.0+6410定制系统,打算把flash分成两个区,一个存放系统镜像文件等,
剩下的空间用作存储设备,存放应用程序等。目前按照以下的代码修改后,存在一些问题,
例如:系统启动后,只是加载整个flash作为一个分区(表明分区不成功),关闭电源,
系统不能启动(网上评论说,可能删除了系统文件内容,需要修改fmd.cpp文件)。
本人是新手,希望大家指点一下,以下是我的部分代码:
;-------------- NAND Flash Block Device Driver ----------------------------------
; HIVE BOOT SECTION
IF BSP_NONANDFS !
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NANDFLASH]
"Prefix"="DSK"
"Dll"="nandflash.dll"
"Index"=dword:1
"Order"=dword:0
"Profile"="NANDFLASH"
"IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
;临时添加
"MountFlags"=dword:11
"BootPhase"=dword:1
IF IMGHIVEREG
"Flags"=dword:1000
ENDIF IMGHIVEREG
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\NANDFLASH]
"DriverPath"="Drivers\\BuiltIn\\NANDFLASH"
"LoadFlags"=dword:1 ; load synchronously
;"BootPhase"=dword:0
;临时添加
"MountFlags"=dword:11
"BootPhase"=dword:1
"Flags"=dword:1000
IF IMGHIVEREG
"MountAsBootable"=dword:1 ; for Hive-based registry
ENDIF IMGHIVEREG
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NANDFLASH]
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
"Name"="Microsoft Flash Disk"
;添加 add by mzb
"AutoPart"=dword:1
"AutoMount"=dword:1
"AutoFormat"=dword:1
"BootPhase"=dword:0
"Flags"=dword:1000
;"Folder"="ResidentFlash"
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NANDFLASH\BINFS]
"MountHidden"=dword:1
"MountAsROM"=dword:1
;临时添加
"MountFlags"=dword:11
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NANDFLASH\FATFS]
"FormatExfat"=dword:1
"Flags"=dword:10 ;14 ; deprecated in CE6.0 (0x4 : FATFS_DISABLE_AUTOSCAN, 0x10 : FATFS_ENABLE_BACKUP_FAT)
"DisableAutoScan"=dword:0 ;1
"CheckForFormat"=dword:1
"EnableWriteBack"=dword:1
"Folder"="NandFlash"
"MountAsRoot"=dword:1 ; for ROM-only file system
;by mzb
"AutoPart"=dword:1
"AutoMount"=dword:1
"AutoFormat"=dword:1
IF IMGHIVEREG
"MountAsBootable"=dword:1 ; for Hive-based registry
"Flags"=dword:1000 ; add by mzb
ENDIF IMGHIVEREG
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\NANDFLASH\Filters\CacheFilt]
"Dll"="cachefilt.dll"
"LockIOBuffers"=dword:1
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NANDFLASH\FATFS\Filters\CacheFilt]
"Dll"="cachefilt.dll"
"LockIOBuffers"=dword:1
ENDIF BSP_NONANDFS !
; END HIVE BOOT SECTION
;-------------------------------------------------------------------------