Option Parameters for Linuxbios.

steven james pyro at linuxlabs.com
Sat Jan 11 12:36:01 CET 2003


Greetings,

reply inline below:


On 11 Jan 2003, sivakumar wrote:

> Hi all,
> 
> Can any one help me in understanding the following parameter used for
> the configuration of the LinuxBIOS.
> 
> biosbase 0xffff0000

The BIOS image will begin at the biosbase address in the CPU's memory
space

> rambase 0x00000800
Once RAM is set up, the C portion of LinuxBIOS will be uncompressed and
loaded to rambase in system memory.

> option XIP_ROM_BASE=0xffff0000

same as biosbase

> option XIP_ROM_SIZE=0x10000

The rom size for LinuxBIOS is this size (a 64K blockmany cases)

> option STACK_SIZE=0x2000

This is the size of RAM allocated for the stack used by the C code

> option ZKERNEL_START=0xfff40000

This is where the payload (such as etherboot) will be located in the
memory space (as part of the flash).

> option ZKERNEL_MASK=0x3ed

Near as I can tell, this is just a legacy now.
> 
> 
> 
> Also I have one more query,
> When executing the linuxbios, it is executing the instrcution twice
> (i.e., I am getting output twice). I have attached the serial console
> output below. How to get rid of this?
> 
> LinuxBIOS-1.0.0 Sat Jan 11 18:18:32 IST 2003 Revision - 4
> (four)starting...
> Ram1
> Ram2
> Ram3
> Ram Enable 1
> Ram Enable 2
> Ram Enable 3
> Ram Enable 4
> 000001d0Ram Enable 5
> 
> Ram Enable 6
> 
> Content of CAPPTR
> 04Content of BCC
> 06Ram4
> Ram5
> Ram6
> Copying LinuxBIOS to ram.
> 00000800ffff0f80
>  ecx value during image copy
> 00000000Jumping to LinuxBIOS.
> Calling hardwaremain ...
> 
> 
> LinuxBIOS-1.0.0 Sat Jan 11 18:18:32 IST 2003 Revision - 4
> (four)starting...
> Ram1
> Ram2
> Ram3
> Ram Enable 1
> Ram Enable 2
> Ram Enable 3
> Ram Enable 4
> 000001d0Ram Enable 5
> 
> Ram Enable 6
> 
> Content of CAPPTR
> 04Content of BCC
> 06Ram4
> Ram5
> Ram6
> Copying LinuxBIOS to ram.
> 00000800ffff0f80
>  ecx value during image copy
> 00000000Jumping to LinuxBIOS.
> Calling hardwaremain ...
> 
> Thanks,
> Siva
> 
> 

My first guess is that the initial RAM setup is wrong and when it jumps
into ram the CPU triple faults (or a watchdog timer expires) and so
resets. The second time around, it succeeds and so all goes through.

Perhaps something being set up in the wrong order? Something needs a delay
to settle or complete in hardware? Just lucky?

G'day,
sjames


-- 
-------------------------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