firmware: Introduce "options" in "struct sbi_scratch"

Introduce "options" in "struct sbi_scratch" and firmware can update
it based on optional compile time flags before calling sbi_init().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Bin Meng
2019-03-27 22:57:20 +08:00
committed by Anup Patel
parent e921fc2691
commit 132f3e024b
3 changed files with 14 additions and 0 deletions

View File

@@ -81,6 +81,12 @@ _scratch_init:
la a4, _hartid_to_scratch
REG_S a4, SBI_SCRATCH_HARTID_TO_SCRATCH_OFFSET(tp)
REG_S zero, SBI_SCRATCH_TMP0_OFFSET(tp)
#ifdef FW_OPTIONS
li a4, FW_OPTIONS
REG_S a4, SBI_SCRATCH_OPTIONS_OFFSET(tp)
#else
REG_S zero, SBI_SCRATCH_OPTIONS_OFFSET(tp)
#endif
add t1, t1, t2
blt t1, s7, _scratch_init

View File

@@ -50,3 +50,7 @@ endif
ifdef FW_PAYLOAD_FDT_ADDR
firmware-genflags-$(FW_PAYLOAD) += -DFW_PAYLOAD_FDT_ADDR=$(FW_PAYLOAD_FDT_ADDR)
endif
ifdef FW_OPTIONS
firmware-genflags-y += -DFW_OPTIONS=$(FW_OPTIONS)
endif