This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Newbie STPC question


ntjunkie@boltblue.net writes:

> When the bootloader code copies and jumps to the secondary bootloader, it 
> leaves the system in the following state:
> 
> Protected-mode:
> 
> CS: set to 8 (2nd GDT entry) with access to the whole 4GB range (base=0, 
> limit=4GB, 32-bit code) 
> DS, ES, SS: set to 16 (3rd GDT entry) with access to the whole 4GB range 
> (base=0, limit=4GB, 32-bit data) 
> ESP: set to the top of 640KB (ESP=000A0000h)
> 
> From this setup, can I just jump to the beginning of my eCos build?

Not to any existing configuration. The only configurations supported
at present either self-boot from a floppy or expect to be loaded by
RedBoot above the 1Mb boundary. To support a different booting
mechanism you need to create a new startup type and add the necessary
support code.

Given that this is not a standard PC, you should really add a whole
new platform HAL that defines the bootstrap mechanism and any extra
devices.


> I notice that the romboot.S in (ecos/packages/hal/i386/pc/current/src) sets up 
> some specific selectors. Are these mandatory for eCos?
>

These selectors are just what are necessary to allow the CPU to jump
to the start of the ROM and engineer a switch to protected mode. After
that the code loads a GDT pointer and re-initializes the segment
registers. There's nothing standard or mandatory about them.

The ROM bootstrap option is not currently supported. It was a work in
progress that was never completed. However I believe that some users
have managed to get it to work and are using it. Perhaps they will be
able to help you here.


-- 
Nick Garnett - eCos Kernel Architect
http://www.eCosCentric.com/


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]