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>
This commit is contained in:
Patrick Rudolph 2019-07-07 13:10:56 +02:00 committed by Philipp Deppenwiese
parent f2ad8b3517
commit 4c3da7039d
4 changed files with 6 additions and 0 deletions

View File

@ -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. */

View File

@ -38,6 +38,7 @@ enum prog_type {
PROG_BL31,
PROG_BL32,
PROG_POSTCAR,
PROG_OPENSBI,
};
/*

View File

@ -56,6 +56,7 @@ DECLARE_REGION(dma_coherent)
DECLARE_REGION(soc_registers)
DECLARE_REGION(framebuffer)
DECLARE_REGION(pdpt)
DECLARE_REGION(opensbi)
DECLARE_REGION(bl31)
/*

View File

@ -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" },