Hi
We have developed our own hardwarw board.without SD nor LAN
we use win CE B 6.0 BSP from freescale
On the EVK everything works just fine (from SD).
to work with our board, we change from SD to nand and from EVK DDR chip to ours and seethe following :
1. Loading the eboot to RAM using SB_Loader does not end with something running (neither on the EVK!) so we work with eboot_ivt. does it suppose to be like this?
2. the eboot_ivt works from RAM only. we can see the boot menu and the freescale image on the screen.we can also burn NK image to NAND, launch previous NK image from NAND or download a new one from PB. Eboot parameters are also saved in NAND, so NAND is working.
burnning the eboot to nand and changing to NAND boot does not produce any output in the debug port so we assume it does not boot from NAND. or does not load from NAND. any idea?
3. So we send the eboot into RAM with SB_loader, download the new image (no matter if imgnand =1 or imgnand =0 ) we can see thatthe program runs until OEMinit is finished and than stay in a loop.
+OEMCacheRangeFlush(0x00000000, 0, 0x00000024)
-OEMCacheRangeFlush
and finaly it hangs..
we chaged from imgnand=1 to imgnand=0 and back. did not change anything.
we downloaded nk_ivt directly to RAM.
We disable KITL and the debugger.
all had the same result
Somtimes we manage to get as far as it is here:
OALPAtoVA(va = 0xb0018000)
+BSPIntrInit
-BSPIntrInit
-OALIntrInit(rc = 1)
+OALTimerInit(1, 12000, 123)
+OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
-OALIntrRequestSysIntr(sysIntr = 16)
+OALPAtoVA(0x80068000, 0)
-OALPAtoVA(va = 0xb0068000)
+OEMInterruptEnable(16, 0x0, 0)
+OALIntrEnableIrqs(4, 0x81166820)
+BSPIntrEnableIrq
-BSPIntrEnableIrq(irq = 48)
+BSPIntrEnableIrq
-BSPIntrEnableIrq(irq = -1)
+BSPIntrEnableIrq
-BSPIntrEnableIrq(irq = -1)
+BSPIntrEnableIrq
-BSPIntrEnableIrq(irq = -1)
-OALIntrEnableIrqs(rc = 1)
-OEMInterruptEnable(rc = 1)
+InitRTC(...)
+OALRTC_WriteRawPersistentField
-OALRTC_WriteRawPersistentField(rc = 1)
+OALRTC_WriteRawPersistentField
-OALRTC_WriteRawPersistentField(rc = 1)
+OALRTC_WriteRawPersistentField
-OALRTC_WriteRawPersistentField(rc = 1)
+OALRTC_WriteRawPersistentField
-OALRTC_WriteRawPersistentField(rc = 1)
-InitRTC(...)
-OALTimerInit(rc = 1)
+InitWatchDogTimer
-InitWatchDogTimer
-OEMInit
+OEMCacheRangeFlush(0x00000000, 0, 0x0000007f)
-OEMCacheRangeFlush
+OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
-OEMCacheRangeFlush
+OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
-OEMCacheRangeFlush
..............................
OEMCacheRangeFlush(0x00000000, 0, 0x00000006)
-OEMCacheRangeFlush
+OEMGetRealTime
OEMGetRealTime(2006/1/1 12:1:5.0)
+OEMCacheRangeFlush(0x87fc7000, 8, 0x00000004)
-OEMCacheRangeFlush
+OEMIoControl(0x101008c, 0x0, 0, 0xd00afac8, 4, 0xd00afacc)
-OALIoCtlHalGetRegSecureKeys(rc = 1)
-OEMIoControl(rc = 1)
+OEMCacheRangeFlush(0x00000000, 0, 0x00000024)
-OEMCacheRangeFlush
+OEMCacheRangeFlush(0x00000000, 0, 0x00000024)
-OEMCacheRangeFlush
+OEMCacheRangeFlush(0x87fc6000, 4096, 0x00000004
Any ideas? What can be the problem?