1 /****************************************************************************** 2 * 3 * Module Name: ahtable - Table of known ACPI tables with descriptions 4 * 5 *****************************************************************************/ 6 7 /* 8 * Copyright (C) 2000 - 2023, Intel Corp. 9 * All rights reserved. 10 * 11 * Redistribution and use in source and binary forms, with or without 12 * modification, are permitted provided that the following conditions 13 * are met: 14 * 1. Redistributions of source code must retain the above copyright 15 * notice, this list of conditions, and the following disclaimer, 16 * without modification. 17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18 * substantially similar to the "NO WARRANTY" disclaimer below 19 * ("Disclaimer") and any redistribution must be conditioned upon 20 * including a substantially similar Disclaimer requirement for further 21 * binary redistribution. 22 * 3. Neither the names of the above-listed copyright holders nor the names 23 * of any contributors may be used to endorse or promote products derived 24 * from this software without specific prior written permission. 25 * 26 * Alternatively, this software may be distributed under the terms of the 27 * GNU General Public License ("GPL") version 2 as published by the Free 28 * Software Foundation. 29 * 30 * NO WARRANTY 31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41 * POSSIBILITY OF SUCH DAMAGES. 42 */ 43 44 #include "acpi.h" 45 #include "accommon.h" 46 47 48 /* Local prototypes */ 49 50 const AH_TABLE * 51 AcpiAhGetTableInfo ( 52 char *Signature); 53 54 extern const AH_TABLE AcpiGbl_SupportedTables[]; 55 56 57 /******************************************************************************* 58 * 59 * FUNCTION: AcpiAhGetTableInfo 60 * 61 * PARAMETERS: Signature - ACPI signature (4 chars) to match 62 * 63 * RETURN: Pointer to a valid AH_TABLE. Null if no match found. 64 * 65 * DESCRIPTION: Find a match in the "help" table of supported ACPI tables 66 * 67 ******************************************************************************/ 68 69 const AH_TABLE * 70 AcpiAhGetTableInfo ( 71 char *Signature) 72 { 73 const AH_TABLE *Info; 74 75 76 for (Info = AcpiGbl_SupportedTables; Info->Signature; Info++) 77 { 78 if (ACPI_COMPARE_NAMESEG (Signature, Info->Signature)) 79 { 80 return (Info); 81 } 82 } 83 84 return (NULL); 85 } 86 87 88 /* 89 * Note: Any tables added here should be duplicated within AcpiDmTableData 90 * in the file common/dmtable.c 91 */ 92 const AH_TABLE AcpiGbl_SupportedTables[] = 93 { 94 {ACPI_SIG_AEST, "Arm Error Source Table"}, 95 {ACPI_SIG_AGDI, "Arm Generic Diagnostic Dump and Reset Device Interface Table"}, 96 {ACPI_SIG_ASF, "Alert Standard Format Table"}, 97 {ACPI_SIG_ASPT, "AMD Secure Processor Table"}, 98 {ACPI_SIG_BDAT, "BIOS Data ACPI Table"}, 99 {ACPI_SIG_BERT, "Boot Error Record Table"}, 100 {ACPI_SIG_BGRT, "Boot Graphics Resource Table"}, 101 {ACPI_SIG_BOOT, "Simple Boot Flag Table"}, 102 {ACPI_SIG_CCEL, "CC-Event Log Table"}, 103 {ACPI_SIG_CDAT, "Coherent Device Attribute Table"}, 104 {ACPI_SIG_CEDT, "CXL Early Discovery Table"}, 105 {ACPI_SIG_CPEP, "Corrected Platform Error Polling Table"}, 106 {ACPI_SIG_CSRT, "Core System Resource Table"}, 107 {ACPI_SIG_DBG2, "Debug Port Table type 2"}, 108 {ACPI_SIG_DBGP, "Debug Port Table"}, 109 {ACPI_SIG_DMAR, "DMA Remapping Table"}, 110 {ACPI_SIG_DRTM, "Dynamic Root of Trust for Measurement Table"}, 111 {ACPI_SIG_DSDT, "Differentiated System Description Table (AML table)"}, 112 {ACPI_SIG_ECDT, "Embedded Controller Boot Resources Table"}, 113 {ACPI_SIG_EINJ, "Error Injection Table"}, 114 {ACPI_SIG_ERST, "Error Record Serialization Table"}, 115 {ACPI_SIG_FACS, "Firmware ACPI Control Structure"}, 116 {ACPI_SIG_FADT, "Fixed ACPI Description Table (FADT)"}, 117 {ACPI_SIG_FPDT, "Firmware Performance Data Table"}, 118 {ACPI_SIG_GTDT, "Generic Timer Description Table"}, 119 {ACPI_SIG_HEST, "Hardware Error Source Table"}, 120 {ACPI_SIG_HMAT, "Heterogeneous Memory Attributes Table"}, 121 {ACPI_SIG_HPET, "High Precision Event Timer Table"}, 122 {ACPI_SIG_IORT, "IO Remapping Table"}, 123 {ACPI_SIG_IVRS, "I/O Virtualization Reporting Structure"}, 124 {ACPI_SIG_LPIT, "Low Power Idle Table"}, 125 {ACPI_SIG_MADT, "Multiple APIC Description Table (MADT)"}, 126 {ACPI_SIG_MCFG, "Memory Mapped Configuration Table"}, 127 {ACPI_SIG_MCHI, "Management Controller Host Interface Table"}, 128 {ACPI_SIG_MPAM, "Memory System Resource Partitioning and Monitoring Table"}, 129 {ACPI_SIG_MPST, "Memory Power State Table"}, 130 {ACPI_SIG_MSCT, "Maximum System Characteristics Table"}, 131 {ACPI_SIG_MSDM, "Microsoft Data Management Table"}, 132 {ACPI_SIG_NFIT, "NVDIMM Firmware Interface Table"}, 133 {ACPI_SIG_NHLT, "Non HD Audio Link Table"}, 134 {ACPI_SIG_PCCT, "Platform Communications Channel Table"}, 135 {ACPI_SIG_PDTT, "Platform Debug Trigger Table"}, 136 {ACPI_SIG_PHAT, "Platform Health Assessment Table"}, 137 {ACPI_SIG_PMTT, "Platform Memory Topology Table"}, 138 {ACPI_SIG_PPTT, "Processor Properties Topology Table"}, 139 {ACPI_SIG_PRMT, "Platform Runtime Mechanism Table"}, 140 {ACPI_SIG_RASF, "RAS Features Table"}, 141 {ACPI_SIG_RAS2, "RAS2 Features Table"}, 142 {ACPI_SIG_RHCT, "RISC-V Hart Capabilities Table"}, 143 {ACPI_SIG_RGRT, "Regulatory Graphics Resource Table"}, 144 {ACPI_RSDP_NAME,"Root System Description Pointer"}, 145 {ACPI_SIG_RSDT, "Root System Description Table"}, 146 {ACPI_SIG_S3PT, "S3 Performance Table"}, 147 {ACPI_SIG_SBST, "Smart Battery Specification Table"}, 148 {ACPI_SIG_SDEI, "Software Delegated Exception Interface Table"}, 149 {ACPI_SIG_SDEV, "Secure Devices Table"}, 150 {ACPI_SIG_SLIC, "Software Licensing Description Table"}, 151 {ACPI_SIG_SLIT, "System Locality Information Table"}, 152 {ACPI_SIG_SPCR, "Serial Port Console Redirection Table"}, 153 {ACPI_SIG_SPMI, "Server Platform Management Interface Table"}, 154 {ACPI_SIG_SRAT, "System Resource Affinity Table"}, 155 {ACPI_SIG_SSDT, "Secondary System Description Table (AML table)"}, 156 {ACPI_SIG_STAO, "Status Override Table"}, 157 {ACPI_SIG_SVKL, "Storage Volume Key Location Table"}, 158 {ACPI_SIG_TCPA, "Trusted Computing Platform Alliance Table"}, 159 {ACPI_SIG_TDEL, "TD-Event Log Table"}, 160 {ACPI_SIG_TPM2, "Trusted Platform Module hardware interface Table"}, 161 {ACPI_SIG_UEFI, "UEFI Boot Optimization Table"}, 162 {ACPI_SIG_VIOT, "Virtual I/O Translation Table"}, 163 {ACPI_SIG_WAET, "Windows ACPI Emulated Devices Table"}, 164 {ACPI_SIG_WDAT, "Watchdog Action Table"}, 165 {ACPI_SIG_WDDT, "Watchdog Description Table"}, 166 {ACPI_SIG_WDRT, "Watchdog Resource Table"}, 167 {ACPI_SIG_WPBT, "Windows Platform Binary Table"}, 168 {ACPI_SIG_WSMT, "Windows SMM Security Mitigations Table"}, 169 {ACPI_SIG_XENV, "Xen Environment Table"}, 170 {ACPI_SIG_XSDT, "Extended System Description Table"}, 171 {NULL, NULL} 172 }; 173