diff options
author | Michael Brown <mcb30@ipxe.org> | 2017-05-23 15:44:22 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2017-05-23 18:48:06 +0100 |
commit | 356f6c1b64d7a97746d1816cef8ca22bdd8d0b5d (patch) | |
tree | bcfdf9da0e520ac48f6fd3b5ddb37f804fde97d9 /src/config/config.c | |
parent | 993fd2b45140d071d7837ff502df771e87f14127 (diff) | |
download | ipxe-356f6c1b64d7a97746d1816cef8ca22bdd8d0b5d.tar.gz |
[acpi] Expose ACPI tables via settings mechanism
Allow values to be read from ACPI tables using the syntax
${acpi/<signature>.<index>.0.<offset>.<length>}
where <signature> is the ACPI table signature as a 32-bit hexadecimal
number (e.g. 0x41504093 for the 'APIC' signature on the MADT), <index>
is the index into the array of tables matching this signature,
<offset> is the byte offset within the table, and <length> is the
field length in bytes.
Numeric values are returned in reverse byte order, since ACPI numeric
values are usually little-endian.
For example:
${acpi/0x41504943.0.0.0.0} - entire MADT table in raw hex
${acpi/0x41504943.0.0.0x0a.6:string} - MADT table OEM ID
${acpi/0x41504943.0.0.0x24.4:uint32} - local APIC address
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/config/config.c')
-rw-r--r-- | src/config/config.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/config/config.c b/src/config/config.c index faf9aefa8..8adb1ed3f 100644 --- a/src/config/config.c +++ b/src/config/config.c @@ -337,6 +337,9 @@ REQUIRE_OBJECT ( memmap_settings ); #ifdef VRAM_SETTINGS REQUIRE_OBJECT ( vram_settings ); #endif +#ifdef ACPI_SETTINGS +REQUIRE_OBJECT ( acpi_settings ); +#endif /* * Drag in selected keyboard map |