From e50e3434709f1f37359eb3df25aded61fca76850 Mon Sep 17 00:00:00 2001 From: David Hendricks Date: Sat, 9 Feb 2013 14:58:45 -0800 Subject: [PATCH] armv7/exynos5250: place .id between .start and bootblock main This places the .id section toward the lower region of the coreboot image, before the bootblock. It's easier for humans to find by dumping the image and it also eliminates ID_SECTION_OFFSET which is currently the upper bound on our image size. Change-Id: I7d737b901dac659ddf9aa437cee5dc32f1080546 Signed-off-by: David Hendricks Reviewed-on: http://review.coreboot.org/2345 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich --- src/arch/armv7/Makefile.inc | 1 - src/arch/armv7/bootblock.lds | 1 + src/arch/armv7/lib/id.inc | 6 +++--- src/arch/armv7/lib/id.lds | 6 ------ src/cpu/samsung/exynos5250/Kconfig | 6 ------ 5 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 src/arch/armv7/lib/id.lds diff --git a/src/arch/armv7/Makefile.inc b/src/arch/armv7/Makefile.inc index 2c5d8c6c44..6d4a3644ff 100644 --- a/src/arch/armv7/Makefile.inc +++ b/src/arch/armv7/Makefile.inc @@ -202,7 +202,6 @@ $(obj)/coreboot.pre: $(objcbfs)/romstage_xip.elf $(obj)/coreboot.pre1 $(CBFSTOOL # Build the bootblock bootblock_lds = $(src)/arch/armv7/bootblock.lds -bootblock_lds += $(src)/arch/armv7/lib/id.lds bootblock_lds += $(chipset_bootblock_lds) bootblock_inc += $(src)/arch/armv7/bootblock.inc diff --git a/src/arch/armv7/bootblock.lds b/src/arch/armv7/bootblock.lds index f45e6c072d..48ba0ab628 100644 --- a/src/arch/armv7/bootblock.lds +++ b/src/arch/armv7/bootblock.lds @@ -32,6 +32,7 @@ SECTIONS _rom = .; *(.bl1); *(.start); + *(.id); *(.text); *(.text.*); *(.rom.text); diff --git a/src/arch/armv7/lib/id.inc b/src/arch/armv7/lib/id.inc index 4da7024233..ffe547d748 100644 --- a/src/arch/armv7/lib/id.inc +++ b/src/arch/armv7/lib/id.inc @@ -8,9 +8,9 @@ vendor: .asciz CONFIG_MAINBOARD_VENDOR part: .asciz CONFIG_MAINBOARD_PART_NUMBER -.long __id_end + CONFIG_ID_SECTION_OFFSET - ver /* Reverse offset to the vendor id */ -.long __id_end + CONFIG_ID_SECTION_OFFSET - vendor /* Reverse offset to the vendor id */ -.long __id_end + CONFIG_ID_SECTION_OFFSET - part /* Reverse offset to the part number */ +.long __id_end - ver /* Reverse offset to the vendor id */ +.long __id_end - vendor /* Reverse offset to the vendor id */ +.long __id_end - part /* Reverse offset to the part number */ .long CONFIG_ROM_SIZE /* Size of this romimage */ .globl __id_end diff --git a/src/arch/armv7/lib/id.lds b/src/arch/armv7/lib/id.lds deleted file mode 100644 index 9d5047967c..0000000000 --- a/src/arch/armv7/lib/id.lds +++ /dev/null @@ -1,6 +0,0 @@ -SECTIONS { - . = CONFIG_ID_SECTION_BASE; - .id (.): { - *(.id) - } -} diff --git a/src/cpu/samsung/exynos5250/Kconfig b/src/cpu/samsung/exynos5250/Kconfig index 357817eb71..f62195a3b0 100644 --- a/src/cpu/samsung/exynos5250/Kconfig +++ b/src/cpu/samsung/exynos5250/Kconfig @@ -22,8 +22,6 @@ config BL1_SIZE_KB # # 0x0202_0000: vendor-provided BL1 # 0x0202_3400: bootblock, assume up to 32KB in size -# 0x0202_7000: ID section, assume 2KB in size. This will be -# within the bootblock section. # 0x0203_0000: romstage, assume up to 128KB in size. # 0x0207_7f00: stack pointer @@ -40,10 +38,6 @@ config BOOTBLOCK_BASE hex default 0x02023400 -config ID_SECTION_BASE - hex - default 0x02027e00 - config ROMSTAGE_BASE hex default 0x02030000