summaryrefslogtreecommitdiff
path: root/src/southbridge
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2018-06-05 11:19:22 +0200
committerMartin Roth <martinroth@google.com>2019-04-21 23:31:26 +0000
commit8e646e74b3d5e1d4a5e8114f03046f3d7b6ad042 (patch)
tree1412f9f4cb0a07c145bc605b1087e96d4f62f8fc /src/southbridge
parentc4772b9fd7fcc29d09d7617dc8cff922118814d7 (diff)
downloadcoreboot-8e646e74b3d5e1d4a5e8114f03046f3d7b6ad042.tar.xz
cpu/intel/haswell: Use C_ENVIRONMENT_BOOTBLOCK
This puts the cache-as-ram init in the bootblock. Before setting up cache as ram the microcode updates are applied. This removes the possibility for a normal/fallback setup although implementing this should be quite easy. Tested on Google peppy (Acer C720). Setting up LPC in the bootblock to output console on SuperIOs is not done in this patch, hence BOOTBLOCK_CONSOLE is not yet enabled by default. Change-Id: Ia96499a9d478127f6b9d880883ac41397b58dbea Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/26859 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/southbridge')
-rw-r--r--src/southbridge/intel/lynxpoint/Kconfig4
-rw-r--r--src/southbridge/intel/lynxpoint/Makefile.inc2
-rw-r--r--src/southbridge/intel/lynxpoint/bootblock.c3
-rw-r--r--src/southbridge/intel/lynxpoint/early_pch.c2
4 files changed, 4 insertions, 7 deletions
diff --git a/src/southbridge/intel/lynxpoint/Kconfig b/src/southbridge/intel/lynxpoint/Kconfig
index 431744f08c..5573ec96ad 100644
--- a/src/southbridge/intel/lynxpoint/Kconfig
+++ b/src/southbridge/intel/lynxpoint/Kconfig
@@ -53,10 +53,6 @@ config EHCI_BAR
hex
default 0xe8000000
-config BOOTBLOCK_SOUTHBRIDGE_INIT
- string
- default "southbridge/intel/lynxpoint/bootblock.c"
-
config SERIRQ_CONTINUOUS_MODE
bool
default n
diff --git a/src/southbridge/intel/lynxpoint/Makefile.inc b/src/southbridge/intel/lynxpoint/Makefile.inc
index b18e6dafc8..62766dfe90 100644
--- a/src/southbridge/intel/lynxpoint/Makefile.inc
+++ b/src/southbridge/intel/lynxpoint/Makefile.inc
@@ -15,6 +15,8 @@
ifeq ($(CONFIG_SOUTHBRIDGE_INTEL_LYNXPOINT),y)
+bootblock-y += bootblock.c
+
ramstage-y += pch.c
ramstage-y += azalia.c
ramstage-y += lpc.c
diff --git a/src/southbridge/intel/lynxpoint/bootblock.c b/src/southbridge/intel/lynxpoint/bootblock.c
index 16f4ef90bc..69fdd611d2 100644
--- a/src/southbridge/intel/lynxpoint/bootblock.c
+++ b/src/southbridge/intel/lynxpoint/bootblock.c
@@ -14,6 +14,7 @@
*/
#include <device/pci_ops.h>
+#include <cpu/intel/car/bootblock.h>
#include "pch.h"
/*
@@ -69,7 +70,7 @@ static void set_spi_speed(void)
SPIBAR8(SSFC + 2) = ssfc;
}
-static void bootblock_southbridge_init(void)
+void bootblock_early_southbridge_init(void)
{
map_rcba();
enable_spi_prefetch();
diff --git a/src/southbridge/intel/lynxpoint/early_pch.c b/src/southbridge/intel/lynxpoint/early_pch.c
index 3d2d2c48fa..f615507dad 100644
--- a/src/southbridge/intel/lynxpoint/early_pch.c
+++ b/src/southbridge/intel/lynxpoint/early_pch.c
@@ -116,8 +116,6 @@ int early_pch_init(const void *gpio_map,
mainboard_config_superio();
- console_init();
-
pch_generic_setup();
/* Enable SMBus for reading SPDs. */