Hello all:
My device is about S3C2440, it has a large page(2k byte/page)
nandflash(SAMSUNG K9F4G08,
512M), My OS is WinCE4.2 and the BSP is SMDK2440, so My bootlaoders are
nboot and eboot.
Using the BootPart library in eboot, the nandflash in my device has
two partions:BINFS
and FAT32. After the OS is running, I go to the storage manager in
control pannels and can
see two parts(part00, part01) in the list box, the Properties of each
Partition are OK, as
follows:
part00 size 18432 sectors
type 0x21
file system binfs.dll
flag 0x00000000
part01 size 242496 sectors
type 0x0B
file system fatfsd.dll
flag 0x00000000
However, the PART_DOS32 partition(part01) is not mounted by
WinCE4.2, and can not see
the folder "ResidentFlash". If select the Property of part01, the
Partition Properties
dialog correctly displays fatfsd.dll as the file system, but clicking
the mount button just
opens a message box that sais "Unable to mount partition". Even firstly
click the format
button, it shows ok, secondly click the mount button again, it also
shows "Unable
to mount partition".
The registry in the platform.reg used are as follows:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Support BINFS Section
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Add BinFS to partition table
[HKEY_LOCAL_MACHINE\System\StorageManager\PartitionTable]
"21"="BINFS"
[HKEY_LOCAL_MACHINE\System\StorageManager\BINFS]
"Folder"="BINFS"
"FriendlyName"="Bin FileSystem"
"Dll"="binfs.dll"
; MountFlags:
; 0x10 specifies that this file system is to be mounted as an external
; ROM filesystem shadowing the \windows directory
; 0x1 specifies that the mountpoint \BINFS is to be hidden
;
"MountFlags"=dword:11
"BootPhase"=dword:0
;
; Entries to load the block driver that BINFS uses
; This is dependent on what device is used
;
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDrv]
"DriverPath"="Drivers\\BlockDevice\\FlashDrv"
"LoadFlags"=dword:1
"MountFlags"=dword:11
"BootPhase"=dword:0
[HKEY_LOCAL_MACHINE\Drivers\BlockDevice\FlashDrv]
"Prefix"="DSK"
"Dll"="FLASHDRV.dll"
"Order"=dword:0
"Ioctl"=dword:4
"Profile"="FlashDrv"
"FriendlyName"="MS Flash Driver"
"MountFlags"=dword:11
"BootPhase"=dword:0
; Bind BINFS to the block driver
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv]
"DefaultFileSystem"="BINFS"
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:1
"AutoPart"=dword:1
"MountFlags"=dword:11
"Folder"="ResidentFlash"
"Name"="Microsoft Flash Disk"
"BootPhase"=dword:0
; Keep FATFS from trying to shadow \Windows
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\FATFS]
"MountFlags"=dword:0
[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
"MountFlags"=dword:0
How to auto mount the PART_DOS32 partition in WinCE4.2 with large
page nandflash? Pls
give me some advices.
Thanks a lot for your answers.