Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 128026
b: refs/heads/master
c: c87609f
h: refs/heads/master
v: v3
  • Loading branch information
Bob Moore authored and Len Brown committed Dec 30, 2008
1 parent 2a16cf2 commit 6a18164
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 34830726c9761f66299f4d82c4357e5faec54013
refs/heads/master: c87609f31a8641009641fc1d19dac75e6de06fd4
17 changes: 15 additions & 2 deletions trunk/drivers/acpi/tables/tbfadt.c
Original file line number Diff line number Diff line change
Expand Up @@ -286,14 +286,27 @@ static void acpi_tb_convert_fadt(void)

acpi_gbl_FADT.header.length = sizeof(struct acpi_table_fadt);

/* Expand the 32-bit FACS and DSDT addresses to 64-bit as necessary */

/*
* Expand the 32-bit FACS and DSDT addresses to 64-bit as necessary.
* Later code will always use the X 64-bit field. Also, check for an
* address mismatch between the 32-bit and 64-bit address fields
* (FIRMWARE_CTRL/X_FIRMWARE_CTRL, DSDT/X_DSDT) which would indicate
* the presence of two FACS or two DSDT tables.
*/
if (!acpi_gbl_FADT.Xfacs) {
acpi_gbl_FADT.Xfacs = (u64) acpi_gbl_FADT.facs;
} else if (acpi_gbl_FADT.facs &&
(acpi_gbl_FADT.Xfacs != (u64) acpi_gbl_FADT.facs)) {
ACPI_WARNING((AE_INFO,
"32/64 FACS address mismatch in FADT - two FACS tables!"));
}

if (!acpi_gbl_FADT.Xdsdt) {
acpi_gbl_FADT.Xdsdt = (u64) acpi_gbl_FADT.dsdt;
} else if (acpi_gbl_FADT.dsdt &&
(acpi_gbl_FADT.Xdsdt != (u64) acpi_gbl_FADT.dsdt)) {
ACPI_WARNING((AE_INFO,
"32/64 DSDT address mismatch in FADT - two DSDT tables!"));
}

/*
Expand Down

0 comments on commit 6a18164

Please sign in to comment.