aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Kconfig15
-rw-r--r--src/arch/x86/boot/cbmem.c2
-rw-r--r--src/northbridge/amd/agesa/Kconfig1
-rw-r--r--src/northbridge/amd/amdfam10/Kconfig1
-rw-r--r--src/northbridge/amd/amdk8/Kconfig1
-rw-r--r--src/northbridge/amd/gx2/Kconfig1
-rw-r--r--src/northbridge/amd/lx/Kconfig1
-rw-r--r--src/northbridge/amd/pi/Kconfig1
-rw-r--r--src/northbridge/dmp/vortex86ex/Kconfig1
-rw-r--r--src/northbridge/intel/e7501/Kconfig1
-rw-r--r--src/northbridge/intel/e7505/Kconfig1
-rw-r--r--src/northbridge/intel/i3100/Kconfig1
-rw-r--r--src/northbridge/intel/i440bx/Kconfig1
-rw-r--r--src/northbridge/intel/i440lx/Kconfig1
-rw-r--r--src/northbridge/intel/i5000/Kconfig1
-rw-r--r--src/northbridge/intel/i82810/Kconfig1
-rw-r--r--src/northbridge/intel/i82830/Kconfig1
-rw-r--r--src/northbridge/intel/i855/Kconfig1
-rw-r--r--src/northbridge/intel/sch/Kconfig1
-rw-r--r--src/northbridge/rdc/r8610/Kconfig1
-rw-r--r--src/northbridge/via/cn700/Kconfig1
-rw-r--r--src/northbridge/via/cx700/Kconfig1
-rw-r--r--src/northbridge/via/vx800/Kconfig1
-rw-r--r--src/northbridge/via/vx900/Kconfig1
24 files changed, 31 insertions, 8 deletions
diff --git a/src/Kconfig b/src/Kconfig
index 4b10e17b0..92714d5ed 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -157,16 +157,17 @@ config INCLUDE_CONFIG_FILE
(empty) 0x8e480 null 3610440
config EARLY_CBMEM_INIT
- bool
- default n
+ def_bool !LATE_CBMEM_INIT
+
+config LATE_CBMEM_INIT
+ def_bool n
help
- Make coreboot initialize the CBMEM structures while running in ROM
- stage. This is useful when the ROM stage wants to communicate
- some, for instance, execution timestamps. It needs support in
- romstage.c and should be enabled by the board's Kconfig.
+ Enable this in chipset's Kconfig if northbridge does not implement
+ early get_top_of_ram() call for romstage. CBMEM tables will be
+ allocated late in ramstage, after PCI devices resources are known.
config BROKEN_CAR_MIGRATE
- def_bool !EARLY_CBMEM_INIT
+ def_bool LATE_CBMEM_INIT
help
Many boards use CAR_GLOBAL but have no EARLY_CBMEM_INIT and
manage CAR migration on S3 resume path only. Couple boards use
diff --git a/src/arch/x86/boot/cbmem.c b/src/arch/x86/boot/cbmem.c
index 34309c297..af42edd84 100644
--- a/src/arch/x86/boot/cbmem.c
+++ b/src/arch/x86/boot/cbmem.c
@@ -56,7 +56,7 @@ void set_top_of_ram(uint64_t ramtop)
}
#endif /* !__PRE_RAM__ */
-#if CONFIG_BROKEN_CAR_MIGRATE || !defined(__PRE_RAM__)
+#if IS_ENABLED(CONFIG_LATE_CBMEM_INIT)
unsigned long __attribute__((weak)) get_top_of_ram(void)
{
printk(BIOS_WARNING, "WARNING: you need to define get_top_of_ram() for your chipset\n");
diff --git a/src/northbridge/amd/agesa/Kconfig b/src/northbridge/amd/agesa/Kconfig
index 68551fb83..8fd8bfd19 100644
--- a/src/northbridge/amd/agesa/Kconfig
+++ b/src/northbridge/amd/agesa/Kconfig
@@ -20,6 +20,7 @@
config NORTHBRIDGE_AMD_AGESA
bool
default CPU_AMD_AGESA
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_AGESA
diff --git a/src/northbridge/amd/amdfam10/Kconfig b/src/northbridge/amd/amdfam10/Kconfig
index 0789ac342..13b912ec7 100644
--- a/src/northbridge/amd/amdfam10/Kconfig
+++ b/src/northbridge/amd/amdfam10/Kconfig
@@ -25,6 +25,7 @@ config NORTHBRIDGE_AMD_AMDFAM10
select HYPERTRANSPORT_PLUGIN_SUPPORT
select MMCONF_SUPPORT
select PER_DEVICE_ACPI_TABLES
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_AMDFAM10
config AGP_APERTURE_SIZE
diff --git a/src/northbridge/amd/amdk8/Kconfig b/src/northbridge/amd/amdk8/Kconfig
index 8bee5ca26..65dc1736d 100644
--- a/src/northbridge/amd/amdk8/Kconfig
+++ b/src/northbridge/amd/amdk8/Kconfig
@@ -24,6 +24,7 @@ config NORTHBRIDGE_AMD_AMDK8
select HAVE_DEBUG_CAR
select HYPERTRANSPORT_PLUGIN_SUPPORT
select PER_DEVICE_ACPI_TABLES
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_AMDK8
config AGP_APERTURE_SIZE
diff --git a/src/northbridge/amd/gx2/Kconfig b/src/northbridge/amd/gx2/Kconfig
index dc347c4f0..1fe33f81f 100644
--- a/src/northbridge/amd/gx2/Kconfig
+++ b/src/northbridge/amd/gx2/Kconfig
@@ -20,6 +20,7 @@
config NORTHBRIDGE_AMD_GX2
bool
select GEODE_VSA
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_GX2
diff --git a/src/northbridge/amd/lx/Kconfig b/src/northbridge/amd/lx/Kconfig
index d74d71554..abc3e4cdf 100644
--- a/src/northbridge/amd/lx/Kconfig
+++ b/src/northbridge/amd/lx/Kconfig
@@ -1,6 +1,7 @@
config NORTHBRIDGE_AMD_LX
bool
select GEODE_VSA
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_LX
diff --git a/src/northbridge/amd/pi/Kconfig b/src/northbridge/amd/pi/Kconfig
index 8af4872b3..2b8e35666 100644
--- a/src/northbridge/amd/pi/Kconfig
+++ b/src/northbridge/amd/pi/Kconfig
@@ -20,6 +20,7 @@
config NORTHBRIDGE_AMD_PI
bool
default CPU_AMD_PI
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_AMD_PI
diff --git a/src/northbridge/dmp/vortex86ex/Kconfig b/src/northbridge/dmp/vortex86ex/Kconfig
index 7bf523594..74239ada5 100644
--- a/src/northbridge/dmp/vortex86ex/Kconfig
+++ b/src/northbridge/dmp/vortex86ex/Kconfig
@@ -19,3 +19,4 @@
config NORTHBRIDGE_DMP_VORTEX86EX
bool
+ select LATE_CBMEM_INIT
diff --git a/src/northbridge/intel/e7501/Kconfig b/src/northbridge/intel/e7501/Kconfig
index 88c0b45fb..763b96eb7 100644
--- a/src/northbridge/intel/e7501/Kconfig
+++ b/src/northbridge/intel/e7501/Kconfig
@@ -2,4 +2,5 @@ config NORTHBRIDGE_INTEL_E7501
bool
select HAVE_DEBUG_RAM_SETUP
select PER_DEVICE_ACPI_TABLES
+ select LATE_CBMEM_INIT
diff --git a/src/northbridge/intel/e7505/Kconfig b/src/northbridge/intel/e7505/Kconfig
index ff7f5a5e6..e75585252 100644
--- a/src/northbridge/intel/e7505/Kconfig
+++ b/src/northbridge/intel/e7505/Kconfig
@@ -26,6 +26,7 @@ config NORTHBRIDGE_SPECIFIC_OPTIONS # dummy
def_bool y
select HAVE_DEBUG_RAM_SETUP
select PER_DEVICE_ACPI_TABLES
+ select LATE_CBMEM_INIT
config HW_SCRUBBER
bool
diff --git a/src/northbridge/intel/i3100/Kconfig b/src/northbridge/intel/i3100/Kconfig
index 079004bda..cb0bd3808 100644
--- a/src/northbridge/intel/i3100/Kconfig
+++ b/src/northbridge/intel/i3100/Kconfig
@@ -1,5 +1,6 @@
config NORTHBRIDGE_INTEL_I3100
bool
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_INTEL_I3100
config DIMM_MAP_LOGICAL
diff --git a/src/northbridge/intel/i440bx/Kconfig b/src/northbridge/intel/i440bx/Kconfig
index 902eb737d..c5cc43ec4 100644
--- a/src/northbridge/intel/i440bx/Kconfig
+++ b/src/northbridge/intel/i440bx/Kconfig
@@ -20,6 +20,7 @@
config NORTHBRIDGE_INTEL_I440BX
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
config SDRAMPWR_4DIMM
bool
diff --git a/src/northbridge/intel/i440lx/Kconfig b/src/northbridge/intel/i440lx/Kconfig
index a88a7a12f..1ccaac68e 100644
--- a/src/northbridge/intel/i440lx/Kconfig
+++ b/src/northbridge/intel/i440lx/Kconfig
@@ -20,4 +20,5 @@
config NORTHBRIDGE_INTEL_I440LX
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
diff --git a/src/northbridge/intel/i5000/Kconfig b/src/northbridge/intel/i5000/Kconfig
index f7344ca97..3bd685af7 100644
--- a/src/northbridge/intel/i5000/Kconfig
+++ b/src/northbridge/intel/i5000/Kconfig
@@ -22,6 +22,7 @@ config NORTHBRIDGE_INTEL_I5000
select MMCONF_SUPPORT
select MMCONF_SUPPORT_DEFAULT
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_INTEL_I5000
diff --git a/src/northbridge/intel/i82810/Kconfig b/src/northbridge/intel/i82810/Kconfig
index 79fe36a88..723f751dc 100644
--- a/src/northbridge/intel/i82810/Kconfig
+++ b/src/northbridge/intel/i82810/Kconfig
@@ -20,6 +20,7 @@
config NORTHBRIDGE_INTEL_I82810
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
choice
prompt "Onboard graphics"
diff --git a/src/northbridge/intel/i82830/Kconfig b/src/northbridge/intel/i82830/Kconfig
index 20b31a2fb..662840fcc 100644
--- a/src/northbridge/intel/i82830/Kconfig
+++ b/src/northbridge/intel/i82830/Kconfig
@@ -1,6 +1,7 @@
config NORTHBRIDGE_INTEL_I82830
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
choice
prompt "Onboard graphics"
diff --git a/src/northbridge/intel/i855/Kconfig b/src/northbridge/intel/i855/Kconfig
index f5c2890e9..44becf6ac 100644
--- a/src/northbridge/intel/i855/Kconfig
+++ b/src/northbridge/intel/i855/Kconfig
@@ -1,6 +1,7 @@
config NORTHBRIDGE_INTEL_I855
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
choice
prompt "Onboard graphics"
diff --git a/src/northbridge/intel/sch/Kconfig b/src/northbridge/intel/sch/Kconfig
index b8dad7211..f495e6a21 100644
--- a/src/northbridge/intel/sch/Kconfig
+++ b/src/northbridge/intel/sch/Kconfig
@@ -21,6 +21,7 @@ config NORTHBRIDGE_INTEL_SCH
bool
select MMCONF_SUPPORT
select PER_DEVICE_ACPI_TABLES
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_INTEL_SCH
diff --git a/src/northbridge/rdc/r8610/Kconfig b/src/northbridge/rdc/r8610/Kconfig
index 85461b7f3..e93a3e65b 100644
--- a/src/northbridge/rdc/r8610/Kconfig
+++ b/src/northbridge/rdc/r8610/Kconfig
@@ -1,2 +1,3 @@
config NORTHBRIDGE_RDC_R8610
bool
+ select LATE_CBMEM_INIT
diff --git a/src/northbridge/via/cn700/Kconfig b/src/northbridge/via/cn700/Kconfig
index 34c330e08..15c86ebc7 100644
--- a/src/northbridge/via/cn700/Kconfig
+++ b/src/northbridge/via/cn700/Kconfig
@@ -1,6 +1,7 @@
config NORTHBRIDGE_VIA_CN700
bool
select HAVE_DEBUG_RAM_SETUP
+ select LATE_CBMEM_INIT
# TODO: Values are from the CX700 datasheet, not sure if this matches CN700.
# TODO: What should be the per-chipset default value here?
diff --git a/src/northbridge/via/cx700/Kconfig b/src/northbridge/via/cx700/Kconfig
index 8f6e3374e..03014eb96 100644
--- a/src/northbridge/via/cx700/Kconfig
+++ b/src/northbridge/via/cx700/Kconfig
@@ -5,6 +5,7 @@ config NORTHBRIDGE_VIA_CX700
select HAVE_HARD_RESET
select IOAPIC
select SMP
+ select LATE_CBMEM_INIT
# TODO: What should be the per-chipset default value here?
choice
diff --git a/src/northbridge/via/vx800/Kconfig b/src/northbridge/via/vx800/Kconfig
index 48ea456e4..a59fc419a 100644
--- a/src/northbridge/via/vx800/Kconfig
+++ b/src/northbridge/via/vx800/Kconfig
@@ -2,4 +2,5 @@ config NORTHBRIDGE_VIA_VX800
bool
select HAVE_DEBUG_RAM_SETUP
select HAVE_DEBUG_SMBUS
+ select LATE_CBMEM_INIT
diff --git a/src/northbridge/via/vx900/Kconfig b/src/northbridge/via/vx900/Kconfig
index 9fe590954..617074f52 100644
--- a/src/northbridge/via/vx900/Kconfig
+++ b/src/northbridge/via/vx900/Kconfig
@@ -26,6 +26,7 @@ config NORTHBRIDGE_VIA_VX900
select HAVE_HARD_RESET
select MMCONF_SUPPORT
select MMCONF_SUPPORT_DEFAULT
+ select LATE_CBMEM_INIT
if NORTHBRIDGE_VIA_VX900