arch/x86: Link walkcbfs.S instead of including it

Link walkfcbfs.S in the C_ENVIRONMENT_BOOTBLOCK case and also in the
romstage.

This is useful for cbfs access in pre-CAR environments.

Change-Id: I9a17cdf01c7cbc3c9ac45ed1f075731f3e32f64b
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/30681
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
This commit is contained in:
Arthur Heymans 2019-01-05 18:21:47 +01:00 committed by Kyösti Mälkki
parent ad80e7f118
commit 0eb9c57049
3 changed files with 14 additions and 2 deletions

View File

@ -122,6 +122,8 @@ else
$(eval $(call early_x86_stage,bootblock,elf64-x86-64)) $(eval $(call early_x86_stage,bootblock,elf64-x86-64))
endif endif
bootblock-y += walkcbfs.S
else # !C_ENVIRONMENT_BOOTBLOCK else # !C_ENVIRONMENT_BOOTBLOCK
# x86-specific linker flags # x86-specific linker flags
@ -233,6 +235,7 @@ romstage-y += memset.c
romstage-$(CONFIG_X86_TOP4G_BOOTMEDIA_MAP) += mmap_boot.c romstage-$(CONFIG_X86_TOP4G_BOOTMEDIA_MAP) += mmap_boot.c
romstage-y += postcar_loader.c romstage-y += postcar_loader.c
romstage-$(CONFIG_COLLECT_TIMESTAMPS_TSC) += timestamp.c romstage-$(CONFIG_COLLECT_TIMESTAMPS_TSC) += timestamp.c
romstage-y += walkcbfs.S
romstage-srcs += $(wildcard $(src)/mainboard/$(MAINBOARDDIR)/romstage.c) romstage-srcs += $(wildcard $(src)/mainboard/$(MAINBOARDDIR)/romstage.c)
romstage-libs ?= romstage-libs ?=

View File

@ -20,7 +20,12 @@
#include <cpu/x86/post_code.h> #include <cpu/x86/post_code.h>
#include <cpu/x86/msr.h> #include <cpu/x86/msr.h>
#include <arch/x86/walkcbfs.S>
#define CBFS_FILE_MAGIC 0
#define CBFS_FILE_LEN (CBFS_FILE_MAGIC + 8)
#define CBFS_FILE_TYPE (CBFS_FILE_LEN + 4)
#define CBFS_FILE_CHECKSUM (CBFS_FILE_TYPE + 4)
#define CBFS_FILE_OFFSET (CBFS_FILE_CHECKSUM + 4)
#define HEADER_VER_OFFSET 0 #define HEADER_VER_OFFSET 0
#define UPDATE_VER_OFFSET 4 #define UPDATE_VER_OFFSET 4

View File

@ -19,8 +19,12 @@
#include <cpu/x86/cache.h> #include <cpu/x86/cache.h>
#include <cpu/x86/cr.h> #include <cpu/x86/cr.h>
#include <cpu/x86/post_code.h> #include <cpu/x86/post_code.h>
#include <../../../../../arch/x86/walkcbfs.S>
#define CBFS_FILE_MAGIC 0
#define CBFS_FILE_LEN (CBFS_FILE_MAGIC + 8)
#define CBFS_FILE_TYPE (CBFS_FILE_LEN + 4)
#define CBFS_FILE_CHECKSUM (CBFS_FILE_TYPE + 4)
#define CBFS_FILE_OFFSET (CBFS_FILE_CHECKSUM + 4)
.extern temp_ram_init_params .extern temp_ram_init_params