diff options
| author | Michael Brown | 2021-09-08 13:53:12 +0200 |
|---|---|---|
| committer | Michael Brown | 2021-09-08 15:46:30 +0200 |
| commit | 02ec659b73b0998a275e79ec06a5b7d674dfad07 (patch) | |
| tree | 8bcc4f8f36543cc2f3fbe88e999155c8cbc07617 /src/include | |
| parent | [efi] Record cached ProxyDHCPOFFER and PXEBSACK, if present (diff) | |
| download | ipxe-02ec659b73b0998a275e79ec06a5b7d674dfad07.tar.gz ipxe-02ec659b73b0998a275e79ec06a5b7d674dfad07.tar.xz ipxe-02ec659b73b0998a275e79ec06a5b7d674dfad07.zip | |
[acpi] Generalise DSDT/SSDT data extraction logic
Allow for the DSDT/SSDT signature-scanning and value extraction code
to be reused for extracting a pass-through MAC address.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/ipxe/acpi.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/include/ipxe/acpi.h b/src/include/ipxe/acpi.h index 81ef7ff76..7df3ec21c 100644 --- a/src/include/ipxe/acpi.h +++ b/src/include/ipxe/acpi.h @@ -387,7 +387,9 @@ acpi_describe ( struct interface *interface ); typeof ( struct acpi_descriptor * ( object_type ) ) extern void acpi_fix_checksum ( struct acpi_header *acpi ); -extern int acpi_sx ( uint32_t signature ); +extern int acpi_extract ( uint32_t signature, void *data, + int ( * extract ) ( userptr_t zsdt, size_t len, + size_t offset, void *data ) ); extern void acpi_add ( struct acpi_descriptor *desc ); extern void acpi_del ( struct acpi_descriptor *desc ); extern int acpi_install ( int ( * install ) ( struct acpi_header *acpi ) ); |
