Re: need help physical memory eboot

From: Peter (arockiarajeshpeter_at_harita_dot_com)
Date: 12/29/04


Date: Wed, 29 Dec 2004 03:11:03 -0800

Thanks.

I couldn't get the kernelstart symbol in bootloader. I guess this
kernelstart is a Kernel Function and it's available only for nk.bin.

How i can IMPORT KernelStart() in my bootloader?

I tried
IMPORT kernelStart -- but getting eror
e:\wince420\platform\ts90_ether_serial\eboot\fwp2.obj() : error LNK2001:
unresolved external symbol KernelStart
e:\wince420\platform\ts90_ether_serial\target\armv4i\debug\eboot.exe() :
error LNK1120: 1 unresolved externals

"voidcoder" wrote:

> Ok, then it should be something around addressing.
> Are You sure that image is loaded at right RAM
> address (pls verify with Your config.bib). Also
> pls verify that You jumping to the right address of
> KernelStart. For example (just to chek it)
> You can try to calculate address manually.
>
> eg.
>
> ; Jump to KernelStart
>
> ADD r0, pc, #OEMAddressTable-(.+8)
> LDR r1, =KernelStart
> LDR r2, =0x80000000 ; RAM base virtual
> SUB r1, r1, r2
> LDR r2, =0xA0000000 ; RAM base physical
> ADD r1, r1, r2
>
> MOV lr, r1
>
> IF Interworking :LOR: Thumbing
> bx lr
> ELSE
> mov pc, lr
> ENDIF
>
> Pls try it.
>
>
>
> "Peter" <arockiarajeshpeter_at_harita_dot_com> wrote in message
> news:E6EFE5E4-5273-4F94-A8A1-CABDCB8EBFF6@microsoft.com...
> > Thanks.
> > In my Virtual Eboot itself i am not passing OEMaddressTable address to
> > kernelstart. But, jumping and woking fine. really, i couldn't find the
> > reason, (I'm using Lubbock code)
> >
> > Even, i tired to pass OEMAddressTable address in r0 register before moving
> > the KernelEntry address in to my program counter...not getting called.
> >
> > Peter
> >
> > "voidcoder" wrote:
> >
> > > Probably you forgot to pass pointer to OEMAddressTable
> > > while calling KernelStart. Please chek it.
> > >
> > >
> > > "Peter" <arockiarajeshpeter_at_harita_dot_com> wrote in message
> > > news:014301A9-8565-4083-9862-F54718C2231F@microsoft.com...
> > > > Hi,
> > > >
> > > > I am using PXA255, Lubbock BSP, WinCE 4.2.
> > > >
> > > > I'm able to download the OS image using my Physical memory Eboot.
> > > > But, eboot is not jumping to the kernel start. The same code is
> working
> > > fine
> > > > for Jumping to OS kernel using Virtaul memory.
> > > >
> > > > I just modified the respective address from virtual to physical
> memory.
> > > > Then, I tested i could reach the Launch () function and from there i
> am
> > > not
> > > > able to jump to the KernelStart().
> > > >
> > > > Is any other thing i need to take care while convertig a Virtual Eboot
> o
> > > > Physical Eboot?
> > > >
> > > > Please help me out.
> > > >
> > > > Thanks & Regards,
> > > > Peter
> > >
> > >
> > >
>
>
>



Relevant Pages

  • Re: Third party loader & BSP development
    ... > Yes it is but the KernelStart it calls is not. ... Bootloader calls main, and OAL calls ... The matter is that I have looked at BSP for SMDK2410, ... > truly a shame that hardware engineers can't be bothered with creating the ...
    (microsoft.public.windowsce.platbuilder)
  • Re: ARM Boot Loader
    ... When you call the KernelStart, should the memory have been already mapped? ... In the boot loader startup code, I can write characters to the RS232 ... However, since I have no ethernetport, that bootloader is not very ... > from the serial port before you call KernelStart. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: ARM Boot Loader
    ... When you call the KernelStart, should the memory have been already mapped? ... In the boot loader startup code, I can write characters to the RS232 ... However, since I have no ethernetport, that bootloader is not very ... > from the serial port before you call KernelStart. ...
    (microsoft.public.windowsce.embedded)
  • KernelStart
    ... it hangs in KernelStart ... mov r1, #SVC_MODE ... Supervisor Mode w/IRQs enabled ...
    (microsoft.public.windowsce.platbuilder)