diff --git a/src/Kconfig b/src/Kconfig index 5b52a5e887..ece57c03c1 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -219,6 +219,15 @@ config COVERAGE coverage information in CBMEM for extraction from user space. If unsure, say N. +config UPDATE_IMAGE + bool "Update existing coreboot.rom image" + default n + help + If this option is enabled, no new coreboot.rom file + is created. Instead it is expected that there already + is a suitable file for further processing. + The bootblock will not be modified. + endmenu source src/mainboard/Kconfig @@ -264,6 +273,14 @@ source src/soc/Kconfig endmenu +config CPU_HAS_BOOTBLOCK_INIT + bool + default n + +config MAINBOARD_HAS_BOOTBLOCK_INIT + bool + default n + source src/device/Kconfig menu "Generic Drivers" @@ -285,6 +302,11 @@ config HEAP_SIZE hex default 0x4000 +# Not used for the actual stack by ARM, but still needed in some src/lib/ files. +config STACK_SIZE + hex + default 0x1000 + config MAX_CPUS int default 1 diff --git a/src/arch/arm/Kconfig b/src/arch/arm/Kconfig index bab486cbea..25d959c2c2 100644 --- a/src/arch/arm/Kconfig +++ b/src/arch/arm/Kconfig @@ -26,40 +26,6 @@ config ARM_BOOTBLOCK_CUSTOM bool default n -choice - prompt "Bootblock behaviour" - default ARM_BOOTBLOCK_SIMPLE - depends on !ARM_BOOTBLOCK_CUSTOM - -config ARM_BOOTBLOCK_SIMPLE - bool "Always load fallback" - -config ARM_BOOTBLOCK_NORMAL - bool "Switch to normal if non-volatile memory says so" - -endchoice - -config CBMEM_CONSOLE_PRERAM_BASE - hex - depends on CONSOLE_CBMEM - -config CPU_HAS_BOOTBLOCK_INIT - bool - default n - -config MAINBOARD_HAS_BOOTBLOCK_INIT - bool - default n - -config UPDATE_IMAGE - bool "Update existing coreboot.rom image" - default n - help - If this option is enabled, no new coreboot.rom file - is created. Instead it is expected that there already - is a suitable file for further processing. - The bootblock will not be modified. - config ARM_LPAE bool "Enable LPAE" default n diff --git a/src/arch/arm/armv4/Makefile.inc b/src/arch/arm/armv4/Makefile.inc index 4342875bc4..91fbabc0bd 100644 --- a/src/arch/arm/armv4/Makefile.inc +++ b/src/arch/arm/armv4/Makefile.inc @@ -29,9 +29,8 @@ ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARM_V4),y) ifneq ($(CONFIG_ARM_BOOTBLOCK_CUSTOM),y) bootblock-y += bootblock.S +bootblock-y += bootblock_simple.c endif -bootblock-$(CONFIG_ARM_BOOTBLOCK_SIMPLE) += bootblock_simple.c -bootblock-$(CONFIG_ARM_BOOTBLOCK_NORMAL) += bootblock_normal.c bootblock-y += cache.c bootblock-c-ccopts += $(armv4_flags) diff --git a/src/arch/arm/armv7/Makefile.inc b/src/arch/arm/armv7/Makefile.inc index 168b02fcbd..352de53ea1 100644 --- a/src/arch/arm/armv7/Makefile.inc +++ b/src/arch/arm/armv7/Makefile.inc @@ -31,9 +31,8 @@ ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARM_V7),y) ifneq ($(CONFIG_ARM_BOOTBLOCK_CUSTOM),y) bootblock-y += bootblock.S +bootblock-y += bootblock_simple.c endif -bootblock-$(CONFIG_ARM_BOOTBLOCK_SIMPLE) += bootblock_simple.c -bootblock-$(CONFIG_ARM_BOOTBLOCK_NORMAL) += bootblock_normal.c bootblock-y += cache.c bootblock-y += cpu.S bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += exception.c diff --git a/src/arch/arm64/Kconfig b/src/arch/arm64/Kconfig index eb9ef6deb7..8276b366cc 100644 --- a/src/arch/arm64/Kconfig +++ b/src/arch/arm64/Kconfig @@ -21,3 +21,9 @@ config ARCH_SPINTABLE depends on ARCH_RAMSTAGE_ARM64 source src/arch/arm64/armv8/Kconfig + +# If a custom bootblock is necessary, this option should be "select"-ed by +# the thing that needs it, probably the CPU. +config ARM64_BOOTBLOCK_CUSTOM + bool + default n diff --git a/src/arch/arm64/armv8/Makefile.inc b/src/arch/arm64/armv8/Makefile.inc index 23e5b6dd3b..007d46cabb 100644 --- a/src/arch/arm64/armv8/Makefile.inc +++ b/src/arch/arm64/armv8/Makefile.inc @@ -32,11 +32,10 @@ armv8_asm_flags = $(armv8_flags) ################################################################################ ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARM_V8_64),y) -ifneq ($(CONFIG_ARM_BOOTBLOCK_CUSTOM),y) +ifneq ($(CONFIG_ARM64_BOOTBLOCK_CUSTOM),y) bootblock-y += bootblock.S +bootblock-y += bootblock_simple.c endif -bootblock-$(CONFIG_ARM_BOOTBLOCK_SIMPLE) += bootblock_simple.c -bootblock-$(CONFIG_ARM_BOOTBLOCK_NORMAL) += bootblock_normal.c bootblock-y += cache.c bootblock-y += cpu.S bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += exception.c diff --git a/src/arch/x86/Kconfig b/src/arch/x86/Kconfig index 96a2cd6db4..879fc57adc 100644 --- a/src/arch/x86/Kconfig +++ b/src/arch/x86/Kconfig @@ -44,10 +44,6 @@ config RAMTOP hex default 0x200000 -config STACK_SIZE - hex - default 0x1000 - # We had to rename the choice options under arch/ because otherwise # the options would conflict between different architectures despite # the if ARCH_xxx guarding the arch/xxx/Kconfig sourcing. @@ -68,15 +64,6 @@ config BOOTBLOCK_SOURCE default "bootblock_simple.c" if X86_BOOTBLOCK_SIMPLE default "bootblock_normal.c" if X86_BOOTBLOCK_NORMAL -config UPDATE_IMAGE - bool "Update existing coreboot.rom image" - default n - help - If this option is enabled, no new coreboot.rom file - is created. Instead it is expected that there already - is a suitable file for further processing. - The bootblock will not be modified. - config ROMCC bool default n diff --git a/src/console/Kconfig b/src/console/Kconfig index 7dac48213e..e79d31abab 100644 --- a/src/console/Kconfig +++ b/src/console/Kconfig @@ -251,6 +251,10 @@ config CONSOLE_CBMEM_BUFFER_SIZE value (64K or 0x10000 bytes) is large enough to accommodate even the BIOS_SPEW level. +config CBMEM_CONSOLE_PRERAM_BASE + hex + depends on CONSOLE_CBMEM && CONSOLE_FIXED_PRERAM_CBMEM_BUFFER + config CONSOLE_PRERAM_BUFFER_SIZE depends on CONSOLE_CBMEM hex "Room allocated for console output before RAM is initialized"