diff options
author | Sunil V L <sunilvl@ventanamicro.com> | 2022-09-23 12:05:42 +0530 |
---|---|---|
committer | Sunil V L <sunilvl@ventanamicro.com> | 2023-02-13 10:48:59 +0530 |
commit | bd6d1ae1e13abe78e149c8b61b4bc7bc7feab015 (patch) | |
tree | a0e9b54252512705a2319f203828212662a062f6 | |
parent | 1aaa3da8c7dd710eeb68fbeeda0b25f10009628f (diff) | |
download | acpica-bd6d1ae1e13abe78e149c8b61b4bc7bc7feab015.tar.gz |
MADT: Add RISC-V INTC interrupt controller
The ECR to add RISC-V INTC interrupt controller is approved by
the UEFI forum and will be available in the next revision of
the ACPI specification.
Reference: Mantis ID: 2348
Signed-off-by: Sunil V L <sunilvl@ventanamicro.com>
-rw-r--r-- | source/common/dmtable.c | 1 | ||||
-rw-r--r-- | source/include/actbl2.h | 21 |
2 files changed, 21 insertions, 1 deletions
diff --git a/source/common/dmtable.c b/source/common/dmtable.c index d5de9c286..a0fa2b7dd 100644 --- a/source/common/dmtable.c +++ b/source/common/dmtable.c @@ -421,6 +421,7 @@ static const char *AcpiDmMadtSubnames[] = "MSI Interrupt Controller", /* ACPI_MADT_TYPE_MSI_PIC */ "Bridge I/O Interrupt Controller", /* ACPI_MADT_TYPE_BIO_PIC */ "LPC Interrupt Controller", /* ACPI_MADT_TYPE_LPC_PIC */ + "RISC-V Interrupt Controller", /* ACPI_MADT_TYPE_RINTC */ "Unknown Subtable Type", /* Reserved */ "Types 80-FF are used for OEM data" /* Reserved for OEM data */ }; diff --git a/source/include/actbl2.h b/source/include/actbl2.h index 6dc2efd0c..a7773ac54 100644 --- a/source/include/actbl2.h +++ b/source/include/actbl2.h @@ -1135,7 +1135,8 @@ enum AcpiMadtType ACPI_MADT_TYPE_MSI_PIC = 21, ACPI_MADT_TYPE_BIO_PIC = 22, ACPI_MADT_TYPE_LPC_PIC = 23, - ACPI_MADT_TYPE_RESERVED = 24, /* 24 to 0x7F are reserved */ + ACPI_MADT_TYPE_RINTC = 24, + ACPI_MADT_TYPE_RESERVED = 25, /* 25 to 0x7F are reserved */ ACPI_MADT_TYPE_OEM_RESERVED = 0x80 /* 0x80 to 0xFF are reserved for OEM use */ }; @@ -1548,6 +1549,24 @@ enum AcpiMadtLpcPicVersion { ACPI_MADT_LPC_PIC_VERSION_RESERVED = 2 /* 2 and greater are reserved */ }; +/* 24: RISC-V INTC */ +struct acpi_madt_rintc { + ACPI_SUBTABLE_HEADER Header; + UINT8 Version; + UINT8 Reserved; + UINT32 Flags; + UINT64 HartId; + UINT32 Uid; /* ACPI processor UID */ +}; + +/* Values for RISC-V INTC Version field above */ + +enum AcpiMadtRintcVersion { + ACPI_MADT_RINTC_VERSION_NONE = 0, + ACPI_MADT_RINTC_VERSION_V1 = 1, + ACPI_MADT_RINTC_VERSION_RESERVED = 2 /* 2 and greater are reserved */ +}; + /* 80: OEM data */ typedef struct acpi_madt_oem_data |