阅读:9362回复:2
wince 6.0 XIP出现问题,希望高手来看看,多谢
CPU是OAMP35x,config.bib文件,注册表,以及xip包含的文件如下:
config.bib如下: MEMORY ; Name VA Length Type ARGS 84000000 00001000 RESERVED ; 4K pdwXIPLoc 00000000 84801000 FIXUPVAR XIPKERNEL 84001000 00800000 RAMIMAGE CHAIN 84801000 00004000 RESERVED NK 84805000 03FFF000 NANDIMAGE ; 48MB - 4K RAM 84805000 06000000 RAM ; 64MB DISPLAY 8B000000 01000000 RESERVED ; 16MB CONFIG XIPSCHAIN=84801000 DLLADDR_AUTOSIZE=ON ROM_AUTOSIZE=ON ; @CESYSGEN IF !NK_NKNOCOMP COMPRESSION=ON ; @CESYSGEN ENDIF !NK_NKNOCOMP ; @CESYSGEN IF NK_NKNOCOMP COMPRESSION=OFF ; @CESYSGEN ENDIF NK_NKNOCOMP KERNELFIXUPS=ON IF BSP_WCE IF BSP_SDRAM_BANK1_ENABLE FSRAMPERCENT=0x80808080 ELSE IF BSP_DSPLINK FSRAMPERCENT=0x40404040 ELSE FSRAMPERCENT=0x20202020 ENDIF ENDIF ELSE FSRAMPERCENT=0x0A0A0A0A ENDIF =========================================================================================================== 注册表如下 =========================================================================================================== ; HIVE BOOT SECTION [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 ;"MountHidden"=dword:1 "BootPhase"=dword:0 ; END HIVE BOOT SECTION ; HIVE BOOT SECTION ; Valid Bits for Flags registry value ; If no flags are set, the hive will be stored in the object store. ; ; 0x00000001 Start storage manager in boot phase 1 for hive-based registry ; 0x00000002 Start device manager in boot phase 1 for hive-based registry ; 0x00000004 Start storage manager in boot phase 1 for registry in ; external ROM (such as BINFS) ; 0x00000008 Start device manager in boot phase 1 for registry in ; external ROM (such as BINFS) ; add IIC Driver for PXA270 #include "$(_TARGETPLATROOT)\src\drivers\IIC\IIC.reg" #include "$(_TARGETPLATROOT)\src\drivers\kernelioctl\kernelioctl.reg" ;------------------------------------------------------------------------------- ; ; We want start both storage and device manager. Flags value is combination of ; 0x0001 Start storage manager in boot phases 0 and 1 to load the boot ; file system. ; 0x0002 Start device manager in boot phase 1 to load the boot file system. ; END HIVE BOOT SECTION ; HIVE BOOT SECTION [HKEY_LOCAL_MACHINE\Init\BootVars] "Flags"=dword:3 "SystemHive"="\\FlashDisk\\Documents and Settings\\system.hv" "ProfileDir"="\\FlashDisk\\Documents and Settings" "DefaultUser"="default" "Start DevMgr"=dword:1 ;"RegistryFlags"=dword:1 ; END HIVE BOOT SECTION ; HIVE BOOT SECTION ; @CESYSGEN ENDIF FILESYS_FSREGHIVE ;------------------------------------------------------------------------------- ;-- Storage Manager Configuration ---------------------------------------------- ; @CESYSGEN IF CE_MODULES_FSDMGR [HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk] "DefaultFileSystem"="BINFS" "PartitionDriver"="mspart.dll" "MountHidden"=dword:1 "MountAsROM"=dword:1 "Folder"="FlashDisk" ; Specify folder name "Name"="FLASH Disk Block Device" "AutoMount"=dword:1 "AutoPart"=dword:1 "AutoFormat"=dword:1 "BootPhase"=dword:0 "Flags"=dword:1000 [HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\FlashDisk\FATFS] "Dll"="exfat.dll" "DisableAutoFormat"=dword:1 "DisableAutoScan"=dword:1 "EnableCache"=dword:1 "CacheSize"=dword:0 "Util"="fatutil.dll" "CacheDll"="diskcache.dll" "FormatExfat"=dword:1 "Flags"=dword:14 ; "FormatFAT"=dword:1 "FormatTfat"=dword:1 "CheckForFormat"=dword:1 ; "MountAsRoot"=dword:1 ; "MountAsBootable"=dword:1 ; "MountBootable"=dword:1 ; "MountFlags"=dword:0 ; END HIVE BOOT SECTION ; @CESYSGEN ENDIF CE_MODULES_FSDMGR ;------------------------------------------------------------------------------- ;-- NAND Flash Drivers --------------------------------------------------------- ; @CESYSGEN IF CE_MODULES_FSDMGR ; @XIPREGION IF PACKAGE_OEMXIPKERNEL IF BSP_NONAND ! ; HIVE BOOT SECTION IF IMGONENAND [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk] "Dll"="onenand.dll" "Prefix"="DSK" "Index"=dword:0 "Order"=dword:4 "MemBase"=multi_sz:"0x0C01E000","0x0C010020","0x0C000400","6E000000" "MemLen"=multi_sz:"00002000","00000100","00001000","00000300" "DmaCh"=dword:3 ; CE_DRIVER_BLOCK_GUID "IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}" "Profile"="FlashDisk" ELSE [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\FlashDisk] "Dll"="smflash.dll" "Prefix"="DSK" "Index"=dword:0 "Order"=dword:0 "MemBase"=multi_sz:"6E000000","08000000" "MemLen"=multi_sz:"00001000","00001000" "DmaCh"=dword:3 ; CE_DRIVER_BLOCK_GUID "IClass"="{A4E7EDDA-E575-4252-9D6B-4195D48BB865}" "Profile"="FlashDisk" "Flags"=dword:1000 "BootPhase"=dword:1 ENDIF IMGONENAND ; END HIVE BOOT SECTION ENDIF BSP_NONAND ! ; @XIPREGION ENDIF PACKAGE_OEMXIPKERNEL ; @CESYSGEN ENDIF CE_MODULES_FSDMGR ================================================================================ 加入XIP的组件如下 ================================================================================ MODULES --------------------------------------- 2/23/2010 01:10:24 166912 nk.exe 2/23/2010 00:28:48 246784 kernel.dll 1/23/2010 02:11:15 1115136 coredll.dll 2/23/2010 01:10:22 4096 oalioctl.dll 2/23/2010 01:11:24 591872 k.coredll.dll 2/23/2010 00:28:50 59392 fpcrt.dll 2/23/2010 00:28:50 59392 k.fpcrt.dll 1/23/2010 02:11:20 595456 filesys.dll 1/23/2010 01:13:03 15360 romfsd.dll 2/23/2010 01:11:28 777216 gwes.dll 2/23/2010 00:31:01 4096 device.dll 2/23/2010 00:31:00 14336 udevice.exe 2/23/2010 00:30:59 63488 devmgr.dll 2/23/2010 00:31:02 7168 regenum.dll 1/23/2010 01:11:47 31232 busenum.dll 2/23/2010 01:10:16 80896 pm.dll 2/23/2010 00:29:44 28160 servicesd.exe 2/23/2010 00:29:26 37888 notify.dll 1/23/2010 01:12:47 228864 exfat.dll 1/23/2010 01:12:51 26112 diskcache.dll 1/23/2010 01:12:52 105984 cachefilt.dll 1/23/2010 02:11:19 111616 fatutil.dll 1/23/2010 02:11:19 111616 k.fatutil.dll 2/23/2010 00:29:06 24576 relfsd.dll 2/23/2010 00:29:00 7168 toolhelp.dll 2/23/2010 00:29:00 7168 k.toolhelp.dll 1/23/2010 01:12:55 74240 zlib.dll 2/23/2010 01:11:24 388096 commctrl.dll 2/23/2010 01:11:25 88576 commdlg.dll 2/23/2010 00:31:57 14848 binfs.dll 2/23/2010 00:29:05 131584 fsdmgr.dll 1/23/2010 01:12:54 48128 mspart.dll 2/23/2010 00:29:21 39424 ws2.dll 2/23/2010 00:29:21 39424 k.ws2.dll 1/23/2010 02:00:41 54784 ceddk.dll 1/23/2010 02:00:41 54784 k.ceddk.dll 2/23/2010 00:31:05 3584 GIISR.dll 2/23/2010 01:10:06 25600 bus.dll 2/23/2010 01:10:17 35328 nand.dll 1/20/2010 07:33:54 35328 smflash.dll 2/23/2010 01:03:56 27648 pmext.dll 2/23/2010 01:03:55 11776 ti_policies.dll 2/23/2010 01:03:54 6144 ti_cpuloadpolicy.dll 2/23/2010 01:03:54 17408 ti_constraintadapters.dll 2/23/2010 01:10:10 17408 touch.dll 12/17/2009 09:41:30 20992 IIC.dll 12/17/2009 09:41:35 3584 kernelioctl.dll FILES ---------------------------------------- 2/23/2010 02:24:21 _HRS 0 208590 wince.nls (ROM 0x84537384) 2/23/2010 02:24:22 CHRS 7566 45056 boot.hv (ROM 0x8456A254) 2/23/2010 02:24:22 CHRS 80874 331776 default.hv (ROM 0x8456BFE4) 2/23/2010 02:24:23 CHRS 6473 40960 user.hv (ROM 0x8457FBD0) 2/23/2010 01:10:16 CHRS 2495 7168 pwrkey.dll (ROM 0x844F2460) |
|
|
沙发#
发布于:2010-02-23 11:15
现在debug的打印信息如下:
Windows CE Kernel for ARM (Thumb Enabled) Built on Nov 24 2008 at 14:58:01 INFO: Oal_Watchdog libary Verion is: 1.00. Write: Attempts = 2 Write: Attempts = 3 Write: Attempts = 4 Write: Attempts = 5 WARN: I2C: Write failed (SA=0x5D, register=0x00000000) Write TVP5146......Write TVP5146 fail.DS2460 SN is:0x3c 0x97 0x8d 0xa 0x0 0x0 0x0 0x19 INFO: Oal_Intr_EPC9000 libary Verion is: 0.10. OALIntrInit OK. --- High Performance Frequecy is 32768 khz--- INFO: OAL Get hardware information:...... BspArg.wMAC_Eth1[0] = 0x1400. BspArg.wMAC_Eth1[1] = 0x9f97. BspArg.wMAC_Eth1[2] = 0x5. BspArg.wMAC_Eth2[0] = 0xa8c0. BspArg.wMAC_Eth2[1] = 0xb200. BspArg.wMAC_Eth2[2] = 0xffff. Platform Software Version is: 2.00. Platform Customer Name is: General. Platform Software Version is: 2.00. Platform Customer Name is: General. INFO: Checking EPC System Valid. OEMInit OK. INFO: OALIoCtlHalPostInit() OK. CertMod.dll not found, using old OEM Trust Model FileSystem Starting - starting with clean file system viicInit ViicGpioInit IFO:ViicGpioInit for PCF8563 I2cSendStr Send SlaAddress Failed (No ACK) FSVOL: Opening existing volume FSVOL: Volume heap already initialized FSREG: Mounted ROM portion of boot registry FSVOL: Creating clean virtual volume FSVOL: Initializing volume heap FSREG: Mounted RAM portion of boot registry viicInit ViicGpioInit IFO:ViicGpioInit for PCF8563 I2cSendStr Send SlaAddress Failed (No ACK) FS: Creating signal event SYSTEM/DevMgrApiSetReady FS: Creating signal event SYSTEM/PowerManagerReady FS: Creating signal event SYSTEM/GweApiSetReady FS: Creating signal event SYSTEM/DCOMApiSetReady FS: Creating signal event SYSTEM/NLedAPIsReady FS: Creating signal event SYSTEM/BatteryAPIsReady FILESYS: Starting boot phase 0. FILESYS: RAM File System FSD_MountDisk registering folder "Object Store" FILESYS: Starting boot phase 1. FILESYS: Starting device and waiting for boot file system. Filesys: Loaded device.dll FILESYS: Waiting for device manager to signal BootPhase1 completion. Ceddk!CalibrateStallCounter: Enter Ceddk!CalibrateStallCounter: Could not find stall counter Ceddk!BeginCalibration: min(328) max(365) Ceddk!BeginCalibration: Elapsed is 337 Ceddk!BeginCalibration: Delay is 53 KIC DLL_PROCESS_ATTACH...... KIC_Init... NAND_Initialize:2c ba FMD_Init. MSPART!PD_OpenPartition: dwStoreId=D03E8320, PartName=Part00 FILESYS: Waiting for bootable file system to be mounted. FILESYS: Device started. Boot file system ready. FSREG: Unable to read value "SystemHiveInitialSize" under HKEY_LOCAL_MACHINE\init\BootVars FSVOL: Opening existing volume FSVOL: Volume heap already initialized FSREG: Mounted ROM portion of system hive FILESYS: Loading system hive from \FlashDisk\Documents and Settings\system.hv. OEM: Get hive register clean flag. OEM: Not cleaning system hive FSREG: Mounting clean system hive BuildPath: FlashDisk BuildPath: FlashDisk\Documents and Settings FSVOL: Creating new volume (size=28672 bytes) FSVOL: Initializing volume heap FSREG: Taking down boot registry. Any open keys will be invalid. FILESYS: Registry in place. OEM: Get hive register clean flag. OEM: Not cleaning user hive FSREG: Unable to read value "RegistryFlags" under HKEY_LOCAL_MACHINE\init\BootVars INITOBJ: Error: failed to open initobj.dat (error 2), initobj.dat required FSVOL: Using system database volume "\Documents and Settings\default.vol" BuildPath: Documents and Settings OEM: Get hive register clean flag. OEM: Not cleaning system hive FSVOL: Creating new volume (size=28672 bytes) FSVOL: Initializing volume heap FSREG: Unable to read value "RequireCertMod" under HKEY_LOCAL_MACHINE\init\BootVars FSREG: Unable to read value "NoDefaultUser" under HKEY_LOCAL_MACHINE\init\BootVars FSREG: Logging in default user. SetCurrentUser: Logging out (nobody), logging in default BuildPath: FlashDisk BuildPath: FlashDisk\Documents and Settings BuildPath: FlashDisk\Documents and Settings\default FSREG: Mounting ROM portion of user hive FSVOL: Opening existing volume FSVOL: Volume heap already initialized Mounting user hive from \FlashDisk\Documents and Settings\default\user.hv FSREG: Mounting clean user hive FSVOL: Creating new volume (size=28672 bytes) FSVOL: Initializing volume heap FSREG: Unable to read value "RegistryFlags" under HKEY_LOCAL_MACHINE\init\BootVars INITOBJ: Error: failed to open initobj.dat (error 2), initobj.dat required ERROR: C:\ymzki\private\winceos\COREOS\filesys\dbase\.\initdb.c line 589: Couldnt open initdb.ini Filesystem initialized! FILESYS: Waiting for kernel to be ready to launch apps FS: Creating signal event SYSTEM/DevMgrApiSetReady FS: Creating signal event SYSTEM/PowerManagerReady FS: Creating signal event SYSTEM/GweApiSetReady FS: Creating signal event system/events/notify/APIReady FS: Creating signal event SYSTEM/DCOMApiSetReady FS: Creating signal event SYSTEM/ShellAPIReady FS: Creating signal event SYSTEM/NLedAPIsReady FS: Creating signal event SYSTEM/BatteryAPIsReady FILESYS: Launching apps FILESYS: Boot phase 2 BINFS:IOCTL_KLIB_SETROMDLLBASE (first = 8d6c0000, last = 00180000) failed; error=87!!! MSPART!PD_OpenPartition: dwStoreId=D03E8320, PartName=Part01 INFO: OALIoCtlQueryFormatPartition. FSD_MountDisk: Mounting volume for hDsk=D03E8D00 FATFS!ReadRegistryValues: Registry flags = 0x14 FATFS!ReadRegistryValues: Force write through disabled FATFS!ReadRegistryValues: Automatic formatting enabled FATFS!ReadRegistryValues: Transact data disabled FATFS!ReadRegistryValues: Security Support disabled CreateCache: Successful. Cache Size: 64 KB, Start: 64, End: 95, CreateFlags: 2. CreateCache: Successful. Cache Size: 2 KB, Start: 98, End: 98, CreateFlags: 3. CreateCache: Successful. Cache Size: 128 KB, Start: 96, End: 16383, CreateFlags: 2. CACHEFILT:DllMain, Attach process ID=0x00400002 CACHEFILT:CacheViewPool_t::Init, Pool VM Addr=0xd0620000 Size=0x02000000 CACHEFILT:HookVolume, hDsk=0xd05f4860 pHook=0xd03e9188 CACHEFILT: pVolume=0xd06102a0 in write-back mode, prio=255 timeout=5000 FATFS!RegisterVolume: Mounted volume HVOL=0x01930003 at "FlashDisk2" FATFS!MountVolume: Successfully mounted TexFAT volume. MSPART!PD_OpenPartition: dwStoreId=D03E8320, PartName=Part02 INFO: OALIoCtlQueryFormatPartition. FSD_MountDisk: Mounting volume for hDsk=D05F44C0 FATFS!ReadRegistryValues: Registry flags = 0x14 FATFS!ReadRegistryValues: Force write through disabled FATFS!ReadRegistryValues: Automatic formatting enabled FATFS!ReadRegistryValues: Transact data disabled FATFS!ReadRegistryValues: Security Support disabled CreateCache: Successful. Cache Size: 242 KB, Start: 153, End: 273, CreateFlags: 2. CreateCache: Successful. Cache Size: 8 KB, Start: 279, End: 282, CreateFlags: 3. CreateCache: Successful. Cache Size: 484 KB, Start: 274, End: 61567, CreateFlags: 2. CACHEFILT:HookVolume, hDsk=0xd05f5ee0 pHook=0xd05f4b68 CACHEFILT: pVolume=0xd06103a0 in write-back mode, prio=255 timeout=5000 FATFS!RegisterVolume: Mounted volume HVOL=0x01bf0003 at "FlashDisk3" FATFS!MountVolume: Successfully mounted TexFAT volume. CACHEFILT:CachedVolume_t::WriteBackThread starting, pVolume=0xd06103a0 CACHEFILT:CachedVolume_t::WriteBackThread starting, pVolume=0xd06102a0 FILESYS: SignalStarted loop = 1 FILESYS: Launching WDT.exe FILESYS: Launching gwes.dll Filesys: Loaded gwes.dll Ceddk!CalibrateStallCounter: Enter Ceddk!CalibrateStallCounter: Stall counter loaded from registry(53) Exception 'Prefetch Abort' (3): Thread-Id=018d0006(pth=8a5f4000), Proc-Id=00400002(pprc=84820308) 'NK.EXE', VM-active=00400002(pprc=84820308) 'NK.EXE' PC=00000000(???+0x00000000) RA=c032e7bc(cachefilt.dll+0x0000e7bc) SP=d060f8b8, BVA=00000000 |
|
|
板凳#
发布于:2010-02-23 11:19
希望各位开发高手过来看看,帮小弟解决下这个奇怪的问题,主要是BINFS错误,跟踪代码发现分配地址(VMAlloc函数)返回code为87的错误,网上也有人出现这种问题,但是没有人给出如何解决啊
|
|
|