4841|16

69

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

求救,各位达人,WinCE6.0如何加载位于BinFS文件系统中类型为NandImage的.bin文件中的内容? [复制链接]

我现在做的是BinFS+Multi-bin,目的是加快WINCE6.0的启动速度,减小内存使用。核心的东西都放在XIPKERNEL.bin中,为RAMIMAGE,而其他东西则放在nk.bin中,为NANDIMAGE。现在的现象是,xipkernel里面的东西好像加载都是正常的,但是nk.bin中的内容一概访问不到或者根本就没有去加载,例如电池驱动等。

做过的达人谢谢赐教!

下面是一些有用的信息。
common.bib:
nk.exe          $(_FLATRELEASEDIR)\oal.exe                  $(XIPKERNEL)  SHZ
nk.exe          $(_FLATRELEASEDIR)\oalkitl.exe              $(XIPKERNEL)  SHZ
nk.exe          $(_FLATRELEASEDIR)\oal.exe                  $(XIPKERNEL)  SHZ
kitl.dll        $(_FLATRELEASEDIR)\kitl.dll                 $(XIPKERNEL)  SHZ
kernel.dll      $(_FLATRELEASEDIR)\kernprof.dll             $(XIPKERNEL)  SHZ
kernel.dll      $(_FLATRELEASEDIR)\kern.dll                 $(XIPKERNEL)  SHZ
coredll.dll     $(_FLATRELEASEDIR)\coredll.dll              $(XIPKERNEL)  SH
oalioctl.dll    $(_FLATRELEASEDIR)\oalioctl.dll             $(XIPKERNEL)  SHK
k.coredll.dll   $(_FLATRELEASEDIR)\k.coredll.dll            $(XIPKERNEL)  SHMK
fpcrt.dll       $(_FLATRELEASEDIR)\fpcrt.dll                $(XIPKERNEL)  SH
k.fpcrt.dll     $(_FLATRELEASEDIR)\fpcrt.dll                $(XIPKERNEL)  SHMK
filesys.dll     $(_FLATRELEASEDIR)\filesys.dll              $(XIPKERNEL)  SHK
romfsd.dll      $(_FLATRELEASEDIR)\romfsd.dll               $(XIPKERNEL)  SHK
device.dll      $(_FLATRELEASEDIR)\device.dll               $(XIPKERNEL)  SHMK
devmgr.dll      $(_FLATRELEASEDIR)\devmgr.dll               $(XIPKERNEL)  SHMK
regenum.dll     $(_FLATRELEASEDIR)\regenum.dll              $(XIPKERNEL)  SHK
busenum.dll     $(_FLATRELEASEDIR)\busenum.dll              $(XIPKERNEL)  SHK
pm.dll          $(_FLATRELEASEDIR)\pm.dll                   $(XIPKERNEL)  SHMK
exfat.dll       $(_FLATRELEASEDIR)\exfat.dll                $(XIPKERNEL)  SHK
diskcache.dll   $(_FLATRELEASEDIR)\diskcache.dll            $(XIPKERNEL)  SHK
cachefilt.dll   $(_FLATRELEASEDIR)\cachefilt.dll            $(XIPKERNEL)  SHK
fatutil.dll     $(_FLATRELEASEDIR)\fatutil.dll              $(XIPKERNEL)  SHQ
relfsd.dll      $(_FLATRELEASEDIR)\relfsd.dll               $(XIPKERNEL)  SHK
binfs.dll       $(_FLATRELEASEDIR)\binfs.dll                $(XIPKERNEL)  SHK
fsdmgr.dll      $(_FLATRELEASEDIR)\fsdmgr.dll               $(XIPKERNEL)  SHMK
mspart.dll      $(_FLATRELEASEDIR)\mspart.dll               $(XIPKERNEL)  SHK
flashmdd.dll    $(_FLATRELEASEDIR)\flashmdd.dll             $(XIPKERNEL)  SHK
flashpart.dll   $(_FLATRELEASEDIR)\flashpart.dll            $(XIPKERNEL)  SHK
ceddk.dll       $(_FLATRELEASEDIR)\ceddk.dll                $(XIPKERNEL)  SHQ
wince.nls       $(_FLATRELEASEDIR)\wince.nls                $(XIPKERNEL)  SHU
boot.hv         $(_FLATRELEASEDIR)\boot.hv                  $(XIPKERNEL)  SH
default.hv      $(_FLATRELEASEDIR)\default.hv               $(XIPKERNEL)  SH
user.hv         $(_FLATRELEASEDIR)\user.hv                  $(XIPKERNEL)  SH

platform.bib:
flashpdd.dll                $(_FLATRELEASEDIR)\flashpdd.dll                $(XIPKERNEL)        SHK
s3c6410_PwrCon.dll        $(_FLATRELEASEDIR)\s3c6410_PwrCon.dll        $(XIPKERNEL)        SHK
s3c6410_Video.dll        $(_FLATRELEASEDIR)\s3c6410_Video.dll        $(XIPKERNEL)        SHK
此帖出自WindowsCE论坛

最新回复

不知道楼主解决没有哦。  详情 回复 发表于 2009-10-7 16:21
点赞 关注
 

回复
举报

73

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
config.bib:
#define        CHAIN_ADDRESS        805FF000
#define        CHAIN_LENGTH        00001000
;-----------------------------------------------------
;        NAME                        ADDRESS                SIZE                        TYPE
;-----------------------------------------------------
;        nk.exe:pdwXIPLoc        00000000        $(CHAIN_ADDRESS)        FIXUPVAR
;        pdwXIPLoc                00000000        $(CHAIN_ADDRESS)        FIXUPVAR
        XIPKERNEL                80200000        003FF000                RAMIMAGE
        NK                        80600000        03000000                NANDIMAGE
        CHAIN                        $(CHAIN_ADDRESS)$(CHAIN_LENGTH)                RESERVED
        RAM                        80600000        06400000                RAM
;        FLASH                   92000000          00100000                  RESERVED

; Common RAM areas

        AUD_DMA                80002000        00002000                RESERVED
        TEMPS                80010000        00010000                RESERVED
        DBGSER_DMA        80022000        00002000                RESERVED
        ARGS                80020800        00000800                RESERVED
        SER_DMA                80024000        00002000                RESERVED
        IR_DMA                80026000        00002000                RESERVED
        SLEEP                80028000        00002000                RESERVED
        EDBG                80030000        00020000                RESERVED
        FIMG_BUF        87000000        00800000                  RESERVED
        DISPLAY                87800000        00400000                RESERVED
        MFC_JPEG        87C00000        00400000                RESERVED

CONFIG

        COMPRESSION=ON
        KERNELFIXUPS=ON
        AUTOSIZE=ON

IF IMGMULTIXIP
        RAM_AUTOSIZE=OFF
        ROM_AUTOSIZE=OFF
        DLLADDR_AUTOSIZE=ON

        XIPSCHAIN=$(CHAIN_ADDRESS)

        AUTOSIZE_ROMGAP=10000
        AUTOSIZE_DLLADDRGAP=0
        AUTOSIZE_DLLDATAADDRGAP=0
        AUTOSIZE_DLLCODEADDRGAP=0

        ROMFLAGS=0
ENDIF

IF IMGPROFILER
            PROFILE=ON
ELSE
            PROFILE=OFF
ENDIF

        FSRAMPERCENT = 0x40404040
此帖出自WindowsCE论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
platform.reg:
IF IMGHIVEREG
[HKEY_LOCAL_MACHINE\Init\BootVars]
        "SYSTEMHIVE"="NandFlash\\system.hv"
        "Start DevMgr"=dword:0
        "RegistryFlags"=dword:1
ENDIF IMGHIVEREG

IF BSP_NONANDFS !

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Support BINFS Section
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Add BinFS to partition table
[HKEY_LOCAL_MACHINE\System\StorageManager\PartitionTable]
        "20"="BOOT"
            "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 0x01 == load synchronously
            "LoadFlags"=dword:1
            "Order"=dword:0
            "BootPhase"=dword:0
            "Flags"=dword:1000

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\MSFlash]
        "Prefix"="DSK"
        "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
        "Order"=dword:0
        "Dll"="flashmdd.dll"
        "FlashPddDll"="FlashPdd.dll"   
        "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"="flashpart.dll"
            "AutoMount"=dword:1
            "AutoPart"=dword:1
            "AutoFormat"=dword:1
            "Name"="Microsoft Flash Disk"
        "Folder"="NandFlash"   

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash\BINFS]
        "MountHidden"=dword:1
        "MountAsROM"=dword:1

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MSFlash\FATFS]
        "FormatExfat"=dword:1
        "Flags"=dword:14                ; deprecated in CE6.0 (0x4 : FATFS_DISABLE_AUTOSCAN, 0x10 : FATFS_ENABLE_BACKUP_FAT)
        "DisableAutoScan"=dword:1
;  "CheckForFormat"=dword:1
;        "EnableWriteBack"=dword:1
;        "Folder"="NandFlash"
        "MountAsRoot"=dword:1                ; for ROM-only file system
IF IMGHIVEREG
        "MountAsBootable"=dword:1        ; for Hive-based registry
ENDIF IMGHIVEREG

ENDIF BSP_NONANDFS !
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

4
 
帮顶下!
此帖出自WindowsCE论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

5
 
自己顶!
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

6
 
OSAXS是什么?
此帖出自WindowsCE论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

7
 
利用DEBUG版,发现打印信息中并没有加载binfs.dll,是不是由于没有加载binfs.dll才导致的呀?

难道没有达人做过吗?
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

8
 
友情帮顶
此帖出自WindowsCE论坛
 
 
 

回复

51

帖子

0

TA的资源

一粒金砂(初级)

9
 
帮顶……
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

10
 
问题原来出在EBoot上,现在用旧版本的EBoot已经OK一大半了,下面就是小细节问题了,哈哈!
此帖出自WindowsCE论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

11
 
此帖出自WindowsCE论坛
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

12
 
新问题出来了,更加严峻:
已经成功的方案nandflash驱动采用的是FAL+FMD结构,现在的新方案采用的则是MDD+PDD+FMD结构。结果,E-Boot创建的BinFS分区无法被新结构的分区驱动flashpart.dll识别,于是文件系统驱动binfs.dll也不会加载。综上所述,XIP+Multi-bin失败。

采用新的结构,e-boot需要做哪些改动从而保证创建的分区能够被识别?谢谢达人赐教!
此帖出自WindowsCE论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

13
 
帮顶!
现在我也正在做6.0 上的XIP,
INFO: OEMLaunch: Jumping to Physical Address 0x3026B35Ch (Virtual Address 0x8026B35Ch)...
打印上面信息后就停止了,内核根本没被加载,请问是什么原因?
此帖出自WindowsCE论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

14
 
各位达人努力,小的刚刚接触ce6.0和24XX,估计跟原来5.0上的multibin有出入,等候佳音hoho
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

15
 
继续顶,问题还没解决啊!!
此帖出自WindowsCE论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

16
 
引用 12 楼 sunny_hgh 的回复:
帮顶!
现在我也正在做6.0 上的XIP,
INFO: OEMLaunch: Jumping to Physical Address 0x3026B35Ch (Virtual Address 0x8026B35Ch)...
打印上面信息后就停止了,内核根本没被加载,请问是什么原因?

个人感觉跳转的物理地址似乎没有问题,但是虚拟地址好像不对,我跳转的虚拟地址在0x50000000左右。
此帖出自WindowsCE论坛
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

17
 
不知道楼主解决没有哦。
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表