wince5.0 multi-bin 系统起不来,求助!

九个太阳2023 2010-05-19 09:47:04
不用multi-bin的方式,通过PB是可以下载nk.bin的,使用multi-bin系统启动不来,下面是启动时的串口信息:


Jumping to image at virtual address 0x8C201000h

::: Physical Launch Address: 0x30201000h
Windows CE Kernel for ARM (Thumb Enabled) Built on Aug 4 2008 at 18:38:38
ProcessorType=0920 Revision=0
sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 8c201480
OEM Initilize:finish display.
SDMMC config Init Done.
INFO: LCD backlight initialize success for Low.
INFO: Initialize system bank configuration
INFO: OEMInit Done...
Sp=ffffc7cc
FMD: ReadID (Mfg=ec, Dev=f1)
FMD_Init: finished successful
+FMD_GetInfo.
<>FMD_GetInfo:pFlashInfo->wDataBytesPerSector = 0x800.
<>FMD_GetInfo:pFlashInfo->dwNumBlocks = 0x400.
<>FMD_GetInfo:pFlashInfo->wSectorsPerBlock = 0x40.
<>FMD_GetInfo:pFlashInfo->dwBytesPerBlock = 0x20000.
-FMD_GetInfo.
FMD::FMD_OEMIoControl = 0x71c24

已经确定kernel.bin中包含系统所必须的dll;在网上查了相关的资料,可能是因为注册表配置的不对,下面是我的注册表设置:
; HIVE BOOT SECTION ;jackie1201
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; NANDFLASH
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Support BINFS Section
IF IMGMULTIBIN
; 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
ENDIF

[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FlashDrv]
"DriverPath"="Drivers\\BlockDevice\\FlashDrv"
"LoadFlags"=dword:1
; "BootPhase"=dword:1
"BootPhase"=dword:0 ;modified by lihao for binfs
"Order"=dword:0 ;add 1105
"Flags"=dword:1000 ;jackie1201

[HKEY_LOCAL_MACHINE\Drivers\BlockDevice\FlashDrv]
; "FSD"="fatfsd.dll" ;delete by lihao
; "FSD"="binfs.dll"
"Prefix"="DSK"
"Dll"="FLASHDRV.DLL"
"Order"=dword:1
"Index"=dword:0
"Ioctl"=dword:4
"Profile"="NandFlash"
"FriendlyName"="NAND FLASH Device Driver"
"MountAsROM"=dword:1 ;add 1105
"Flags"=dword:1000 ;jackie1201
"BootPhase"=dword:0 ;modified by lihao for binfs

IF IMGMULTIBIN
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NandFlash]
"Name"="Flash"
"Folder"="Flash"
"DefaultFileSystem"="BINFS"
"PartitionDriver"="mspart.dll"
"AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountAsHidden"=dword:1 ;add by lihao
"MountAsROM"=dword:1
"Flags"=dword:1000 ;jackie1201
; "MountFlags"=dword:2 ;jackie1201, to save system.hv in flash folder.
"BootPhase"=dword:0 ;add by lihao
"MountFlags"=dword:11 ;add by lihao

ELSE
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\NandFlash]
"Name"="Flash"
"Folder"="Flash"
"DefaultFileSystem"="FATFS"
"PartitionDriver"="mspart.dll"
; "AutoMount"=dword:1
"AutoPart"=dword:1
"AutoFormat"=dword:1
"MountAsROM"=dword:1
"Flags"=dword:1000 ;jackie1201
"MountFlags"=dword:2 ;jackie1201, to save system.hv in flash folder.
ENDIF


IF IMGMULTIBIN
; Keep FATFS from trying to shadow \Windows
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\FATFS]
"MountFlags"=dword:0
ELSE
; Keep FATFS from trying to shadow \Windows
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDrv\FATFS]
"MountFlags"=dword:0
ENDIF


[HKEY_LOCAL_MACHINE\System\StorageManager\FATFS]
"MountFlags"=dword:0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; NANDFLASH
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;END HIVE BOOT SECTION

想请教做过的兄弟,看看有没有什么好的建议~~~
...全文
88 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
九个太阳2023 2010-05-20
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 macrozhang001 的回复:]
顶个。

学习。。
[/Quote]
谢谢~~~
IT铁哥 2010-05-19
  • 打赏
  • 举报
回复
顶个。

学习。。
九个太阳2023 2010-05-19
  • 打赏
  • 举报
回复
恩,好的,我参考下!谢谢啦~
InsaneCode 2010-05-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hao507 的回复:]
引用 1 楼 kacyquan 的回复:
兄弟,这个是5.0还是6.0啊?
http://bbs.driverdevelop.com/read.php?tid-105700.html
这个可以参考一下,当时弄5.0就是按照这个来的。

我也看过这篇文章,但是这篇文章的注册表配置很少~~我按照他的方式不行~可能还是哪里出现问题了吧,又没有kitl调试,基本是盲调,很郁闷~~
[/Quote]

还有这个文章,当时是参考了这两个文章一起,弄出来的。
http://bbs.driverdevelop.com/read.php?tid-104597.html
九个太阳2023 2010-05-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kacyquan 的回复:]
兄弟,这个是5.0还是6.0啊?
http://bbs.driverdevelop.com/read.php?tid-105700.html
这个可以参考一下,当时弄5.0就是按照这个来的。
[/Quote]
我也看过这篇文章,但是这篇文章的注册表配置很少~~我按照他的方式不行~可能还是哪里出现问题了吧,又没有kitl调试,基本是盲调,很郁闷~~
InsaneCode 2010-05-19
  • 打赏
  • 举报
回复
兄弟,这个是5.0还是6.0啊?
http://bbs.driverdevelop.com/read.php?tid-105700.html
这个可以参考一下,当时弄5.0就是按照这个来的。
九个太阳2023 2010-05-19
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 veabol 的回复:]
那也可能是Hive-based Registry和MULTI-BIN结合出现的问题。
boot.hv都放到XIPKERNEL里了?
[/Quote]
恩,用viewbin -r xipkernel.bin查看,确定boot.hv添加进去了
博说医械研发 2010-05-19
  • 打赏
  • 举报
回复
建议先去掉Hive-based Registry功能试下
博说医械研发 2010-05-19
  • 打赏
  • 举报
回复
那也可能是Hive-based Registry和MULTI-BIN结合出现的问题。
boot.hv都放到XIPKERNEL里了?
九个太阳2023 2010-05-19
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 veabol 的回复:]
系统有添加BINFS吗?
[/Quote]
有的,而且也支持Hive-based Registry
博说医械研发 2010-05-19
  • 打赏
  • 举报
回复
系统有添加BINFS吗?
九个太阳2023 2010-05-19
  • 打赏
  • 举报
回复
顶起来~

19,502

社区成员

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

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