diff options
author | Patrick Rudolph <patrick.rudolph@9elements.com> | 2019-07-07 13:10:56 +0200 |
---|---|---|
committer | Philipp Deppenwiese <zaolin.daisuki@gmail.com> | 2019-07-31 10:57:30 +0000 |
commit | 4c3da7039d187f6be780c4078c70d2dcff6c844c (patch) | |
tree | 9a7be122482e72ac0e885683566bab4cfc951991 | |
parent | f2ad8b35177bb4c1ca4ea78d299985c89adbfda2 (diff) | |
download | coreboot-4c3da7039d187f6be780c4078c70d2dcff6c844c.tar.xz |
lib/bootmem: Prepare for OpenSBI
Add a new bootmem memory type OpenSBI.
It's similar to BL31 on aarch64.
Required for OpenSBI integration.
Change-Id: I5ceafd5a295f4284e99e12f7ea2aa4c6d1dbb188
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34140
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
-rw-r--r-- | src/include/bootmem.h | 1 | ||||
-rw-r--r-- | src/include/program_loading.h | 1 | ||||
-rw-r--r-- | src/include/symbols.h | 1 | ||||
-rw-r--r-- | src/lib/bootmem.c | 3 |
4 files changed, 6 insertions, 0 deletions
diff --git a/src/include/bootmem.h b/src/include/bootmem.h index c935cb919f..2e33fcdf76 100644 --- a/src/include/bootmem.h +++ b/src/include/bootmem.h @@ -37,6 +37,7 @@ enum bootmem_type { BM_MEM_NVS, /* ACPI NVS Memory */ BM_MEM_UNUSABLE, /* Unusable address space */ BM_MEM_VENDOR_RSVD, /* Vendor Reserved */ + BM_MEM_OPENSBI, /* Risc-V OpenSBI */ BM_MEM_BL31, /* Arm64 BL31 exectuable */ BM_MEM_TABLE, /* Ram configuration tables are kept in */ /* Tags below this point are ignored for the OS table. */ diff --git a/src/include/program_loading.h b/src/include/program_loading.h index 5ac74bf238..6dec1920b8 100644 --- a/src/include/program_loading.h +++ b/src/include/program_loading.h @@ -38,6 +38,7 @@ enum prog_type { PROG_BL31, PROG_BL32, PROG_POSTCAR, + PROG_OPENSBI, }; /* diff --git a/src/include/symbols.h b/src/include/symbols.h index b67286ac2d..cc27275f88 100644 --- a/src/include/symbols.h +++ b/src/include/symbols.h @@ -56,6 +56,7 @@ DECLARE_REGION(dma_coherent) DECLARE_REGION(soc_registers) DECLARE_REGION(framebuffer) DECLARE_REGION(pdpt) +DECLARE_REGION(opensbi) DECLARE_REGION(bl31) /* diff --git a/src/lib/bootmem.c b/src/lib/bootmem.c index 01ad3e841b..45f7fe261d 100644 --- a/src/lib/bootmem.c +++ b/src/lib/bootmem.c @@ -59,6 +59,8 @@ static uint32_t bootmem_to_lb_tag(const enum bootmem_type tag) return LB_MEM_UNUSABLE; case BM_MEM_VENDOR_RSVD: return LB_MEM_VENDOR_RSVD; + case BM_MEM_OPENSBI: + return LB_MEM_RESERVED; case BM_MEM_BL31: return LB_MEM_RESERVED; case BM_MEM_TABLE: @@ -147,6 +149,7 @@ static const struct range_strings type_strings[] = { { BM_MEM_UNUSABLE, "UNUSABLE" }, { BM_MEM_VENDOR_RSVD, "VENDOR RESERVED" }, { BM_MEM_BL31, "BL31" }, + { BM_MEM_OPENSBI, "OPENSBI" }, { BM_MEM_TABLE, "CONFIGURATION TABLES" }, { BM_MEM_RAMSTAGE, "RAMSTAGE" }, { BM_MEM_PAYLOAD, "PAYLOAD" }, |