Option Parameters for Linuxbios.
steven james
pyro at linuxlabs.com
Sat Jan 11 21:53:00 CET 2003
Greetings,
The terms should at least be documented. They are spread all over the
place, so might take some doing to change.
XIP = eXecute In Place.
As for the division of stages, generally, the assembly is serial setup,
initial CPU setup, RAM setup, and decompress the C portion (plus a short
startup in asm to get the stack ready) into ram.
In a number of cases (I'm guilty here), Config files still have unneeded
or useless options either due to legacy or from using older configs as a
template for new boards.
G'day,
sjames
On Sun, 12 Jan 2003, Peter Stuge wrote:
> Hi, I've been confused by these commands and options too. Below are some
> suggested namechanges followed by some reasoning about documentation in
> general.
>
>
> On Sat, Jan 11, 2003 at 12:48:06PM -0500, steven james wrote:
> > > biosbase 0xffff0000
> >
> > The BIOS image will begin at the biosbase address in the CPU's memory
> > space
>
> imagephysaddr
> or
> stage1physaddr
>
>
> > > rambase 0x00000800
> > Once RAM is set up, the C portion of LinuxBIOS will be uncompressed and
> > loaded to rambase in system memory.
>
> cportionramaddr
> or
> stage2ramaddr
>
>
> > > option XIP_ROM_BASE=0xffff0000
> >
> > same as biosbase
>
> XIP_IMAGE_PHYS_ADDR
>
> Why is there both a command and an option for this? And what is XIP?
>
>
> > > option XIP_ROM_SIZE=0x10000
> >
> > The rom size for LinuxBIOS is this size (a 64K blockmany cases)
>
> XIP_IMAGE_SIZE # if this accounts for the payload
> or
> XIP_LINUXBIOS_SIZE # if not
>
> Reading some Config files this doesn't seem to be the whole story, caching
> is mentioned. What's up?
>
>
> > > option STACK_SIZE=0x2000
> >
> > This is the size of RAM allocated for the stack used by the C code
>
> C_STACK_SIZE # for cportionramaddr
> or
> STAGE2_STACK_SIZE # for stage2ramaddr
>
> Already pretty good the way it is but adding the context should help.
>
>
> > > option ZKERNEL_START=0xfff40000
> >
> > This is where the payload (such as etherboot) will be located in the
> > memory space (as part of the flash).
>
> PAYLOAD_PHYS_ADDR
>
> Does LinuxBIOS require this to be aligned in any way?
>
>
> > > option ZKERNEL_MASK=0x3ed
> >
> > Near as I can tell, this is just a legacy now.
>
> Great, then it can be removed. :) What has it been used for?
>
>
> I'd be happy to make these changes.
>
> What about general documentation, e.g. regarding current LinuxBIOS structure?
> I know I've read about the different parts of LinuxBIOS somewhere but it
> might have been here on the mailing list. I'm thinking of the stage1/stage2
> names I used above, is it a good idea to establish a stage 1 and a stage 2
> (or similar) of LinuxBIOS or should it just continue to be "in assembly"
> and "in C" ?
>
> Also, I would very much like a complete documenatation of the Config files,
> I'm thinking about doing something along the lines of a Capabilities or
> Options file that specifies all possible (used) options for that particular
> directory, along with sane default values where possible. It might only
> apply to mainboards but would be useful for learning the structure, when
> porting to new mainboards and for the web Config creator. Thoughts?
>
>
> //Peter
>
--
-------------------------steven james, director of research, linux labs
... ........ ..... .... 230 peachtree st nw ste 701
the original linux labs atlanta.ga.us 30303
-since 1995 http://www.linuxlabs.com
office 404.577.7747 fax 404.577.7743
-----------------------------------------------------------------------
More information about the coreboot
mailing list