I am using samsung s3c2440 Arm cpu, wince 5.0
After executing OEMInit(), just halted.
how to debug this problem?

i'm found similar this problem. i checked as follows. but they were not in
my case.
1. Verify that your system tick timer function properly.
Does your OEMInterruptHandler implement SYSINTR_RESCHED interrupt?
2. any uninitialized pointer has been used in your code.
3. Wrong Memory Settings. oemaddrtab_cfg.inc, config.bib
4. Interrupt.

The debug message as follows.
---------------------------------------------------
Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
ProcessorType=0920 Revision=0
sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 8022c610
DCache: 8 sets, 64 ways, 32 line size, 16384 size
ICache: 8 sets, 64 ways, 32 line size, 16384 size
+OALInterruptInit
+OALIntrMapInit
-OALIntrMapInit
+OALPAtoVA(0x4a000000, 0)
-OALPAtoVA(va = 0xb0a00000)
+OALPAtoVA(0x56000000, 0)
-OALPAtoVA(va = 0xb1600000)
+BSPIntrInit
+OALPAtoVA(0x56000000, 0)
-OALPAtoVA(va = 0xb1600000)
+OALIntrStaticTranslate(17, 26)
-OALIntrStaticTranslate
-BSPIntrInit(rc = 1)
-OALInterruptInit(rc = 1)
+OALTimerInit( 1, 17, 0 )
+OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
-OALIntrRequestSysIntr(sysIntr = 16)
+OALPAtoVA(0x51000000, 0)
-OALPAtoVA(va = 0xb1100000)
+OEMInterruptEnable(16, 0x0, 0)
+OALTranslateSysIntr(16)
-OALTranslateSysIntr(rc = 1)
+OALIntrEnableIrqs(1, 0x8201ef20)
+BSPIntrEnableIrq(14)
-BSPIntrEnableIrq(irq = 14)
-OALIntrEnableIrqs(rc = 1)
-OEMInterruptEnable(rc = 1)
-OALTimerInit(rc = 1)
+ConfigureGPIO
+OALPAtoVA(0x56000000, 0)
-OALPAtoVA(va = 0xb1600000)
+OALPAtoVA(0x4c000000, 0)
-OALPAtoVA(va = 0xb0c00000)
-ConfigureGPIO
+InitDisplay
+OALPAtoVA(0x56000000, 0)
-OALPAtoVA(va = 0xb1600000)
+OALPAtoVA(0x4d000000, 0)
-OALPAtoVA(va = 0xb0d00000)
-InitDisplay
+OALKitlStart
OALKitlStart Null
-OALKitlStart
-OEMInit

<END>

-OR-----------------------------------------------
+OEMCacheRangeFlush(0x00000000, 0, 0x00000004)
-OEMCacheRangeFlush
Sp=ffffc7cc
+OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
-OEMCacheRangeFlush
<END>

---------------------------------------------------

Thanks.
Regard.

Re: Halt after OEMInit(). in s3c2440 by make

make
Thu Jul 20 23:21:28 CDT 2006

pls try add NKForceCleanBoot() in oeminit
"desik" <desik@discussions.microsoft.com> wrote in message
news:A7C41713-7CB7-4984-871A-B92F766B0DF5@microsoft.com...
>I am using samsung s3c2440 Arm cpu, wince 5.0
> After executing OEMInit(), just halted.
> how to debug this problem?
>
> i'm found similar this problem. i checked as follows. but they were not in
> my case.
> 1. Verify that your system tick timer function properly.
> Does your OEMInterruptHandler implement SYSINTR_RESCHED interrupt?
> 2. any uninitialized pointer has been used in your code.
> 3. Wrong Memory Settings. oemaddrtab_cfg.inc, config.bib
> 4. Interrupt.
>
> The debug message as follows.
> ---------------------------------------------------
> Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
> ProcessorType=0920 Revision=0
> sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable =
> 8022c610
> DCache: 8 sets, 64 ways, 32 line size, 16384 size
> ICache: 8 sets, 64 ways, 32 line size, 16384 size
> +OALInterruptInit
> +OALIntrMapInit
> -OALIntrMapInit
> +OALPAtoVA(0x4a000000, 0)
> -OALPAtoVA(va = 0xb0a00000)
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +BSPIntrInit
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALIntrStaticTranslate(17, 26)
> -OALIntrStaticTranslate
> -BSPIntrInit(rc = 1)
> -OALInterruptInit(rc = 1)
> +OALTimerInit( 1, 17, 0 )
> +OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
> -OALIntrRequestSysIntr(sysIntr = 16)
> +OALPAtoVA(0x51000000, 0)
> -OALPAtoVA(va = 0xb1100000)
> +OEMInterruptEnable(16, 0x0, 0)
> +OALTranslateSysIntr(16)
> -OALTranslateSysIntr(rc = 1)
> +OALIntrEnableIrqs(1, 0x8201ef20)
> +BSPIntrEnableIrq(14)
> -BSPIntrEnableIrq(irq = 14)
> -OALIntrEnableIrqs(rc = 1)
> -OEMInterruptEnable(rc = 1)
> -OALTimerInit(rc = 1)
> +ConfigureGPIO
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALPAtoVA(0x4c000000, 0)
> -OALPAtoVA(va = 0xb0c00000)
> -ConfigureGPIO
> +InitDisplay
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALPAtoVA(0x4d000000, 0)
> -OALPAtoVA(va = 0xb0d00000)
> -InitDisplay
> +OALKitlStart
> OALKitlStart Null
> -OALKitlStart
> -OEMInit
>
> <END>
>
> -OR-----------------------------------------------
> +OEMCacheRangeFlush(0x00000000, 0, 0x00000004)
> -OEMCacheRangeFlush
> Sp=ffffc7cc
> +OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
> -OEMCacheRangeFlush
> <END>
>
> ---------------------------------------------------
>
> Thanks.
> Regard.
>



Re: Halt after OEMInit(). in s3c2440 by desik

desik
Fri Jul 21 03:36:02 CDT 2006

I tried your suggestion. But still the problem persists.

thank you for your reply.

"make" wrote:

> pls try add NKForceCleanBoot() in oeminit
> "desik" <desik@discussions.microsoft.com> wrote in message
> news:A7C41713-7CB7-4984-871A-B92F766B0DF5@microsoft.com...
> >I am using samsung s3c2440 Arm cpu, wince 5.0
> > After executing OEMInit(), just halted.
> > how to debug this problem?
> >
> > i'm found similar this problem. i checked as follows. but they were not in
> > my case.
> > 1. Verify that your system tick timer function properly.
> > Does your OEMInterruptHandler implement SYSINTR_RESCHED interrupt?
> > 2. any uninitialized pointer has been used in your code.
> > 3. Wrong Memory Settings. oemaddrtab_cfg.inc, config.bib
> > 4. Interrupt.
> >
> > The debug message as follows.
> > ---------------------------------------------------
> > Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
> > ProcessorType=0920 Revision=0
> > sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable =
> > 8022c610
> > DCache: 8 sets, 64 ways, 32 line size, 16384 size
> > ICache: 8 sets, 64 ways, 32 line size, 16384 size
> > +OALInterruptInit
> > +OALIntrMapInit
> > -OALIntrMapInit
> > +OALPAtoVA(0x4a000000, 0)
> > -OALPAtoVA(va = 0xb0a00000)
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +BSPIntrInit
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALIntrStaticTranslate(17, 26)
> > -OALIntrStaticTranslate
> > -BSPIntrInit(rc = 1)
> > -OALInterruptInit(rc = 1)
> > +OALTimerInit( 1, 17, 0 )
> > +OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
> > -OALIntrRequestSysIntr(sysIntr = 16)
> > +OALPAtoVA(0x51000000, 0)
> > -OALPAtoVA(va = 0xb1100000)
> > +OEMInterruptEnable(16, 0x0, 0)
> > +OALTranslateSysIntr(16)
> > -OALTranslateSysIntr(rc = 1)
> > +OALIntrEnableIrqs(1, 0x8201ef20)
> > +BSPIntrEnableIrq(14)
> > -BSPIntrEnableIrq(irq = 14)
> > -OALIntrEnableIrqs(rc = 1)
> > -OEMInterruptEnable(rc = 1)
> > -OALTimerInit(rc = 1)
> > +ConfigureGPIO
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALPAtoVA(0x4c000000, 0)
> > -OALPAtoVA(va = 0xb0c00000)
> > -ConfigureGPIO
> > +InitDisplay
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALPAtoVA(0x4d000000, 0)
> > -OALPAtoVA(va = 0xb0d00000)
> > -InitDisplay
> > +OALKitlStart
> > OALKitlStart Null
> > -OALKitlStart
> > -OEMInit
> >
> > <END>
> >
> > -OR-----------------------------------------------
> > +OEMCacheRangeFlush(0x00000000, 0, 0x00000004)
> > -OEMCacheRangeFlush
> > Sp=ffffc7cc
> > +OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
> > -OEMCacheRangeFlush
> > <END>
> >
> > ---------------------------------------------------
> >
> > Thanks.
> > Regard.
> >
>
>
>

Re: Halt after OEMInit(). in s3c2440 by Silver

Silver
Fri Jul 21 10:43:21 CDT 2006

Is your system waiting for KITL to connect?

The system will execute Filesys.exe soon after exiting OEMInit, but my
advice would be verify yout KITL connection first then change
filesys.exe to a simple hello world program to see if you are getting
there.



desik wrote:
> I am using samsung s3c2440 Arm cpu, wince 5.0
> After executing OEMInit(), just halted.
> how to debug this problem?
>
> i'm found similar this problem. i checked as follows. but they were not in
> my case.
> 1. Verify that your system tick timer function properly.
> Does your OEMInterruptHandler implement SYSINTR_RESCHED interrupt?
> 2. any uninitialized pointer has been used in your code.
> 3. Wrong Memory Settings. oemaddrtab_cfg.inc, config.bib
> 4. Interrupt.
>
> The debug message as follows.
> ---------------------------------------------------
> Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
> ProcessorType=0920 Revision=0
> sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 8022c610
> DCache: 8 sets, 64 ways, 32 line size, 16384 size
> ICache: 8 sets, 64 ways, 32 line size, 16384 size
> +OALInterruptInit
> +OALIntrMapInit
> -OALIntrMapInit
> +OALPAtoVA(0x4a000000, 0)
> -OALPAtoVA(va = 0xb0a00000)
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +BSPIntrInit
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALIntrStaticTranslate(17, 26)
> -OALIntrStaticTranslate
> -BSPIntrInit(rc = 1)
> -OALInterruptInit(rc = 1)
> +OALTimerInit( 1, 17, 0 )
> +OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
> -OALIntrRequestSysIntr(sysIntr = 16)
> +OALPAtoVA(0x51000000, 0)
> -OALPAtoVA(va = 0xb1100000)
> +OEMInterruptEnable(16, 0x0, 0)
> +OALTranslateSysIntr(16)
> -OALTranslateSysIntr(rc = 1)
> +OALIntrEnableIrqs(1, 0x8201ef20)
> +BSPIntrEnableIrq(14)
> -BSPIntrEnableIrq(irq = 14)
> -OALIntrEnableIrqs(rc = 1)
> -OEMInterruptEnable(rc = 1)
> -OALTimerInit(rc = 1)
> +ConfigureGPIO
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALPAtoVA(0x4c000000, 0)
> -OALPAtoVA(va = 0xb0c00000)
> -ConfigureGPIO
> +InitDisplay
> +OALPAtoVA(0x56000000, 0)
> -OALPAtoVA(va = 0xb1600000)
> +OALPAtoVA(0x4d000000, 0)
> -OALPAtoVA(va = 0xb0d00000)
> -InitDisplay
> +OALKitlStart
> OALKitlStart Null
> -OALKitlStart
> -OEMInit
>
> <END>
>
> -OR-----------------------------------------------
> +OEMCacheRangeFlush(0x00000000, 0, 0x00000004)
> -OEMCacheRangeFlush
> Sp=ffffc7cc
> +OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
> -OEMCacheRangeFlush
> <END>
>
> ---------------------------------------------------
>
> Thanks.
> Regard.
>

Re: Halt after OEMInit(). in s3c2440 by desik

desik
Mon Jul 24 03:26:02 CDT 2006


It H/W Problem. not usable 48~64M DRAM Area.
I disabled this memory area. It work well.
thank you.

"Silver" wrote:

> Is your system waiting for KITL to connect?
>
> The system will execute Filesys.exe soon after exiting OEMInit, but my
> advice would be verify yout KITL connection first then change
> filesys.exe to a simple hello world program to see if you are getting
> there.
>
>
>
> desik wrote:
> > I am using samsung s3c2440 Arm cpu, wince 5.0
> > After executing OEMInit(), just halted.
> > how to debug this problem?
> >
> > i'm found similar this problem. i checked as follows. but they were not in
> > my case.
> > 1. Verify that your system tick timer function properly.
> > Does your OEMInterruptHandler implement SYSINTR_RESCHED interrupt?
> > 2. any uninitialized pointer has been used in your code.
> > 3. Wrong Memory Settings. oemaddrtab_cfg.inc, config.bib
> > 4. Interrupt.
> >
> > The debug message as follows.
> > ---------------------------------------------------
> > Windows CE Kernel for ARM (Thumb Enabled) Built on Jun 24 2004 at 18:25:00
> > ProcessorType=0920 Revision=0
> > sp_abt=ffff5000 sp_irq=ffff2800 sp_undef=ffffc800 OEMAddressTable = 8022c610
> > DCache: 8 sets, 64 ways, 32 line size, 16384 size
> > ICache: 8 sets, 64 ways, 32 line size, 16384 size
> > +OALInterruptInit
> > +OALIntrMapInit
> > -OALIntrMapInit
> > +OALPAtoVA(0x4a000000, 0)
> > -OALPAtoVA(va = 0xb0a00000)
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +BSPIntrInit
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALIntrStaticTranslate(17, 26)
> > -OALIntrStaticTranslate
> > -BSPIntrInit(rc = 1)
> > -OALInterruptInit(rc = 1)
> > +OALTimerInit( 1, 17, 0 )
> > +OALIntrRequestSysIntr(1, 0xffffc76c, 0x00000004)
> > -OALIntrRequestSysIntr(sysIntr = 16)
> > +OALPAtoVA(0x51000000, 0)
> > -OALPAtoVA(va = 0xb1100000)
> > +OEMInterruptEnable(16, 0x0, 0)
> > +OALTranslateSysIntr(16)
> > -OALTranslateSysIntr(rc = 1)
> > +OALIntrEnableIrqs(1, 0x8201ef20)
> > +BSPIntrEnableIrq(14)
> > -BSPIntrEnableIrq(irq = 14)
> > -OALIntrEnableIrqs(rc = 1)
> > -OEMInterruptEnable(rc = 1)
> > -OALTimerInit(rc = 1)
> > +ConfigureGPIO
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALPAtoVA(0x4c000000, 0)
> > -OALPAtoVA(va = 0xb0c00000)
> > -ConfigureGPIO
> > +InitDisplay
> > +OALPAtoVA(0x56000000, 0)
> > -OALPAtoVA(va = 0xb1600000)
> > +OALPAtoVA(0x4d000000, 0)
> > -OALPAtoVA(va = 0xb0d00000)
> > -InitDisplay
> > +OALKitlStart
> > OALKitlStart Null
> > -OALKitlStart
> > -OEMInit
> >
> > <END>
> >
> > -OR-----------------------------------------------
> > +OEMCacheRangeFlush(0x00000000, 0, 0x00000004)
> > -OEMCacheRangeFlush
> > Sp=ffffc7cc
> > +OEMCacheRangeFlush(0x00000000, 0, 0x00000001)
> > -OEMCacheRangeFlush
> > <END>
> >
> > ---------------------------------------------------
> >
> > Thanks.
> > Regard.
> >
>