1. 17 1月, 2012 1 次提交
    • M
      ACPI: Export interfaces for ioremapping/iounmapping ACPI registers · 6f68c91c
      Myron Stowe 提交于
      Export remapping and unmapping interfaces - acpi_os_map_generic_address()
      and acpi_os_unmap_generic_address() - for ACPI generic registers that are
      backed by memory mapped I/O (MMIO).
      
      The acpi_os_map_generic_address() and acpi_os_unmap_generic_address()
      declarations may more properly belong in include/acpi/acpiosxf.h next to
      acpi_os_read_memory() but I believe that would require the ACPI CA making
      them an official part of the ACPI CA - OS interface.
      
      ACPI Generic Address Structure (GAS) reference (ACPI's fixed/generic
      hardware registers use the GAS format):
        ACPI Specification, Revision 4.0, Section 5.2.3.1, "Generic Address
        Structure"
      Signed-off-by: NMyron Stowe <myron.stowe@redhat.com>
      Acked-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      6f68c91c
  2. 25 2月, 2011 2 次提交
  3. 21 1月, 2011 1 次提交
    • R
      ACPI: Introduce acpi_os_ioremap() · 2d6d9fd3
      Rafael J. Wysocki 提交于
      Commit ca9b600b ("ACPI / PM: Make suspend_nvs_save() use
      acpi_os_map_memory()") attempted to prevent the code in osl.c and nvs.c
      from using different ioremap() variants by making the latter use
      acpi_os_map_memory() for mapping the NVS pages.  However, that also
      requires acpi_os_unmap_memory() to be used for unmapping them, which
      causes synchronize_rcu() to be executed many times in a row
      unnecessarily and introduces substantial delays during resume on some
      systems.
      
      Instead of using acpi_os_map_memory() for mapping the NVS pages in nvs.c
      introduce acpi_os_ioremap() calling ioremap_cache() and make the code in
      both osl.c and nvs.c use it.
      Reported-by: NJeff Chua <jeff.chua.linux@gmail.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2d6d9fd3