1. 31 10月, 2013 8 次提交
    • L
      ACPICA: Update namespace dump code. · 98f7eb87
      Lv Zheng 提交于
      This patch merges namespace dump code updates from ACPICA upstream to
      reduce the source code differences between Linux and ACPICA upstream.  No
      functional changes as currently nsdumpdv.c is not used by Linux.
      
      This patch does not affect the generation of the Linux kernel binary.
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      98f7eb87
    • L
      ACPICA: Update check for setting the ANOBJ_IS_EXTERNAL flag. · 99567bc5
      Lv Zheng 提交于
      The ANOBJ_IS_EXTERNAL flag is only used by an ACPICA utilities - iASL.
      
      No functional change for the Linux kernel should results from applying
      this patch, but it helps to reduce source code differences between
      the kernel and ACPICA upstream.
      
      [rjw: Subject and changelog]
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      99567bc5
    • L
      ACPICA: Update default space handlers. · bb42cc22
      Lv Zheng 提交于
      This patch adds code that is already in ACPICA upstream, so applying
      it can help to reduce the source code differences between Linux and
      ACPICA upstream.
      
      This code fragment is only useful for ACPICA utilities and no
      functional changes to the Linux kernel should result from it.
      
      [rjw: Changelog]
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      bb42cc22
    • L
      ACPICA: Fix indentation issues for macro invocations. · cd27d79f
      Lv Zheng 提交于
      During the automatic translation of the upstream ACPICA source code
      into Linux kernel source code some extra white spaces are added by
      the "indent" program at the beginning of each line which is an
      invocation of a macro and there is no ";" at the end of the line.
      
      For this reason, a new mode has been added to the translation scripts
      to remove the extra spaces inserted before invoking such macros and add
      an empty line between the invocations of such macros (like the other
      function declarations).  This new mode is executed after executing
      "indent" during the Linux release process.  Consequently, some
      existing ACPICA source code in the Linux kernel tree needs to be
      adjusted to allow the new scripts to work correctly.
      
      The affected macros and files are:
       1. ACPI_HW_DEPENDENT_RETURN (acpixf.h/acdebug.h/acevents.h):
          This macro is used as a wrapper for hardware dependent APIs to offer
          a stub when the reduced hardware is configured during compilation.
       2. ACPI_EXPORT_SYMBOL (utglobal.c):
          This macro is used by Linux to export symbols to be found by Linux
          modules.  All such invocations are well formatted except those
          exported as global variables.
      
      This can help to reduce the source code differences between Linux
      and upstream ACPICA, and also help to automate the release process.
      No functional or binary generation changes should result from it.
      Lv Zheng.
      
      [rjw: Changelog]
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      cd27d79f
    • L
      ACPICA: Deploy ACPI_EXPORT_SYMBOL_INIT for main ACPICA initialization interfaces. · d21f600b
      Lv Zheng 提交于
      This changes can reduce source code differences between Linux and ACPICA
      upstream to help improving the release automation.
      
      The side effect of applying this patch in Linux is:
      1. Some ACPICA initialization/termination APIs are no longer exported in
         Linux, these include:
          acpi_load_tables
          acpi_initialize_subsystem
          acpi_enable_subsystem
          acpi_initialize_objects
          acpi_terminate
      2. This patch does not affect the following APIs as they are currently not
         marked with ACPI_EXPORT_SYMBOL in Linux:
          acpi_reallocate_root_table
          acpi_initialize_tables
      Such functions should not be exported as they are internal to ACPI
      subsystem in Linux, and will only be invoked inside of ACPI subsystem's
      initialization routines marked with __init and termination routines marked
      with __exit.  While on other OSPMs, such functions may still need to be
      exported.
      
      Thus this patch adds the configurability for ACPICA, so that it leaves
      OSPMs to determine if the __init/__exit marked functions should be exported
      or not.  Lv Zheng.
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      d21f600b
    • L
      ACPICA: Linuxize: Change indentation of C labels. · 10622bf8
      Lv Zheng 提交于
      It is reported by kernel build test systems that all ACPICA source
      files in the kernel tree have incorrect label indentation.  This
      patch changes default indent option used in the release process to
      fix this bug.  Lv Zheng.
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      10622bf8
    • B
      ACPICA: Clarify ACPI_FREE_BUFFER usage. · bb1cab3d
      Bob Moore 提交于
      Add a comment to clarify reason for using ACPI_FREE_BUFFER directly
      instead of ACPI_FREE.
      
      In addition to that, change one instance in which ACPI_FREE_BUFFER()
      should be used instead of ACPI_FREE().
      
      [rjw: Subject and changelog]
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      bb1cab3d
    • L
      ACPICA: Add EXPORT_ACPI_INTERFACES macro to external interface modules. · 839e928f
      Lv Zheng 提交于
      For Linux, there are no functional changes/binary generation differences
      introduced by this patch.
      
      This change adds a new macro to all files that contain external ACPICA
      interfaces. It can be detected and used by the host (via the host-specific
      header) for any special processing required for such modules. Lv Zheng.
      Signed-off-by: NLv Zheng <lv.zheng@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      839e928f
  2. 30 10月, 2013 8 次提交
  3. 24 9月, 2013 11 次提交
  4. 10 9月, 2013 1 次提交
  5. 06 9月, 2013 1 次提交
  6. 02 9月, 2013 1 次提交
  7. 31 8月, 2013 1 次提交
  8. 30 8月, 2013 2 次提交
    • N
      PCI/ACPI: Fix _OSC ordering to allow PCIe hotplug use when available · 3dc48af3
      Neil Horman 提交于
      This fixes the problem of acpiphp claiming slots that should be managed
      by pciehp, which may keep ExpressCard slots from working.
      
      The acpiphp driver claims PCIe slots unless the BIOS has granted us
      control of PCIe native hotplug via _OSC.  Prior to v3.10, the acpiphp
      .add method (add_bridge()) was always called *after* we had requested
      native hotplug control with _OSC.
      
      But after 3b63aaa7 ("PCI: acpiphp: Do not use ACPI PCI subdriver
      mechanism"), which appeared in v3.10, acpiphp initialization is done
      during the bus scan via the pcibios_add_bus() hook, and this happens
      *before* we request native hotplug control.
      
      Therefore, acpiphp doesn't know yet whether the BIOS will grant control,
      and it claims slots that we should be handling with native hotplug.
      
      This patch requests native hotplug control earlier, so we know whether
      the BIOS granted it to us before we initialize acpiphp.
      
      To avoid reintroducing the ASPM issue fixed by b8178f13 ('Revert
      "PCI/ACPI: Request _OSC control before scanning PCI root bus"'), we run
      _OSC earlier but defer the actual ASPM calls until after the bus scan is
      complete.
      
      Tested successfully by myself.
      
      [bhelgaas: changelog, mark for stable]
      Reference: https://bugzilla.kernel.org/show_bug.cgi?id=60736Signed-off-by: NNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NYinghai Lu <yinghai@kernel.org>
      CC: stable@vger.kernel.org	# v3.10+
      CC: Len Brown <lenb@kernel.org>
      CC: "Rafael J. Wysocki" <rjw@sisk.pl>
      3dc48af3
    • R
      ACPI / hotplug: Remove containers synchronously · f943db40
      Rafael J. Wysocki 提交于
      The current protocol for handling hot remove of containers is very
      fragile and causes acpi_eject_store() to acquire acpi_scan_lock
      which may deadlock with the removal of the device that it is called
      for (the reason is that device sysfs attributes cannot be removed
      while their callbacks are being executed and ACPI device objects
      are removed under acpi_scan_lock).
      
      The problem is related to the fact that containers are handled by
      acpi_bus_device_eject() in a special way, which is to emit an
      offline uevent instead of just removing the container.  Then, user
      space is expected to handle that uevent and use the container's
      "eject" attribute to actually remove it.  That is fragile, because
      user space may fail to complete the ejection (for example, by not
      using the container's "eject" attribute at all) leaving the BIOS
      kind of in a limbo.  Moreover, if the eject event is not signaled
      for a container itself, but for its parent device object (or
      generally, for an ancestor above it in the ACPI namespace), the
      container will be removed straight away without doing that whole
      dance.
      
      For this reason, modify acpi_bus_device_eject() to remove containers
      synchronously like any other objects (user space will get its uevent
      anyway in case it does some other things in response to it) and
      remove the eject_pending ACPI device flag that is not used any more.
      This way acpi_eject_store() doesn't have a reason to acquire
      acpi_scan_lock any more and one possible deadlock scenario goes
      away (plus the code is simplified a bit).
      Reported-and-tested-by: NGu Zheng <guz.fnst@cn.fujitsu.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: NToshi Kani <toshi.kani@hp.com>
      f943db40
  9. 29 8月, 2013 2 次提交
  10. 26 8月, 2013 1 次提交
  11. 23 8月, 2013 2 次提交
  12. 22 8月, 2013 2 次提交