Merge ACPI tables handling changes for v5.3.
This commit is contained in:
commit
d4ca763eed
|
@ -56,11 +56,7 @@ static ssize_t acpi_table_aml_write(struct config_item *cfg,
|
|||
if (!table->header)
|
||||
return -ENOMEM;
|
||||
|
||||
ACPI_INFO(("Host-directed Dynamic ACPI Table Load:"));
|
||||
ret = acpi_tb_install_and_load_table(
|
||||
ACPI_PTR_TO_PHYSADDR(table->header),
|
||||
ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, FALSE,
|
||||
&table->index);
|
||||
ret = acpi_load_table(table->header);
|
||||
if (ret) {
|
||||
kfree(table->header);
|
||||
table->header = NULL;
|
||||
|
|
|
@ -297,6 +297,17 @@ acpi_status acpi_load_table(struct acpi_table_header *table)
|
|||
status = acpi_tb_install_and_load_table(ACPI_PTR_TO_PHYSADDR(table),
|
||||
ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL,
|
||||
FALSE, &table_index);
|
||||
|
||||
if (ACPI_SUCCESS(status)) {
|
||||
/* Complete the initialization/resolution of package objects */
|
||||
|
||||
status = acpi_ns_walk_namespace(ACPI_TYPE_PACKAGE,
|
||||
ACPI_ROOT_OBJECT,
|
||||
ACPI_UINT32_MAX, 0,
|
||||
acpi_ns_init_one_package,
|
||||
NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
return_ACPI_STATUS(status);
|
||||
}
|
||||
|
||||
|
|
|
@ -490,16 +490,17 @@ static u8 __init acpi_table_checksum(u8 *buffer, u32 length)
|
|||
|
||||
/* All but ACPI_SIG_RSDP and ACPI_SIG_FACS: */
|
||||
static const char * const table_sigs[] = {
|
||||
ACPI_SIG_BERT, ACPI_SIG_CPEP, ACPI_SIG_ECDT, ACPI_SIG_EINJ,
|
||||
ACPI_SIG_ERST, ACPI_SIG_HEST, ACPI_SIG_MADT, ACPI_SIG_MSCT,
|
||||
ACPI_SIG_SBST, ACPI_SIG_SLIT, ACPI_SIG_SRAT, ACPI_SIG_ASF,
|
||||
ACPI_SIG_BOOT, ACPI_SIG_DBGP, ACPI_SIG_DMAR, ACPI_SIG_HPET,
|
||||
ACPI_SIG_IBFT, ACPI_SIG_IVRS, ACPI_SIG_MCFG, ACPI_SIG_MCHI,
|
||||
ACPI_SIG_SLIC, ACPI_SIG_SPCR, ACPI_SIG_SPMI, ACPI_SIG_TCPA,
|
||||
ACPI_SIG_UEFI, ACPI_SIG_WAET, ACPI_SIG_WDAT, ACPI_SIG_WDDT,
|
||||
ACPI_SIG_WDRT, ACPI_SIG_DSDT, ACPI_SIG_FADT, ACPI_SIG_PSDT,
|
||||
ACPI_SIG_RSDT, ACPI_SIG_XSDT, ACPI_SIG_SSDT, ACPI_SIG_IORT,
|
||||
ACPI_SIG_NFIT, ACPI_SIG_HMAT, ACPI_SIG_PPTT, NULL };
|
||||
ACPI_SIG_BERT, ACPI_SIG_BGRT, ACPI_SIG_CPEP, ACPI_SIG_ECDT,
|
||||
ACPI_SIG_EINJ, ACPI_SIG_ERST, ACPI_SIG_HEST, ACPI_SIG_MADT,
|
||||
ACPI_SIG_MSCT, ACPI_SIG_SBST, ACPI_SIG_SLIT, ACPI_SIG_SRAT,
|
||||
ACPI_SIG_ASF, ACPI_SIG_BOOT, ACPI_SIG_DBGP, ACPI_SIG_DMAR,
|
||||
ACPI_SIG_HPET, ACPI_SIG_IBFT, ACPI_SIG_IVRS, ACPI_SIG_MCFG,
|
||||
ACPI_SIG_MCHI, ACPI_SIG_SLIC, ACPI_SIG_SPCR, ACPI_SIG_SPMI,
|
||||
ACPI_SIG_TCPA, ACPI_SIG_UEFI, ACPI_SIG_WAET, ACPI_SIG_WDAT,
|
||||
ACPI_SIG_WDDT, ACPI_SIG_WDRT, ACPI_SIG_DSDT, ACPI_SIG_FADT,
|
||||
ACPI_SIG_PSDT, ACPI_SIG_RSDT, ACPI_SIG_XSDT, ACPI_SIG_SSDT,
|
||||
ACPI_SIG_IORT, ACPI_SIG_NFIT, ACPI_SIG_HMAT, ACPI_SIG_PPTT,
|
||||
NULL };
|
||||
|
||||
#define ACPI_HEADER_SIZE sizeof(struct acpi_table_header)
|
||||
|
||||
|
|
Loading…
Reference in New Issue