Preliminary doubts

SONE Takeshi ts1 at tsn.or.jp
Sun Aug 10 15:15:00 CEST 2003


Although luck of documentation is the problem the project faces,
the source and the list archive are always open to people.
If you investigate them yourself first, then ask,
you will get more helpful response.

On Sat, Aug 09, 2003 at 11:33:48PM -0700, John Praveen wrote:
>                  What part of the program in Linuxbios
> will bring my linux kernel image from Flash into
> SDRAM?

freebios/src/lib/elfboot.c

There is also a old linux-only loader, linuxbiosmain.
"grep -r" is your friend.

>                  Is any options or something to be
> included in the configuration file to say to boot from
> Flash memory?

USE_GENERIC_ROM 

>                  In my embedded device the Flash
> memory is mapped to physical address 00000h to
> 3FFFFFh. So at what location should i place the
> linuxbios romimage and linux kernel image in my Flash
> memory? 

I have my doubt here.
AFAIK, every x86 system has its ROM at the top of
address space (eg. if ROM is 256K, it's at 0xfffc0000 = 4G-256K),
since x86 starts execution at last 16 byte of address space (0xfffffff0).

Does your board have another ROM at here?
Or the flash is shadowed/aliased to here?

Also, if the bottom 4MB is ROM and it can't be remapped,
you will have to modify the kernel as well as LinuxBIOS.
Convenional x86 systems has 640KB of RAM
at bottom (from address 0), then 384KB of hole for legacy BIOS and I/O,
then rest of RAM from address 1M.
x86 port of Linux and LinuxBIOS is written for such system.

>                 Where shall my application program be
> placed in Flash? I hope I should have a filesystem. Is
> the MTD meant for the filesystem?

I'm not sure but if your flash will be used for BIOS, you most certainly 
have to use it as a raw storage.
You can put the LinuxBIOS, Linux kernel, and initrd there.
Your application code will be in the initrd.

--
Takeshi



More information about the coreboot mailing list