关于S3C2440,BSP5.0的包,多FAT问题

armeasy 2010-07-01 10:55:19
如题,想实现S3C2440 BINFS + FAT + FAT 三个盘符,
在Eboot中已经修改成功,进入WINCE主界面也显示了这三个盘符,但是
第三个盘符的名字无法更改,不知如何修改注册表?
我修改后的注册表如下:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 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"
"Paging"=dword:1
; 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:10
"BootPhase"=dword:0

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\MSFlash]
"DriverPath"="Drivers\\BuiltIn\\MSFlash"
"LoadFlags"=dword:1
"Order"=dword:3
"MountFlags"=dword:11 ;10 ;lqm remasked.10-06-30
"BootPhase"=dword:0
"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MSFlash]
"Prefix"="DSK"
"Dll"="smflash.dll"
"Order"=dword:3
"Index"=dword:1 ;lqm added.10-07-01
"Profile"="MSFlash"
"FriendlyName"="MSFLASH Driver"
"BootPhase"=dword:0
"Flags"=dword:1000

; Bind BINFS to the block driver
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash]
"DefaultFileSystem"="BINFS"
"PartitionDriver"="mspart.dll"
;"Name"="Microsoft Flash Disk"
"Name"="K9F1208UOC" ;lqm changed.
"Folder"="nand-disk"
"AutoMount"=dword:1
"AutoPart"=dword:1
"BootPhase"=dword:0
"Flags"=dword:1000
"MountAsHidden"=dword:1
"MountAsRom"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash\FATFS]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Flags"=dword:00280014
"Paging"=dword:1
"CacheSize"=dword:0
"EnableCacheWarm"=dword:0
"EnableCache"=dword:1
"MountAsBootable"=dword:1
"MountAsRom"=dword:1
; @CESYSGEN ENDIF CE_MODULES_SDNPCID
; END HIVE BOOT SECTION



;lqm added for test.
;--------------------------------------------------------
; 1 fat area
;--------------------------------------------------------
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MSFlash1]
"Prefix"="DSK"
"Dll"="smflash.dll"
"Order"=dword:3
"Index"=dword:2 ;lqm added.10-07-01
"Profile"="MSFlash1"
"FriendlyName"="MSFLASH Driver"
"BootPhase"=dword:0
"Flags"=dword:1000

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash1]
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
;"Name"="Microsoft Flash Disk1"
"Name"="K9F1208UOC1" ;lqm changed.
"Folder"="user-disk"
"AutoMount"=dword:1
"AutoPart"=dword:1
"BootPhase"=dword:0
"Flags"=dword:1000
"MountAsHidden"=dword:1
"MountAsRom"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash1\FATFS]
"FriendlyName"="FAT FileSystem1"
"Dll"="fatfsd.dll"
"Flags"=dword:00280014
"Paging"=dword:1
"CacheSize"=dword:0
"EnableCacheWarm"=dword:0
"EnableCache"=dword:1
"MountAsBootable"=dword:1
"MountAsRom"=dword:1
; end added by lqm.
;-------------------------------------HIVE END-------------------------------------------------


实际上盘符上显示的是nand-disk以及nand-disk1,没有实际我需要的user-disk。
另外,这里的Eboot和2450,6410的Eboot不一样,没有那个SDDISK.dll,只有smflash.dll,因此
以下的注册表对2440不合适。肯请高手指教。

;--------------------------------------------------------
; 1 fat area
;--------------------------------------------------------
;HIVE BOOT SECTION
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk]
"Prefix"="DSK"
"Dll"="ONDisk.dll"
"Order"=dword:1
"Index"=dword:1
"IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
"Profile"="FlashDisk"
"BmlVolumeId"=dword:0 ; BML volume ID = 0
"BmlPartitionId"=dword:8 ; BML parition ID = PARTITION_ID_FILESYSTEM
"WMRStartSector"=dword:0
"WMRNumOfSector"=dword:2000 ; 4MByte modified by denis_wei save the register
; "Flags"=dword:11000 ; do not load again in boot phase 2 ;

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk]
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
"Name"="PocketMory MLC Disk"
"Folder"="flash_storage" ;user-disk-> flash_storage
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountAsROM"=dword:0
"MountHidden"=dword:1 ;1->0 Modified by zhoupeng
"MountAsRoot"=dword:1
"MountAsBootable"=dword:1

; "MountFlags"=dword:0
; "Ioctl"=dword:4

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk\FATFS]
"FriendlyName"="PocketMory FAT FileSystem"
"Dll"="fatfsd.dll"
"Flags"=dword:00000014 ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
"FormatTfat"=dword:1
"EnableCacheWarm"=dword:0
"MountAsBootable"=dword:1
;END HIVE BOOT SECTION


;----------------------------------------------------------------------------
; 2nd FAT Area
;----------------------------------------------------------------------------
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk1]
"Prefix"="DSK"
"Dll"="ONDisk.dll"
"Order"=dword:1
"Index"=dword:2
"IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
"Profile"="FlashDisk1"
"BmlVolumeId"=dword:0 ; BML volume ID = 0
"BmlPartitionId"=dword:9 ; BML parition ID = PARTITION_ID_FILESYSTEM1
"WMRStartSector"=dword:2000
"WMRNumOfSector"=dword:46000 ; 200M -- 140M midified by denis_wei 2009-03-23
; "Flags"=dword:11000 ; do not load again in boot phase 2 ;

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1]
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
"Name"="PocketMory MLC Disk1"
"Folder"="nand-disk"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountFlags"=dword:0
"MountHidden"=dword:0 ;added by denis_wei 2009-02-16
; "Ioctl"=dword:4
;"MountAsRoot"=dword:1
;"MountAsBootable"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk1\FATFS]
"FriendlyName"="PocketMory FAT FileSystem1"
"Dll"="fatfsd.dll"
"Flags"=dword:00000014 ; FATFS_ENABLE_BACKUP_FAT | FATFS_DISABLE_AUTOSCAN
"FormatTfat"=dword:1
"EnableCacheWarm"=dword:0
...全文
176 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
buzaiyouyu001 2010-08-23
  • 打赏
  • 举报
回复
学习了
IT铁哥 2010-08-08
  • 打赏
  • 举报
回复
学习了。
armeasy 2010-07-14
  • 打赏
  • 举报
回复
乱改了一通,貌似改好了,借鉴了unsway123的方法,详细注册表代码如下:
[HKEY_LOCAL_MACHINE\init\BootVars]
"SYSTEMHIVE"="system.hv"
"Start DevMgr"=dword:1 ;启动device.exe
"DefaultUser"="default" ;决定user.hv的路径
"RegistryFlags"=dword:1 ;设置注册表每次改动后自动flush到system.hv


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Support BINFS Section
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Add BinFS to partition table
[HKEY_LOCAL_MACHINE\System\StorageManager\PartitionTable]
"21"="BINFS"

[HKEY_LOCAL_MACHINE\System\StorageManager\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:1 ;lqm changed from 10 to 1.
"BootPhase"=dword:0
"MountHidden"=dword:1
; NK system Pattition end
;*********************************************


;*********************************************
;system Partition
[HKEY_LOCAL_MACHINE\System\ObjectStore\RegFlush]
; To monitor the flushing from an external process add "ActivityName" registry value.
; The activity name is a global named event that filesystem will signal on Registry Activity.
"ActivityName"="RegFlushEvent"
; Create an thread in filesys to perform flushing
; "SpawnThread"=dword:1
"SpawnThread"=dword:0
; Make the thread IDLE priority
"FlushPriority256"=dword:FF
; ActivityThreshold specifies the # of reg activity before we force a flush
; "ActivityThreshold"=dword:100
"ActivityThreshold"=dword:1
; Timeout period for a flush (flush occurs if there have been some changes during this period)
; "FlushPeriod"=dword:3E8
; "FlushPeriod"=dword:7530

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH]
"DefaultFileSystem"="BINFS"
"AutoPart"=dword:1
"AutoMount"=dword:1
"PartitionDriver"="mspart.dll"
"Name"="Microsoft Flash Disk"
"BootPhase"=dword:0
"MountAsHidden"=dword:1 ;lqm masked for test.
"MountAsRom"=dword:1 ;lqm changed from 1 to 0 for test.
"Flags" = dword:1000 ;此flag指定这个驱动只在boot.hv中加载一次

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SMFLASH]
"Prefix"="DSK"
"Dll"="smflash.dll"
"Index"=dword:1
"Order"=dword:0
"Profile"="SMFLASH"
"IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
"BootPhase"=dword:0
"Ioctl"=dword:4
"IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"

[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
"Flags"=dword:00000064 ;FATFS_TFAT_ALWAYS|FATFS_FORCE_TFAT
"MountFlags"=dword:0

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\SMFLASH]
"DriverPath"="Drivers\\BuiltIn\\SMFLASH"
"LoadFlags"=dword:1 ;load synchronously
"BootPhase"=dword:0

; Keep FATFS from trying to shadow \Windows
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH\FATFS]
"FriendlyName"="FAT FileSystem"
"Dll"="fatfsd.dll"
"Flags"=dword:00280014
"Paging"=dword:1
"CacheSize"=dword:0
"EnableCacheWarm"=dword:0
"EnableCache"=dword:1
"MountAsBootable"=dword:1
"MountAsRom"=dword:1
;system Partition end
;**************************************************

;*********************************************
;UserData Partition
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH]
"DefaultFileSystem"="FATFS"
"AutoPart"=dword:1
"AutoMount"=dword:1
"PartitionDriver"="mspart.dll"
"Name"="Microsoft Flash Disk"
"BootPhase"=dword:0
"MountAsHidden"=dword:1
"Flags" = dword:1000 ;此flag指定这个驱动只在boot.hv中加载一次
"DefaultFileSystem"="BINFS"
;user Data Partition end
;**************************************************



;=========================================================================================
;lqm added for 2 partition.10-07-14
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH\PART00]
"Name"="Microsoft Flash Disk"
"Folder"="BINFS"
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH\PART01]
"Name"="Microsoft Flash Disk"
"Folder"="app-disk"
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SMFLASH\PART02]
"Name"="Microsoft Flash Disk"
"Folder"="nand-disk"
;end added.
;=========================================================================================

但是怎么样才能实现BINFS的分区隐藏起来呢?我尝试多次没效果,原因不明。
这个注册表真是折腾啊,不知从何处下手。
armeasy 2010-07-14
  • 打赏
  • 举报
回复
按照unsway123的方法,没有达到效果,仍然是原来的名字???
armeasy 2010-07-11
  • 打赏
  • 举报
回复
我试一下,好久没来这了,忙死
unsway123 2010-07-02
  • 打赏
  • 举报
回复
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NAND\PART01]
"Name"="NandFlash Device"
"Folder"="HIVE"


[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NAND\PART02]
"Name"="NandFlash Device"
"Folder"="FlashDrv"
博说医械研发 2010-07-01
  • 打赏
  • 举报
回复
是在WINCE的驱动中分的区,EBOOT的没研究过

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧