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

Commit c1637e9c authored by Bob Moore's avatar Bob Moore Committed by Len Brown
Browse files

ACPICA: Add write support for DataTable operation regions



The original implementation only supported reading from a DataTable
region. However, some machines have been seen that actually write
to the ACPI table contained in such a region. This change adds
support for writing to a DataTable region.

Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
Signed-off-by: default avatarLin Ming <ming.m.lin@intel.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 333b04ae
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -491,8 +491,10 @@ acpi_ex_data_table_space_handler(u32 function,
{
	ACPI_FUNCTION_TRACE(ex_data_table_space_handler);

	/* Perform the memory read or write */

	/*
	 * Perform the memory read or write. The bit_width was already
	 * validated.
	 */
	switch (function) {
	case ACPI_READ:

@@ -502,9 +504,14 @@ acpi_ex_data_table_space_handler(u32 function,
		break;

	case ACPI_WRITE:

		ACPI_MEMCPY(ACPI_PHYSADDR_TO_PTR(address),
			    ACPI_CAST_PTR(char, value), ACPI_DIV_8(bit_width));
		break;

	default:

		return_ACPI_STATUS(AE_SUPPORT);
		return_ACPI_STATUS(AE_BAD_PARAMETER);
	}

	return_ACPI_STATUS(AE_OK);