summaryrefslogtreecommitdiff
path: root/src/drivers/intel
diff options
context:
space:
mode:
authorpraveen hodagatta pranesh <praveenx.hodagatta.pranesh@intel.com>2018-10-10 22:48:00 +0800
committerAaron Durbin <adurbin@chromium.org>2018-10-17 06:06:49 +0000
commit6c96542a3e7936bcad6e2ea683f9244383a36f59 (patch)
treef08e0c340f0a1358ed7e19c9a437e14a7e8275f0 /src/drivers/intel
parent5ac643362bb80c04329dd54281d7a9f0276d0d6b (diff)
drivers/intel/fsp2_0: Add new config option to support FSP CAR
CPU_MICROCODE_CBFS_LEN and CPU_MICROCODE_CBFS_LOC configs pass the CPU microcode length and base address in CBFS to FSPT binary as init parameters. Add new config FSP_T_XIP in Kconfig, which is selected by platform config. If FSP_T_XIP is selected, then relocate FSPT binary while adding it in CBFS so that it can be executed in place. BUG= None TEST= Build for both CFL RVP11 & RVP8 and verified for successfull CAR setup. Change-Id: Ic46e0bb9ee13c38ff322979119c4813653c61029 Signed-off-by: praveen hodagatta pranesh <praveenx.hodagatta.pranesh@intel.com> Reviewed-on: https://review.coreboot.org/28985 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/drivers/intel')
-rw-r--r--src/drivers/intel/fsp2_0/Kconfig21
-rw-r--r--src/drivers/intel/fsp2_0/Makefile.inc3
2 files changed, 24 insertions, 0 deletions
diff --git a/src/drivers/intel/fsp2_0/Kconfig b/src/drivers/intel/fsp2_0/Kconfig
index 7cf4993597..28e9e5dcd3 100644
--- a/src/drivers/intel/fsp2_0/Kconfig
+++ b/src/drivers/intel/fsp2_0/Kconfig
@@ -53,6 +53,21 @@ config DISPLAY_UPD_DATA
Display the user specified product data prior to memory
initialization.
+config CPU_MICROCODE_CBFS_LEN
+ hex "Microcode update region length in bytes"
+ depends on FSP_CAR
+ default 0x0
+ help
+ The length in bytes of the microcode update region.
+
+config CPU_MICROCODE_CBFS_LOC
+ hex "Microcode update base address in CBFS"
+ depends on FSP_CAR
+ default 0x0
+ help
+ The location (base address) in CBFS that contains the
+ microcode update binary.
+
config FSP_T_CBFS
string "Name of FSP-T in CBFS"
depends on FSP_CAR
@@ -109,6 +124,12 @@ config FSP_M_XIP
help
Select this value when FSP-M is execute-in-place.
+config FSP_T_XIP
+ bool
+ default n
+ help
+ Select this value when FSP-T is execute-in-place.
+
config FSP_USES_CB_STACK
bool
default n
diff --git a/src/drivers/intel/fsp2_0/Makefile.inc b/src/drivers/intel/fsp2_0/Makefile.inc
index e85520f9d8..0bfe90d348 100644
--- a/src/drivers/intel/fsp2_0/Makefile.inc
+++ b/src/drivers/intel/fsp2_0/Makefile.inc
@@ -52,6 +52,9 @@ CPPFLAGS_common += -I$(src)/drivers/intel/fsp2_0/include
cbfs-files-$(CONFIG_FSP_CAR) += $(CONFIG_FSP_T_CBFS)
$(CONFIG_FSP_T_CBFS)-file := $(call strip_quotes,$(CONFIG_FSP_T_FILE))
$(CONFIG_FSP_T_CBFS)-type := fsp
+ifeq ($(CONFIG_FSP_T_XIP),y)
+$(CONFIG_FSP_T_CBFS)-options := --xip
+endif
cbfs-files-$(CONFIG_ADD_FSP_BINARIES) += $(CONFIG_FSP_M_CBFS)
$(CONFIG_FSP_M_CBFS)-file := $(call strip_quotes,$(CONFIG_FSP_M_FILE))