From 10bd772db854c62528c67b9d0e5e329c525d83f9 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Tue, 16 Jul 2013 11:03:27 -0700 Subject: [PATCH] Enable CAR migration on Exynos 5250 and 5420 Despite calling romstage memory CAR in this case, the variables actually do live in SRAM on the Exynos CPUs. However, in order to share as much generic code as possible, we're using the same infrastructure here. Change-Id: I85173c37099a25f3e55980e88120401826cdf29c Signed-off-by: Stefan Reinauer Reviewed-on: https://gerrit.chromium.org/gerrit/62188 Reviewed-by: David Hendricks Commit-Queue: Stefan Reinauer Tested-by: Stefan Reinauer Reviewed-on: http://review.coreboot.org/4394 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi --- src/arch/armv7/romstage.ld | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/arch/armv7/romstage.ld b/src/arch/armv7/romstage.ld index 0555fc45ff..146ba77b36 100644 --- a/src/arch/armv7/romstage.ld +++ b/src/arch/armv7/romstage.ld @@ -52,10 +52,28 @@ SECTIONS *(.rodata); *(.machine_param); *(.data); - . = ALIGN(8); + . = ALIGN(16); + _car_migrate_start = .; + *(.car.migrate); + _car_migrate_end = .; + . = ALIGN(16); _erom = .; } + .car.data . (NOLOAD) : { + _car_data_start = .; + *(.car.global_data); + /* The cbmem_console section comes last to take advantage of + * a zero-sized array to hold the memconsole contents that + * grows to a bound of CONFIG_CONSOLE_CAR_BUFFER_SIZE. However, + * collisions within the cache-as-ram region cannot be + * statically checked because the cache-as-ram region usage is + * cpu/chipset dependent. */ + *(.car.cbmem_console); + _car_data_end = .; + } + + __image_copy_end = .; /* bss does not contain data, it is just a space that should be zero