ACPI: Maintain a list of ACPI memory mapped I/O remappings
authorMyron Stowe <myron.stowe@hp.com>
Thu, 21 Oct 2010 20:23:53 +0000 (14:23 -0600)
committerLen Brown <len.brown@intel.com>
Mon, 25 Oct 2010 03:25:52 +0000 (23:25 -0400)
For memory mapped I/O (MMIO) remappings, add a list to maintain the
remappings and augment the corresponding mapping and unmapping interface
routines (acpi_os_map_memory() and acpi_os_unmap_memory()) to
dynamically add to, and delete from, the list.

The current ACPI I/O accessing methods - acpi_read() and acpi_write() -
end up calling ioremap() when accessing MMIO.  This prevents use of these
methods within interrupt context (IRQ and/or NMI), since ioremap() may
block to allocate memory.  Maintaining a list of MMIO remappings enables
accesses to such areas from within interrupt context provided they have
been pre-mapped.

Signed-off-by: Myron Stowe <myron.stowe@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/osl.c

Simple merge