[coreboot] When should we retire newconfig?

Patrick Georgi patrick at georgi-clan.de
Sat Jan 9 16:17:00 CET 2010


Am 09.01.2010 13:29, schrieb joe at settoplinux.org:
> Yes you can add Thomson IP1000 and RCA RM4100 to the list. They build fine with
> Kconfig.
>   
We automatically test builds on commit. The "Kconfig report" mails on
the list show that currently all boards build properly.
The ones Myles listed are those that boot properly (if I understand him
correctly)
> In fact they do not build the old way anymore, only with Kconfig.
>   
On our testbuild box, they still build: See
http://qa.coreboot.org/log_buildbrd.php?revision=5005&device=ip1000&vendor=thomson&num=2,
for example.
> ok but what needs to be done to use tinybootblock?
>   
Tinybootblock is only a necessary component for fam10 boards (as their
romstage doesn't fit in 64kb), so while I propose to move everything
over to tinybootblock eventually, we don't have to wait for that before
we phase out newconfig.

With that said, what needs to be done for tinybootblock:
1. Figure out if the chipset requires some sequence to map all ROM ("rom
enable")
2. If no, skip to 5
3. If yes, figure out how rom mapping can be enabled (it's usually
somewhere in the code already)
4. Implement it like in southbridge/amd/amd8111:
4a. Add a new file (I recommend
"southbridge/$vendor/$device/bootblock.c") with a static void
bootblock_southbridge_init(void) function that enables rom mapping
4b. Set BOOTBLOCK_SOUTHBRIDGE_INIT to point to the file
4c. If necessary do the same for the northbridge (see
northbridge/amd/amdfam10 as an example) - shouldn't be necessary except
for k8/fam10
5. Enable TINY_BOOTBLOCK in your board's Kconfig
6. Remove a couple of crt0-y and ldscript-y entries in your board's
Makefile.inc: entry16, reset16, id.inc, failover
7. Add entry32 to crt0-y and ldscript-y (it's usually not added to
ldscript-y yet)

Steps 6 and 7 aren't necessary if your board is using
Makefile.romccboard.inc.
Steps 3 and 4 are per southbridge work - once a southbridge is
supported, moving a board to tinybootblock support is relatively easy.

In theory, that's it (unless I forgot something)


Patrick




More information about the coreboot mailing list