For dumping the DSDT (-o option), be sure to use the X_DSDT address if
appropriate. This should be the last change to make ia64 work.
This commit is contained in:
parent
c2c6548b3a
commit
2e71eb1257
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=120044
@ -792,7 +792,13 @@ dsdt_from_fadt(struct FADTbody *fadt)
|
||||
{
|
||||
struct ACPIsdt *sdt;
|
||||
|
||||
sdt = (struct ACPIsdt *)acpi_map_sdt(fadt->dsdt_ptr);
|
||||
/* Use the DSDT address if it is valid and version 2, else X_DSDT */
|
||||
if (addr_size == 4 ||
|
||||
(addr_size == 8 && fadt->dsdt_ptr != 0 &&
|
||||
(fadt->x_dsdt_ptr & 0xffffffff) != fadt->dsdt_ptr))
|
||||
sdt = (struct ACPIsdt *)acpi_map_sdt(fadt->dsdt_ptr);
|
||||
else
|
||||
sdt = (struct ACPIsdt *)acpi_map_sdt(fadt->x_dsdt_ptr);
|
||||
if (acpi_checksum(sdt, sdt->len))
|
||||
errx(1, "DSDT is corrupt\n");
|
||||
return (sdt);
|
||||
|
Loading…
Reference in New Issue
Block a user