Hi,
I have problems to boot WinEC7 on our self-made core module. We are using AM3517 CPU and the provided BSP from Adeneo.After I start the image on the core module I get the following debug messages:
Windows CE Kernel for ARM (Thumb Enabled) Built on Jan 6 2011 at 16:15:31ProcessorType=0c08 Revision=7 CpuId=0x411fc087OEMAddressTable = 8041f8e0INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xbCPU CP15 Control Register = 0xc5387dCPU CP15 Auxiliary Control Register = 0x72Initializing VFP, FPSID=410330c1SysClock calibrate Frequency = 32768OALInitRTC: RTC found on I2C bus. Turning it on nowNKStartup done, starting up kernel. nCpus = 1Windows CE KernelInitError Reporting Memory Reserved, dump size = 0004b000Booting Windows CE version 7.00 for (ARM)Memory Configuring: Total pages: 35009, Filesystem pages = 17504Booting kernel with clean memory configuration:Total Memory Sections:2[0] (static): start: 866f0000, extension/attributes: 0001f000, length: 078c1000[1] (static): start: 8e000000, extension/attributes: 00004000, length: 01000000Scheduling the first thread.PID:00400002 TID:00410002 PGPOOL: Reserved 768 pages for Loader poolPID:00400002 TID:00410002 PGPOOL: Reserved 256 pages for File poolPID:00400002 TID:00410002 Message Queue support initialized, g_hMsgQHeap = c44a0010PID:00400002 TID:00510002 FileSystem Starting - starting with clean file systemPID:00400002 TID:00510002 Initializing RTCPID:00400002 TID:00510002 Initializing RTCPID:00400002 TID:00510002 Value [Locale] without corresponding LCType in NLS Override sectionPID:00400002 TID:00510002 Value [LocaleName] without corresponding LCType in NLS Override sectionPID:00400002 TID:00510002 Warning! Kernel DLL 'k.locale.dll' is registered for thread creation/deletion notification. To improve performance if you dont need thread notifications call DisableThreadLibraryCalls from inside DPID:00400002 TID:00510002 Warning! Kernel DLL 'k.normalize.dll' is registered for thread creation/deletion notification. To improve performance if you dont need thread notifications call DisableThreadLibraryCalls from insidPID:00400002 TID:00510002 FSVOL: Using system database volume "\Windows\Registry\default.vol"PID:00400002 TID:00510002 FSVOL: OEM forcing clean system db volume!PID:00400002 TID:00510002 Warning! Kernel DLL 'bcrypt.dll' is registered for thread creation/deletion notification. To improve performance if you dont need thread notifications call DisableThreadLibraryCalls from inside DLLPID:00400002 TID:00510002 FSDMGR: DEBUGCHK failed in file d:\chelanrtm14\private\winceos\coreos\storage\fsdmgr\volumeapi.cpp at line 402PID:00400002 TID:00510002 DEBUG_BREAK @ef822bf4 Ignored.PID:00400002 TID:00510002 Unknown: DEBUGCHK failed in file d:\chelanrtm14\private\winceos\coreos\filesys\reg\profiles\secstor.h at line 487PID:00400002 TID:00510002 DEBUG_BREAK @efd5e7c4 Ignored.PID:00400002 TID:00510002 Value [Locale] without corresponding LCType in NLS Override sectionPID:00400002 TID:00510002 Value [LocaleName] without corresponding LCType in NLS Override sectionPID:00400002 TID:00510002 !!!WARNING: Mutually dependent DLL detected: FPCRT (pMod = 0xc040634c) PID:00400002 TID:00510002 Warning! Kernel DLL 'k.ole32.dll' is registered for thread creation/deletion notification. To improve performance if you dont need thread notifications call DisableThreadLibraryCalls from inside DLPID:00400002 TID:00510002Initializing DatabasePID:00400002 TID:00510002 Warning! Kernel DLL 'k.sorting.dll' is registered for thread creation/deletion notification. To improve performance if you dont need thread notifications call DisableThreadLibraryCalls from inside PID:00400002 TID:00510002 SetCurrentUser: User hives not supported -- using same registry for all usersPID:00400002 TID:00510002 FSDMGR: DEBUGCHK failed in file d:\chelanrtm14\private\winceos\coreos\storage\fsdmgr\volumeapi.cpp at line 402PID:00400002 TID:00510002 DEBUG_BREAK @ef822bf4 Ignored.PID:00400002 TID:00510002 Unknown: DEBUGCHK failed in file d:\chelanrtm14\private\winceos\coreos\filesys\reg\profiles\secstor.h at line 487PID:00400002 TID:00510002 DEBUG_BREAK @efd5e7c4 Ignored.PID:00400002 TID:00510002 CePerf.dll is absent - performance data will not be recordedPID:00400002 TID:0085001E Read: Attempts = 2PID:00400002 TID:00C5001EFaulted in KCall, PC = 8048345c, SP = ffff1014, args = 00000004 ffff1088 00000807!!PID:00400002 TID:00C5001E Original Context when thread faulted:PID:00400002 TID:00C5001E Exception 'Data Abort'(4) Thread-Id=00c5001e(pth=c040a720) PC=eff340d4 BVA=ffff1088, dwInfo = 00000807PID:00400002 TID:00C5001E R0=ef9b4e3c R1=00000000 R2=00000000 R3=00000000PID:00400002 TID:00C5001E R4=00004444 R5=00005555 R6=00006666 R7=00007777PID:00400002 TID:00C5001E R8=00008888 R9=00009999 R10=00001010 R11=00001111PID:00400002 TID:00C5001E R12=cc7afe8c SP=cc7afe74 Lr=eff14504 PC=eff340d4, Psr=0000001fPID:00400002 TID:00C5001E Context when faulted in KCall:PID:00400002 TID:00C5001E Exception 'Data Abort'(4) Thread-Id=00c5001e(pth=ffff0e48) PC=8048345c BVA=ffff1088, dwInfo = 00000807PID:00400002 TID:00C5001E R0=ffff1088 R1=00000004 R2=60000193 R3=ffffc800PID:00400002 TID:00C5001E R4=80427efc R5=00000000 R6=00000000 R7=eff340d4PID:00400002 TID:00C5001E R8=00008888 R9=00009999 R10=00001010 R11=00001111PID:00400002 TID:00C5001E R12=ffffb038 SP=ffff1014 Lr=8042b160 PC=8048345c, Psr=60000193PID:00400002 TID:00C5001E Exception 'Data Abort' (0x4): Thread-Id=00c5001e(pth=c040a720), Proc-Id=00400002(pprc=866d2ad0) 'NK.EXE', VM-active=00400002(pprc=866d2ad0) 'NK.EXE'PID:00400002 TID:00C5001E PC=8048345c(kernel.dll+0x0002d45c) RA=8042b160(NK.EXE+0x0001b160) SP=ffff1014, BVA=ffff1088PID:00400002 TID:00C5001E RtlDispatchException: returning failure. Flags=0PID:00400002 TID:00C5001E NK Kernel: DEBUGCHK failed in file d:\chelanrtm14\private\winceos\coreos\nk\kernel\apicall.c at line 1210
What could be the problem? Does anybody have an idea?
Best regards,Andreas
I'm still working on my problem without any success.
I think I forgot one neccessary information about our platform. We are using u-boot to start WinEC 7. So I read in another forum, that eboot does format the nand flash before starting WinEC 7. This doesn't do our u-boot at the moment, but we set the WinEC boot Args with u-boot.
Could we have a problem, because we like to start with u-boot? Do I forget any other necessary thing to implement in u-boot (like the Args struct)?
What means the debug lines "d:\chelanrtm14\private\winceos\coreos\storage\fsdmgr\volumeapi.cpp at line 402"? WinEC tries to create or mount a volume. Which volume? I don't have add the nand driver to our image.
What means the debug message "d:\chelanrtm14\private\winceos\coreos\nk\kernel\apicall.c at line 1210"???
I hope anybody from Adeneo could help. Thank you in advance.
Best regards,
Andreas
BOOTARGS that are passed from EBOOT to the WEC7 kernel are mandatory for proper booting. Not providing them would indeed lead to unpredictable results such as the ones you are facing, as the kernel will take as parameteres whatever lies in RAM where the BOOTARGS structure is supposed to be. You definitely need to have UBOOT somehow provide this information to the kernel, looking at EBOOT's code you should be able to understand where in RAM the BOOTARGS structure should be located for the kernel to properly retrieve this information.
Adeneo Embedded Support teamContact us at sales@adeneo-embedded.com
I have done this before, the easiest way is to have uboot load eboot and then have eboot load the os (nk.bin).
You may have to relocate eboot in RAM.
Hello Andreas.
Have you solved the problem with starting WEC7 from UBOOT?
I will exact do the same but have also many problems.
Best regards
Jürgen
see my previous post. I have done this but it involves relocating eboot and nk.bin start addresses.
Hello Juergen,
yes I have solved the problem.
Which error message do you get exactly?
The problems occur, because eboot initialize some registers otherwise in contrast to u-boot.
For which company do you work? I have a few other problems in WinEC 7 with AM35x and would like someone with whom I can exchange ideas, but I can't do this with a competitor :-).
Besat regards,