Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f17d9cbf authored by Matthew Garrett's avatar Matthew Garrett Committed by Len Brown
Browse files

ACPICA: Fix access width for reset vector



Section 4.7.3.6 of the ACPI specification requires that the register width
of the reset vector be 8 bits. Windows simply hardcodes the access to be
a byte and ignores the width provided in the FADT, so make sure that we
do the same.

Signed-off-by: default avatarMatthew Garrett <mjg@redhat.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 521cb40b
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -80,14 +80,14 @@ acpi_status acpi_reset(void)


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