aboutsummaryrefslogtreecommitdiff
path: root/src/arch/x86/memlayout.ld
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2016-01-21 00:08:17 -0600
committerAaron Durbin <adurbin@chromium.org>2016-01-23 18:25:48 +0100
commiteb907b3c9047fc262893a57c42777928b50c17d9 (patch)
tree5e42d469d9594eccfac5fbd511a0abf86b191063 /src/arch/x86/memlayout.ld
parent1b915b89044c06ae7957544b97d6c30d496366e0 (diff)
arch/x86: link bootblock like other stages for C_ENVIRONMENT_BOOTBLOCK
When C_ENVIRONMENT_BOOTBLOCK is selected link bootblock using the memlayout.ld scripts and infrastructure. This allows bootblock on x86 to utilize all the other coreboot infrastructure without relying romcc. Change-Id: Ie3e077d553360853bf33f30cf8a347ba1df1e389 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/13069 Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand <noreply@raptorengineeringinc.com>
Diffstat (limited to 'src/arch/x86/memlayout.ld')
-rw-r--r--src/arch/x86/memlayout.ld18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/arch/x86/memlayout.ld b/src/arch/x86/memlayout.ld
index d7ebf75a67..1ecae8c230 100644
--- a/src/arch/x86/memlayout.ld
+++ b/src/arch/x86/memlayout.ld
@@ -42,5 +42,23 @@ SECTIONS
/* Pull in the cache-as-ram rules. */
#include "car.ld"
+#elif ENV_BOOTBLOCK
+ /* This is for C_ENVIRONMENT_BOOTBLOCK. arch/x86/bootblock.ld contains
+ * the logic for the romcc linking. */
+ BOOTBLOCK(0xffff0000, 64K)
+
+ /* Pull in the cache-as-ram rules. */
+ #include "car.ld"
+
#endif
}
+
+#if ENV_BOOTBLOCK
+/* Bootblock specific scripts which provide more SECTION directives. */
+#include <cpu/x86/16bit/entry16.ld>
+#include <cpu/x86/16bit/reset16.ld>
+#include <arch/x86/id.ld>
+#if IS_ENABLED(CONFIG_CPU_INTEL_FIRMWARE_INTERFACE_TABLE)
+#include <cpu/intel/fit/fit.ld>
+#endif
+#endif /* ENV_BOOTBLOCK */