bhyve: allow device specific DSDT entries
This feature will be used by future commits to implement a device specific method (_DSM) for TPM devices. Reviewed by: markj MFC after: 1 week Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D39321
This commit is contained in:
@@ -190,6 +190,11 @@ acpi_device_write_dsdt(const struct acpi_device *const dev)
|
||||
BASL_EXEC(acpi_device_write_dsdt_crs(dev));
|
||||
dsdt_unindent(4);
|
||||
dsdt_line(" })");
|
||||
if (dev->emul->write_dsdt != NULL) {
|
||||
dsdt_indent(3);
|
||||
BASL_EXEC(dev->emul->write_dsdt(dev));
|
||||
dsdt_unindent(3);
|
||||
}
|
||||
dsdt_line(" }");
|
||||
dsdt_line(" }");
|
||||
|
||||
|
||||
@@ -23,12 +23,15 @@ struct acpi_device;
|
||||
* @param hid Used as _HID in the DSDT.
|
||||
* @param build_table Called to build a device specific ACPI table like the TPM2
|
||||
* table.
|
||||
* @param write_dsdt Called to append the DSDT with device specific
|
||||
* information.
|
||||
*/
|
||||
struct acpi_device_emul {
|
||||
const char *name;
|
||||
const char *hid;
|
||||
|
||||
int (*build_table)(const struct acpi_device *dev);
|
||||
int (*write_dsdt)(const struct acpi_device *dev);
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user