Skip to content

Commit

Permalink
Merge branch 'reset' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
Len Brown committed Mar 23, 2011
2 parents 5c129a8 + 95cf3e1 commit f7f28f7
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 10 deletions.
10 changes: 5 additions & 5 deletions drivers/acpi/acpica/hwxface.c
Original file line number Diff line number Diff line change
Expand Up @@ -80,14 +80,14 @@ acpi_status acpi_reset(void)

if (reset_reg->space_id == ACPI_ADR_SPACE_SYSTEM_IO) {
/*
* For I/O space, write directly to the OSL. This bypasses the port
* validation mechanism, which may block a valid write to the reset
* register.
* For I/O space, write directly to the OSL. This
* bypasses the port validation mechanism, which may
* block a valid write to the reset register. Spec
* section 4.7.3.6 requires register width to be 8.
*/
status =
acpi_os_write_port((acpi_io_address) reset_reg->address,
acpi_gbl_FADT.reset_value,
reset_reg->bit_width);
acpi_gbl_FADT.reset_value, 8);
} else {
/* Write the reset value to the reset register */

Expand Down
14 changes: 9 additions & 5 deletions drivers/acpi/reboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,15 @@ void acpi_reboot(void)

rr = &acpi_gbl_FADT.reset_register;

/* Is the reset register supported? */
if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER) ||
rr->bit_width != 8 || rr->bit_offset != 0)
/* ACPI reset register was only introduced with v2 of the FADT */

if (acpi_gbl_FADT.header.revision < 2)
return;

/* Is the reset register supported? The spec says we should be
* checking the bit width and bit offset, but Windows ignores
* these fields */
if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER))
return;

reset_value = acpi_gbl_FADT.reset_value;
Expand Down Expand Up @@ -45,6 +51,4 @@ void acpi_reboot(void)
acpi_reset();
break;
}
/* Wait ten seconds */
acpi_os_stall(10000000);
}

0 comments on commit f7f28f7

Please sign in to comment.