diff options
Diffstat (limited to 'drivers/acpi/acpica/hwvalid.c')
| -rw-r--r-- | drivers/acpi/acpica/hwvalid.c | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/hwvalid.c b/drivers/acpi/acpica/hwvalid.c index c10d587c164..e1d9c777b21 100644 --- a/drivers/acpi/acpica/hwvalid.c +++ b/drivers/acpi/acpica/hwvalid.c @@ -222,6 +222,12 @@ acpi_status acpi_hw_read_port(acpi_io_address address, u32 *value, u32 width)  	u32 one_byte;  	u32 i; +	/* Truncate address to 16 bits if requested */ + +	if (acpi_gbl_truncate_io_addresses) { +		address &= ACPI_UINT16_MAX; +	} +  	/* Validate the entire request and perform the I/O */  	status = acpi_hw_validate_io_request(address, width); @@ -279,6 +285,12 @@ acpi_status acpi_hw_write_port(acpi_io_address address, u32 value, u32 width)  	acpi_status status;  	u32 i; +	/* Truncate address to 16 bits if requested */ + +	if (acpi_gbl_truncate_io_addresses) { +		address &= ACPI_UINT16_MAX; +	} +  	/* Validate the entire request and perform the I/O */  	status = acpi_hw_validate_io_request(address, width);  |