[coreboot-gerrit] Patch set updated for coreboot: 95ad404 CBMEM: Always have early initialisation
Kyösti Mälkki (kyosti.malkki@gmail.com)
gerrit at coreboot.org
Wed Sep 11 21:00:55 CEST 2013
Kyösti Mälkki (kyosti.malkki at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3917
-gerrit
commit 95ad4047166dc9fc93da48f1b95ed65280230fb4
Author: Kyösti Mälkki <kyosti.malkki at gmail.com>
Date: Sun Sep 8 10:08:28 2013 +0300
CBMEM: Always have early initialisation
Assume EARLY_CBMEM_INIT=y everywhere and remove option from Kconfig.
If romstage does not make the cbmem_initialize() call, features like
COLLECT_TIMESTAMPS and early CBMEM_CONSOLE will execute during
romstage, but that data will get lost as no CAR migration is
executed.
Change-Id: I5615645ed0f5fd78fbc372cf5c3da71a3134dd85
Signed-off-by: Kyösti Mälkki <kyosti.malkki at gmail.com>
---
src/Kconfig | 11 +----------
src/console/Kconfig | 1 -
src/lib/Makefile.inc | 6 +-----
src/lib/cbmem.c | 4 ----
src/mainboard/emulation/qemu-i440fx/Kconfig | 1 -
src/mainboard/emulation/qemu-q35/Kconfig | 1 -
src/mainboard/google/butterfly/Kconfig | 1 -
src/mainboard/google/link/Kconfig | 1 -
src/mainboard/google/parrot/Kconfig | 1 -
src/mainboard/google/stout/romstage.c | 4 ----
src/mainboard/intel/emeraldlake2/Kconfig | 1 -
src/mainboard/kontron/ktqm77/Kconfig | 1 -
src/mainboard/lenovo/t60/Kconfig | 1 -
src/mainboard/lenovo/x60/Kconfig | 1 -
src/mainboard/samsung/lumpy/Kconfig | 1 -
src/mainboard/samsung/stumpy/Kconfig | 1 -
src/mainboard/via/epia-m850/romstage.c | 2 --
src/northbridge/intel/sandybridge/raminit.c | 2 --
18 files changed, 2 insertions(+), 39 deletions(-)
diff --git a/src/Kconfig b/src/Kconfig
index be2cb24..ae385dd 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -170,15 +170,6 @@ config INCLUDE_CONFIG_FILE
config 0x8d740 raw 3324
(empty) 0x8e480 null 3610440
-config EARLY_CBMEM_INIT
- bool
- default 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.
-
config DYNAMIC_CBMEM
bool "The CBMEM space is dynamically grown."
default n
@@ -189,7 +180,7 @@ config DYNAMIC_CBMEM
config COLLECT_TIMESTAMPS
bool "Create a table of timestamps collected during boot"
- depends on (EARLY_CBMEM_INIT || DYNAMIC_CBMEM)
+ default n
help
Make coreboot create a table of timer-ID/timer-value pairs to
allow measuring time spent at different phases of the boot process.
diff --git a/src/console/Kconfig b/src/console/Kconfig
index 38f51e3..e9fca11 100644
--- a/src/console/Kconfig
+++ b/src/console/Kconfig
@@ -253,7 +253,6 @@ config CONSOLE_NE2K_IO_PORT
boundary, qemu needs broader align)
config CONSOLE_CBMEM
- depends on (EARLY_CBMEM_INIT || DYNAMIC_CBMEM)
bool "Send console output to a CBMEM buffer"
default n
help
diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc
index 44b5ebd..1455e4c 100644
--- a/src/lib/Makefile.inc
+++ b/src/lib/Makefile.inc
@@ -56,10 +56,6 @@ romstage-$(CONFIG_CONSOLE_CBMEM) += cbmem_console.c
romstage-$(CONFIG_USBDEBUG) += usbdebug.c
endif
-ifneq ($(CONFIG_DYNAMIC_CBMEM),y)
-romstage-$(CONFIG_EARLY_CBMEM_INIT) += cbmem.c
-endif
-
romstage-y += compute_ip_checksum.c
ifneq ($(CONFIG_HAVE_ARCH_MEMMOVE),y)
romstage-y += memmove.c
@@ -112,7 +108,7 @@ ramstage-y += dynamic_cbmem.c
romstage-y += dynamic_cbmem.c
else
ramstage-y += cbmem.c
-romstage-$(CONFIG_HAVE_ACPI_RESUME) += cbmem.c
+romstage-$(CONFIG_CACHE_AS_RAM) += cbmem.c
endif # CONFIG_DYNAMIC_CBMEM
ramstage-y += cbmem_info.c
diff --git a/src/lib/cbmem.c b/src/lib/cbmem.c
index 495ee5a..8d69435 100644
--- a/src/lib/cbmem.c
+++ b/src/lib/cbmem.c
@@ -95,7 +95,6 @@ void cbmem_late_set_table(uint64_t base, uint64_t size)
* - suspend/resume backup memory
*/
-#if CONFIG_EARLY_CBMEM_INIT || !defined(__PRE_RAM__)
static void cbmem_init(void)
{
uint64_t baseaddr, size;
@@ -120,7 +119,6 @@ static void cbmem_init(void)
.size = size - CBMEM_TOC_RESERVED
};
}
-#endif
int cbmem_reinit(void)
{
@@ -220,7 +218,6 @@ void *cbmem_find(u32 id)
return (void *)NULL;
}
-#if CONFIG_EARLY_CBMEM_INIT || !defined(__PRE_RAM__)
/* Returns True if it was not initialized before. */
int cbmem_initialize(void)
{
@@ -244,7 +241,6 @@ int cbmem_initialize(void)
return rv;
}
-#endif
#ifndef __PRE_RAM__
static void init_cbmem_post_device(void *unused)
diff --git a/src/mainboard/emulation/qemu-i440fx/Kconfig b/src/mainboard/emulation/qemu-i440fx/Kconfig
index b462b8c..2eed55b 100644
--- a/src/mainboard/emulation/qemu-i440fx/Kconfig
+++ b/src/mainboard/emulation/qemu-i440fx/Kconfig
@@ -11,7 +11,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_TABLES
select HAVE_ACPI_RESUME
select BOARD_ROMSIZE_KB_256
- select EARLY_CBMEM_INIT
select MAINBOARD_HAS_NATIVE_VGA_INIT
config MAINBOARD_DIR
diff --git a/src/mainboard/emulation/qemu-q35/Kconfig b/src/mainboard/emulation/qemu-q35/Kconfig
index 9d78bb8..43bba46 100644
--- a/src/mainboard/emulation/qemu-q35/Kconfig
+++ b/src/mainboard/emulation/qemu-q35/Kconfig
@@ -14,7 +14,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_TABLES
# select HAVE_ACPI_RESUME
select BOARD_ROMSIZE_KB_256
- select EARLY_CBMEM_INIT
select MAINBOARD_HAS_NATIVE_VGA_INIT
config MAINBOARD_DIR
diff --git a/src/mainboard/google/butterfly/Kconfig b/src/mainboard/google/butterfly/Kconfig
index e9ad6ef..d35be8d 100644
--- a/src/mainboard/google/butterfly/Kconfig
+++ b/src/mainboard/google/butterfly/Kconfig
@@ -14,7 +14,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_SMI_HANDLER
select GFXUMA
select CHROMEOS
- select EARLY_CBMEM_INIT
# Workaround for EC/KBC IRQ1.
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/google/link/Kconfig b/src/mainboard/google/link/Kconfig
index b74c604..d040599 100644
--- a/src/mainboard/google/link/Kconfig
+++ b/src/mainboard/google/link/Kconfig
@@ -16,7 +16,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select CHROMEOS
select SERIRQ_CONTINUOUS_MODE
select MAINBOARD_HAS_NATIVE_VGA_INIT
- select EARLY_CBMEM_INIT
select MARK_GRAPHICS_MEM_WRCOMB
config MAINBOARD_DIR
diff --git a/src/mainboard/google/parrot/Kconfig b/src/mainboard/google/parrot/Kconfig
index 191e856..1108b13 100644
--- a/src/mainboard/google/parrot/Kconfig
+++ b/src/mainboard/google/parrot/Kconfig
@@ -14,7 +14,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_SMI_HANDLER
select GFXUMA
select CHROMEOS
- select EARLY_CBMEM_INIT
# Workaround for EC/KBC IRQ1.
select SERIRQ_CONTINUOUS_MODE
diff --git a/src/mainboard/google/stout/romstage.c b/src/mainboard/google/stout/romstage.c
index 5ace4f6..464ddea 100644
--- a/src/mainboard/google/stout/romstage.c
+++ b/src/mainboard/google/stout/romstage.c
@@ -296,11 +296,7 @@ void main(unsigned long bist)
post_code(0x3e);
MCHBAR16(SSKPD) = 0xCAFE;
-#if CONFIG_EARLY_CBMEM_INIT
cbmem_was_initted = !cbmem_initialize();
-#else
- cbmem_was_initted = cbmem_reinit();
-#endif
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/intel/emeraldlake2/Kconfig b/src/mainboard/intel/emeraldlake2/Kconfig
index fd98485..1ad50d9 100644
--- a/src/mainboard/intel/emeraldlake2/Kconfig
+++ b/src/mainboard/intel/emeraldlake2/Kconfig
@@ -13,7 +13,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_RESUME
select GFXUMA
#select CHROMEOS
- select EARLY_CBMEM_INIT
config MAINBOARD_DIR
string
diff --git a/src/mainboard/kontron/ktqm77/Kconfig b/src/mainboard/kontron/ktqm77/Kconfig
index e9d1ce7..d379f6f 100644
--- a/src/mainboard/kontron/ktqm77/Kconfig
+++ b/src/mainboard/kontron/ktqm77/Kconfig
@@ -14,7 +14,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_RESUME
select HAVE_SMI_HANDLER
select GFXUMA
- select EARLY_CBMEM_INIT
select ENABLE_VMX
select HAVE_MRC
diff --git a/src/mainboard/lenovo/t60/Kconfig b/src/mainboard/lenovo/t60/Kconfig
index 0f0670e..ec03534 100644
--- a/src/mainboard/lenovo/t60/Kconfig
+++ b/src/mainboard/lenovo/t60/Kconfig
@@ -21,7 +21,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select CHANNEL_XOR_RANDOMIZATION
select HAVE_ACPI_TABLES
select HAVE_ACPI_RESUME
- select EARLY_CBMEM_INIT
config MAINBOARD_DIR
string
default lenovo/t60
diff --git a/src/mainboard/lenovo/x60/Kconfig b/src/mainboard/lenovo/x60/Kconfig
index 72aeef8..8eb159b 100644
--- a/src/mainboard/lenovo/x60/Kconfig
+++ b/src/mainboard/lenovo/x60/Kconfig
@@ -24,7 +24,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_RESUME
select USE_OPTION_TABLE
select MAINBOARD_HAS_NATIVE_VGA_INIT
- select EARLY_CBMEM_INIT
config MAINBOARD_DIR
string
diff --git a/src/mainboard/samsung/lumpy/Kconfig b/src/mainboard/samsung/lumpy/Kconfig
index 91dc3b6..13c8748 100644
--- a/src/mainboard/samsung/lumpy/Kconfig
+++ b/src/mainboard/samsung/lumpy/Kconfig
@@ -15,7 +15,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select SOUTHBRIDGE_INTEL_BD82X6X
select SUPERIO_SMSC_MEC1308
select DRIVERS_GENERIC_IOAPIC
- select EARLY_CBMEM_INIT
select HAVE_MRC
config MAINBOARD_DIR
diff --git a/src/mainboard/samsung/stumpy/Kconfig b/src/mainboard/samsung/stumpy/Kconfig
index f4f8e4d..17f854f 100644
--- a/src/mainboard/samsung/stumpy/Kconfig
+++ b/src/mainboard/samsung/stumpy/Kconfig
@@ -13,7 +13,6 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select NORTHBRIDGE_INTEL_SANDYBRIDGE
select SOUTHBRIDGE_INTEL_BD82X6X
select SUPERIO_ITE_IT8772F
- select EARLY_CBMEM_INIT
select HAVE_MRC
config MAINBOARD_DIR
diff --git a/src/mainboard/via/epia-m850/romstage.c b/src/mainboard/via/epia-m850/romstage.c
index 23b5aea..8bbb1f5 100644
--- a/src/mainboard/via/epia-m850/romstage.c
+++ b/src/mainboard/via/epia-m850/romstage.c
@@ -94,9 +94,7 @@ void main(unsigned long bist)
print_debug("We passed RAM verify\n");
/* We got RAM working, now we can write the timestamps to RAM */
-#if CONFIG_EARLY_CBMEM_INIT
cbmem_initialize();
-#endif
timestamp_sync();
timestamp_add_now(TS_END_ROMSTAGE);
/* FIXME: See if this is needed or take this out please */
diff --git a/src/northbridge/intel/sandybridge/raminit.c b/src/northbridge/intel/sandybridge/raminit.c
index 3b321d7..db96202 100644
--- a/src/northbridge/intel/sandybridge/raminit.c
+++ b/src/northbridge/intel/sandybridge/raminit.c
@@ -58,7 +58,6 @@ static void save_mrc_data(struct pei_data *pei_data)
{
u16 c1, c2, checksum;
-#if CONFIG_EARLY_CBMEM_INIT
struct mrc_data_container *mrcdata;
int output_len = ALIGN(pei_data->mrc_output_len, 16);
@@ -84,7 +83,6 @@ static void save_mrc_data(struct pei_data *pei_data)
mrcdata->mrc_checksum = compute_ip_checksum(mrcdata->mrc_data,
mrcdata->mrc_data_size);
-#endif
/* Save the MRC seed values to CMOS */
cmos_write32(CMOS_OFFSET_MRC_SEED, pei_data->scrambler_seed);
More information about the coreboot-gerrit
mailing list