[LinuxBIOS] Question about Config file
corey_osgood at verizon.net
Wed Mar 21 10:03:59 CET 2007
> I use the fallback and the normal mode, if my chip has a size 256*1024,
> what size of FALLBACK_SIZE and ROM_IMAGE_SIZE I can choose, I have some
> difficulty to define the role of the ROM_IMAGE_SIZE, the ROM_SIZE define
> the size of the chip, the FALLBACK_SIZE define the size of the fallback
> mode, but the ROM_IMAGE_SIZE ??? I don't understand the goal of
> ROM_IMAGE_SIZE, if you have an better explaination that on the Web site, I
> would appreciate much.
Just to make sure first, after changing anything in the config'lb or
options.lb files, you have to re-run ./buildtarget to recreate the make
files with the new values.
If I understand it right, this is pretty much how it works, and some
reasonable values for a 256k flash part:
ROM_IMAGE_SIZE determines the amount of space for lb's fallback image to
take up, 64kb (64*1024, or 0x10000). The minimum size of this is
dependent on the code, I don't know how you'd find it out other than
trial-and-error, but there must be a way.
FALLBACK_SIZE determines the space for the fallback lb image + the
payload for the "fallback.rom", 128kb (128*1024, or 0x20000). This means
64kb for lb+64kb for the payload. This at minimum needs to be
(obviously) the size of your built code + the size of your payload.
Also, make sure your Options.lb contains "default HAVE_FALLBACK_BOOT=1".
ROM_IMAGE_SIZE again determines the size for the normal image's code, 64kb
ROM_SIZE determines the size of the whole chip, 256kb. LB then computes
ROM_SIZE - FALLBACK_SIZE to get the size for the "normal.rom", which is
the normal lb code + the payload again.
At the end, lb merges the fallback.rom(128k) and normal.rom (128k) to
give you linuxbios.rom (256k).
There are some other options, like PAYLOAD_SIZE and ROM_SECTION_SIZE,
these should be computed by your src/../Config.lb based on the other
values. If you still have problems, grab the config.lb's and options.lb
from the asus p2b and use the values in those, they build a 256k flash
part for me just fine.
More information about the coreboot