Change the CBFS build process to use coreboot.rom
authorPatrick Georgi <patrick.georgi@coresystems.de>
Sat, 6 Jun 2009 07:19:53 +0000 (07:19 +0000)
committerPatrick Georgi <patrick.georgi@coresystems.de>
Sat, 6 Jun 2009 07:19:53 +0000 (07:19 +0000)
instead of coreboot.strip. That fixes the normal
image because the calculations for its offset in
the ROM match reality again.

This requires changes in CBFS configurations to
minimize the bootblock size. These are also done
for CBFS boards.

Other than this a couple of minor fixes are in this
patch:
- make asus/m2v-mx_se build with abuild with a
  crosscompiler
- move CONFIG_CBFS for hp/dl145_g3 to Options.lb
  as it's done everywhere else
- change the default config of abuild to not
  provide ROM_IMAGE_SIZE values for the images
  in a CBFS configuration
- change abuild's crosscompile autodetection to
  not try to use "i386-elf-i386-elf-gcc" (which
  is bogus)

Except for the latter two abuild changes (both
in util/abuild/abuild), they're available as
patch set on the mailing list in a mail from
2009-06-05 titled
[PATCH]es to get normal image to work again with CBFS

The changes in util/abuild/abuild are trivial and
abuild tested.

As discussed on the list,
targets/hp/dl145_g3/Config-abuild.lb is
deleted, now that Config.lb works again.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4344 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

21 files changed:
src/config/failovercalculation.lb
src/config/nofailovercalculation.lb
src/config/nofailovercalculation128.lb
src/mainboard/emulation/qemu-x86/Config.lb
src/mainboard/emulation/qemu-x86/Options.lb
src/mainboard/hp/dl145_g3/Options.lb
src/mainboard/kontron/986lcd-m/Options.lb
src/mainboard/via/vt8454c/Options.lb
targets/asus/m2v-mx_se/Config-abuild.lb
targets/emulation/qemu-x86/Config-abuild.lb
targets/emulation/qemu-x86/Config-lab.lb
targets/emulation/qemu-x86/Config.OLPC.lb
targets/emulation/qemu-x86/Config.lb
targets/hp/dl145_g3/Config-abuild.lb [deleted file]
targets/hp/dl145_g3/Config.lb
targets/kontron/986lcd-m/Config-abuild.lb
targets/kontron/986lcd-m/Config.lb
targets/via/vt8454c/Config-abuild.lb
targets/via/vt8454c/Config.lb
util/abuild/abuild
util/newconfig/config.g

index 9206e99cdd6654a27d9bf0672915c08f90d39591..909812b7e534fdf2c744e4840312a2bd56e35bba 100644 (file)
@@ -10,8 +10,13 @@ else
        default ROM_SECTION_SIZE   = FALLBACK_SIZE
        default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
     else
-       default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
-       default ROM_SECTION_OFFSET = 0
+       if CONFIG_CBFS
+               default ROM_SECTION_SIZE   = FALLBACK_SIZE
+               default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
+       else
+               default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
+               default ROM_SECTION_OFFSET = 0
+       end
     end
 end
 
index 2705326499ce05de4f831f54a529420a9d0924f3..96bce17a756ade9b94827a9e32c9f950e3afd288 100644 (file)
@@ -6,8 +6,13 @@ if USE_FALLBACK_IMAGE
        default ROM_SECTION_SIZE   = FALLBACK_SIZE
        default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
 else
-       default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
-       default ROM_SECTION_OFFSET = 0
+       if CONFIG_CBFS
+               default ROM_SECTION_SIZE   = FALLBACK_SIZE
+               default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE )
+       else
+               default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
+               default ROM_SECTION_OFFSET = 0
+       end
 end
 
 ##
index b000e78864dedb9f3a77dc2ddd43c9df9a11c7e7..9b0d7de5499182dd44739dbe194fd7946b8ff636 100644 (file)
@@ -6,8 +6,13 @@ if USE_FALLBACK_IMAGE
        default ROM_SECTION_SIZE   = FALLBACK_SIZE
        default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
 else
-       default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
-       default ROM_SECTION_OFFSET = 0
+       if CONFIG_CBFS
+               default ROM_SECTION_SIZE   = FALLBACK_SIZE
+               default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE )
+       else
+               default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
+               default ROM_SECTION_OFFSET = 0
+       end
 end
 
 ##
index 160bfa6ac550f15875c0538451e6592f3ca3ec10..9af9df3c5ceb42e1bbed623aaba149f97a5c1363 100644 (file)
@@ -3,14 +3,14 @@
 ## (coreboot plus bootloader) will live in the boot rom chip.
 ##
 default ROM_SIZE = 256 * 1024 
-default ROM_SECTION_SIZE   = ROM_SIZE
+default ROM_SECTION_SIZE   = ROM_IMAGE_SIZE
 default ROM_SECTION_OFFSET = 0
 
 ##
 ## Compute the start location and size size of
 ## The coreboot bootloader.
 ##
-default PAYLOAD_SIZE            = ( ROM_SECTION_SIZE - ROM_IMAGE_SIZE )
+default PAYLOAD_SIZE            = ( ROM_SIZE - ROM_IMAGE_SIZE )
 default CONFIG_ROM_PAYLOAD_START = (0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1)
 
 ##
index 0b8ce4b59fdb23da8ffe57dfce549c71dadf169b..be18eb0b498f2166f79121869b71fe45cea6de55 100644 (file)
@@ -100,7 +100,7 @@ default CONFIG_PCI_OPTION_ROM_RUN_REALMODE=1
 
 ## ROM_IMAGE_SIZE is the amount of space to allow coreboot to occupy.
 default ROM_IMAGE_SIZE = 65536
-default FALLBACK_SIZE = 131072
+default FALLBACK_SIZE = ROM_IMAGE_SIZE
 
 ##
 ## Use a small 8K stack
index 5fda0e5f8b10920ab3c0d096d04a38d7fd0a0c08..a66c599901dc9a59fa21cbb0feb3f8d712fbd806 100644 (file)
@@ -121,9 +121,7 @@ default ROM_SIZE=524288
 ##
 ## FALLBACK_SIZE is the amount of the ROM the complete fallback image will use
 ##
-#default FALLBACK_SIZE=131072
-#256K
-default FALLBACK_SIZE=0x40000
+default FALLBACK_SIZE=ROM_IMAGE_SIZE
 
 #more 1M for pgtbl
 default CONFIG_LB_MEM_TOPK=2048
@@ -329,5 +327,9 @@ default  MAXIMUM_CONSOLE_LOGLEVEL=8
 ## Select power on after power fail setting
 default MAINBOARD_POWER_ON_AFTER_POWER_FAIL="MAINBOARD_POWER_ON"
 
+##
+## CBFS
+default CONFIG_CBFS=1
+
 ### End Options.lb
 end
index 30c66862c8fc867fa931a30ccb11d4af74c96b9b..f4ab0dfd7719d7068fe766283dfb3ea181b36a90 100644 (file)
@@ -249,7 +249,7 @@ default HEAP_SIZE=0x8000
 ### Compute the location and size of where this firmware image
 ### (coreboot plus bootloader) will live in the boot rom chip.
 ###
-default FALLBACK_SIZE=131072
+default FALLBACK_SIZE=ROM_IMAGE_SIZE
 
 ##
 ## coreboot C code runs at this location in RAM
index d9cf995cdf8a33816a1987be339834fee9df3265..3f1bdb768bc7eb011925e97107527d1de9697768 100644 (file)
@@ -158,7 +158,7 @@ default CONFIG_IOAPIC=1
 
 ## ROM_IMAGE_SIZE is the amount of space to allow linuxBIOS to occupy.
 default ROM_IMAGE_SIZE = 65536
-default FALLBACK_SIZE = 131072
+default FALLBACK_SIZE = ROM_IMAGE_SIZE
 
 ##
 ## Use a small 8K stack
index a396ae9843ec4d82cd3a4fc5ae465976f5f9563e..eaa917d10904b803ff003e35b4a946bb361fe7a2 100644 (file)
 target asus_m2v-mx_se
 mainboard asus/m2v-mx_se
 
+option CC="CROSSCC"
+option CROSS_COMPILE="CROSS_PREFIX"
+option HOSTCC="CROSS_HOSTCC"
+
 ## ROM_SIZE is the total number of bytes allocated for coreboot use
 ## (normal AND fallback images and payloads).
 
index ce16c7cccf675222587151fa9fe7a65fd8c95524..bcfc9c5aade7c2c39cb76bb6b8490b04319b8078 100644 (file)
@@ -8,11 +8,8 @@ option HOSTCC="CROSS_HOSTCC"
 __COMPRESSION__
 __LOGLEVEL__
 
-option ROM_SIZE=256*1024
-
 romimage "fallback" 
        option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION=".0"
        payload __PAYLOAD__
 end
index 7dff303c10acb1b3b552f8a658b639d10cc70b6f..970b95295de4d4046be974d96b8d571a96562937 100644 (file)
@@ -13,7 +13,6 @@ option HAVE_PIRQ_TABLE=1
 option IRQ_SLOT_COUNT=6
 
 romimage "image" 
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION="-LAB"
        payload ../payload.elf.lzma
 end
index de7f0ee587e80417e5831f0acf2da51c371900e3..93c4fb3557c73bf1602bc46bd7697069155f26d6 100644 (file)
@@ -13,7 +13,6 @@ option HAVE_PIRQ_TABLE=1
 option IRQ_SLOT_COUNT=6
 
 romimage "image" 
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION="-OpenBIOS"
        payload /tmp/olpcpayload.elf
 end
index 308371305fa26d63a87820a0f3469f27ae503757..03527483d0611ac1e661829b819b0a5d11c78761 100644 (file)
@@ -11,7 +11,6 @@ option HAVE_PIRQ_TABLE=1
 option IRQ_SLOT_COUNT=6
 
 romimage "normal" 
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION="-GRUB2"
 #      payload /home/stepan/core.img
        payload ../payload.elf
diff --git a/targets/hp/dl145_g3/Config-abuild.lb b/targets/hp/dl145_g3/Config-abuild.lb
deleted file mode 100644 (file)
index 95639ec..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# This will make a target directory of ./VENDOR_MAINBOARD
-
-target VENDOR_MAINBOARD
-mainboard VENDOR/MAINBOARD
-
-option CC="CROSSCC"
-option CROSS_COMPILE="CROSS_PREFIX"
-option HOSTCC="CROSS_HOSTCC"
-
-__COMPRESSION__
-__LOGLEVEL__
-
-option ROM_SIZE=1024*(1024-32)
-option FALLBACK_SIZE=1024*512
-
-option CONFIG_CBFS = 1
-
-romimage "fallback" 
-       option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x20000
-       option XIP_ROM_SIZE=0x20000
-       option COREBOOT_EXTRA_VERSION=".0-fallback"
-       payload __PAYLOAD__
-end
-
-buildrom ./coreboot.rom ROM_SIZE "fallback"
-
index 1ca40cb666b7cde42f4292de92a793536e49cc01..47aae1b225800bf42e44894f45651401426ef4cf 100644 (file)
@@ -25,11 +25,9 @@ target dl145_g3
 mainboard hp/dl145_g3
 
 option ROM_SIZE= 1024*1024
-option CONFIG_CBFS = 1
 
 romimage "fallback"
        option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x20000
        option XIP_ROM_SIZE=0x20000
        option COREBOOT_EXTRA_VERSION="$(shell cat ../../VERSION)_Fallback"
        payload ./bios.bin.elf
index 6924d877c05bf44f30ab7edab574a51d1829974b..c5bb2c0d283ef652da4028b7d2254fdee9091bd0 100644 (file)
@@ -11,18 +11,15 @@ __COMPRESSION__
 __LOGLEVEL__
 
 option ROM_SIZE=1024*1024
-option FALLBACK_SIZE=1024*64
 
 romimage "normal"
        option USE_FALLBACK_IMAGE=0
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION=".0-normal"
        payload __PAYLOAD__
 end
 
 romimage "fallback" 
        option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x10000
        option COREBOOT_EXTRA_VERSION=".0-fallback"
        payload __PAYLOAD__
 end
index 56c8656e39030f8e0588efa95aa540f9c549d53e..2974fd8213d568fb24ee5eaa48cc239301645499 100644 (file)
@@ -5,20 +5,8 @@ mainboard kontron/986lcd-m
 ## (normal AND fallback images and payloads).
 option ROM_SIZE = 1024 * 1024
 
-# Use this line instead if you want to use onboard VGA:
-# option ROM_SIZE = (1024 * 1024) - (64 * 1024)
-
-## ROM_IMAGE_SIZE is the maximum number of bytes allowed for a coreboot image,
-## not including any payload.
-option ROM_IMAGE_SIZE = 128 * 1024
-
-## FALLBACK_SIZE is the amount of the ROM the complete fallback image 
-## (including payload) will use.
-option FALLBACK_SIZE = ROM_SIZE
-
 romimage "fallback"
        option USE_FALLBACK_IMAGE = 1
-       option ROM_IMAGE_SIZE = 144 * 1024
        payload ../payload.elf
 end
 
index d208e7479ddd60642f31246e9f0109506fce7a14..a6c5ef15533a81b7fba18241b447d864c7a061ef 100644 (file)
@@ -29,14 +29,12 @@ option CROSS_COMPILE="CROSS_PREFIX"
 option HOSTCC="CROSS_HOSTCC"
 
 option ROM_SIZE=512*1024
-option FALLBACK_SIZE=512*1024
 
 __COMPRESSION__
 __LOGLEVEL__
 
 romimage "fallback" 
        option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x15000
        option COREBOOT_EXTRA_VERSION=".0-fallback"
        payload __PAYLOAD__
 end
index a75c1e3b0a527c43f6d3f3f59bd2e0a216efb9df..b98352b8d30e38bae9d51f72a08f44184415993b 100644 (file)
@@ -30,14 +30,12 @@ option ROM_SIZE=(512-64)*1024
 
 romimage "normal"
        option USE_FALLBACK_IMAGE=0
-       option ROM_IMAGE_SIZE=0x14000
        option COREBOOT_EXTRA_VERSION=".0-normal"
        payload $(HOME)/payload.elf
 end
 
 romimage "fallback" 
        option USE_FALLBACK_IMAGE=1
-       option ROM_IMAGE_SIZE=0x14000
        option COREBOOT_EXTRA_VERSION=".0-fallback"
        payload $(HOME)/payload.elf
 end
index 5f6120faa8c62db95bb545fee7a213ae28f7b158..47decf61eb7e28c5f3a544975d86913291447868 100755 (executable)
@@ -176,14 +176,20 @@ EOF
                        cat <<EOF
 romimage "normal"
        option USE_FALLBACK_IMAGE=0
+if CONFIG_CBFS
+else
        option ROM_IMAGE_SIZE=0x17000
+end
        option COREBOOT_EXTRA_VERSION=".0-normal"
        payload __PAYLOAD__
 end
 
 romimage "fallback" 
        option USE_FALLBACK_IMAGE=1
+if CONFIG_CBFS
+else
        option ROM_IMAGE_SIZE=0x17000
+end
        option COREBOOT_EXTRA_VERSION=".0-fallback"
        payload __PAYLOAD__
 end
@@ -375,6 +381,7 @@ function build_target
                        CC="$CC -Wa,--divide"
                fi
                CROSS_COMPILE="$TARCH-elf-"
+               CC=gcc
                echo using $CROSS_COMPILE$CC
                found_crosscompiler=true
        fi
index 2bd4ca6c4bc1461330f11697c357d678ec5c9885..dd14f95e0cdb59a35dd8ee76109227377910942c 100644 (file)
@@ -2293,7 +2293,7 @@ def writemakefile(path):
                # build the bootblock here.
                file.write("\n\tcat")
                for j in i.roms:
-                       file.write(" %s/coreboot.strip " % j)
+                       file.write(" %s/coreboot.rom " % j)
                file.write("> %s.bootblock\n\n" %i.name)
                file.write("\t./cbfstool %s create %s %s %s.bootblock\n"
                           %(i.name, romsize, bootblocksize, i.name))