Deleted Added
full compact
28c28
< __FBSDID("$FreeBSD: head/sys/dev/acpica/acpi_quirk.c 150003 2005-09-11 18:39:03Z obrien $");
---
> __FBSDID("$FreeBSD: head/sys/dev/acpica/acpi_quirk.c 167814 2007-03-22 18:16:43Z jkim $");
50,51d49
< #define ACPI_TABLE_END (ACPI_TABLE_MAX + 1)
<
53c51
< int sig; /* Table signature to match */
---
> char sig[ACPI_NAME_SIZE]; /* Table signature to match */
144c142
< ACPI_TABLE_HEADER *hdr;
---
> ACPI_TABLE_HEADER fadt, dsdt, xsdt, *hdr;
150a149,155
> if (ACPI_FAILURE(AcpiGetTableHeader(ACPI_SIG_FADT, 0, &fadt)))
> bzero(&fadt, sizeof(fadt));
> if (ACPI_FAILURE(AcpiGetTableHeader(ACPI_SIG_DSDT, 0, &dsdt)))
> bzero(&fadt, sizeof(dsdt));
> if (ACPI_FAILURE(AcpiGetTableHeader(ACPI_SIG_XSDT, 0, &xsdt)))
> bzero(&fadt, sizeof(xsdt));
>
154,165c159,166
< for (match = entry->match; match->sig != ACPI_TABLE_END; match++) {
< switch (match->sig) {
< case ACPI_TABLE_FADT:
< hdr = (ACPI_TABLE_HEADER *)AcpiGbl_FADT;
< break;
< case ACPI_TABLE_DSDT:
< hdr = (ACPI_TABLE_HEADER *)AcpiGbl_DSDT;
< break;
< case ACPI_TABLE_XSDT:
< hdr = (ACPI_TABLE_HEADER *)AcpiGbl_XSDT;
< break;
< default:
---
> for (match = entry->match; match->sig[0] != '\0'; match++) {
> if (!strncmp(match->sig, "FADT", ACPI_NAME_SIZE))
> hdr = &fadt;
> else if (!strncmp(match->sig, ACPI_SIG_DSDT, ACPI_NAME_SIZE))
> hdr = &dsdt;
> else if (!strncmp(match->sig, ACPI_SIG_XSDT, ACPI_NAME_SIZE))
> hdr = &xsdt;
> else
167d167
< }
170c170
< if (!aq_match_header(hdr, match)) {
---
> if (aq_match_header(hdr, match) == FALSE) {