26 Sep, 2009

7 commits

  • Nobody uses acpi_device_uid(), so this patch removes it.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • Every acpi_device has at least one ID (if there's no _HID or _CID, we
    give it a synthetic or default ID). So there's no longer a need to
    check whether an ID exists; we can just use it.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • We now keep a single list of IDs that includes both the _HID and any
    _CIDs. We no longer need to keep track of whether the device has a _CID.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • There's no need to treat _HID and _CID differently. Keeping them in
    a single list makes code that uses the IDs a little simpler because it
    can just traverse the list rather than checking "do we have a HID?",
    "do we have any CIDs?"

    Signed-off-by: Bjorn Helgaas
    Reviewed-by: Alex Chiang
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • Add acpi_bus_get_status_handle() so we can get the status of a namespace
    object before building a struct acpi_device.

    This removes a use of "device->flags.dynamic_status", a cached indicator of
    whether _STA exists. It seems simpler and more reliable to just evaluate
    _STA and catch AE_NOT_FOUND errors.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • We can identify the root of the ACPI device tree by the fact that it
    has no parent. This is simpler than passing around ACPI_BUS_TYPE_SYSTEM
    and will help remove special treatment of the device tree root.

    Currently, we add the root by hand with ACPI_BUS_TYPE_SYSTEM. If we
    traverse the tree treating the root as just another device and use
    acpi_get_type(), the root shows up as ACPI_TYPE_DEVICE.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     
  • Most uses of the ACPI bus device_type (ACPI_BUS_TYPE_DEVICE,
    ACPI_BUS_TYPE_POWER, etc) are during device initialization, but
    we do need it later for notify handler installation, since that
    is different for fixed hardware devices vs. namespace devices.

    This patch saves the device_type in the acpi_device structure,
    so we can check that rather than comparing against the _HID string.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     

25 Sep, 2009

1 commit

  • * 'drm-intel-next' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel: (57 commits)
    drm/i915: Handle ERESTARTSYS during page fault
    drm/i915: Warn before mmaping a purgeable buffer.
    drm/i915: Track purged state.
    drm/i915: Remove eviction debug spam
    drm/i915: Immediately discard any backing storage for uneeded objects
    drm/i915: Do not mis-classify clean objects as purgeable
    drm/i915: Whitespace correction for madv
    drm/i915: BUG_ON page refleak during unbind
    drm/i915: Search harder for a reusable object
    drm/i915: Clean up evict from list.
    drm/i915: Add tracepoints
    drm/i915: framebuffer compression for GM45+
    drm/i915: split display functions by chip type
    drm/i915: Skip the sanity checks if the current relocation is valid
    drm/i915: Check that the relocation points to within the target
    drm/i915: correct FBC update when pipe base update occurs
    drm/i915: blacklist Acer AspireOne lid status
    ACPI: make ACPI button funcs no-ops if not built in
    drm/i915: prevent FIFO calculation overflows on 32 bits with high dotclocks
    drm/i915: intel_display.c handle latency variable efficiently
    ...

    Fix up trivial conflicts in drivers/gpu/drm/i915/{i915_dma.c|i915_drv.h}

    Linus Torvalds
     

24 Sep, 2009

1 commit

  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (119 commits)
    ACPI: don't pass handle for fixed hardware notifications
    ACPI: remove null pointer checks in deferred execution path
    ACPI: simplify deferred execution path
    acerhdf: additional BIOS versions
    acerhdf: convert to dev_pm_ops
    acerhdf: fix fan control for AOA150 model
    thermal: add missing Kconfig dependency
    acpi: switch /proc/acpi/{debug_layer,debug_level} to seq_file
    hp-wmi: fix rfkill memory leak on unload
    ACPI: remove unnecessary #ifdef CONFIG_DMI
    ACPI: linux/acpi.h should not include linux/dmi.h
    hwmon driver for ACPI 4.0 power meters
    topstar-laptop: add new driver for hotkeys support on Topstar N01
    thinkpad_acpi: fix rfkill memory leak on unload
    thinkpad-acpi: report brightness events when required
    thinkpad-acpi: don't poll by default any of the reserved hotkeys
    thinkpad-acpi: Fix procfs hotkey reset command
    thinkpad-acpi: deprecate hotkey_bios_mask
    thinkpad-acpi: hotkey poll fixes
    thinkpad-acpi: be more strict when detecting a ThinkPad
    ...

    Linus Torvalds
     

21 Sep, 2009

1 commit


20 Sep, 2009

1 commit


19 Sep, 2009

5 commits


18 Sep, 2009

1 commit


11 Sep, 2009

1 commit

  • Some drivers need to know when a lid event occurs and get the current
    status. This can be useful for when a platform firmware clobbers some
    hardware state at lid time, and a driver needs to restore things when
    the lid is opened again.

    Acked-by: Matthew Garrett
    Signed-off-by: Jesse Barnes
    Signed-off-by: Eric Anholt

    Jesse Barnes
     

10 Sep, 2009

2 commits

  • The wakeup.prepared flag is used for marking devices that have the
    wake-up power already enabled, so that the wake-up power is not
    enabled twice in a row for the same device. This assumes, however,
    that device wake-up power will only be enabled once, while the device
    is being prepared for a system-wide sleep transition, and the second
    attempt is made by acpi_enable_wakeup_device_prep().

    With the upcoming PCI wake-up rework this assumption will not hold
    any more for PCI bridges and the root bridge whose wake-up power
    may be enabled as a result of wake-up enable propagation from other
    devices (eg. add-on devices that are not associated with any GPEs).
    Thus, there may be many attempts to enable wake-up power on a PCI
    bridge or the root bridge during a system power state transition
    and it's better to replace wakeup.prepared with a reference counter.

    Reviewed-by: Matthew Garrett
    Signed-off-by: Rafael J. Wysocki
    Signed-off-by: Jesse Barnes

    Rafael J. Wysocki
     
  • We can simplify ACPI drivers if we can tell whether a handle is an
    ACPI PCI root or not.

    Reviewed-by: Bjorn Helgaas
    Signed-off-by: Alex Chiang
    Signed-off-by: Jesse Barnes

    Alex Chiang
     

09 Sep, 2009

1 commit


30 Aug, 2009

1 commit


29 Aug, 2009

6 commits


28 Aug, 2009

1 commit

  • http://bugzilla.kernel.org/show_bug.cgi?id=13620

    If the dynamic region is created and added to resource list over and over again,
    it has the potential to be a memory leak by growing the list every time.

    This patch fixes the memory leak, as below

    1) add a new field "count" to struct acpi_res_list.

    When inserting, if the region(addr, len) is already in the resource
    list, we just increase "count", otherwise, the region is inserted
    with count=1.

    When deleting, the "count" is decreased, if it's decreased to 0,
    the region is deleted from the resource list.

    With "count", the region with same address and length can only be
    inserted to the resource list once, so prevent potential memory leak.

    2) add a new function acpi_os_invalidate_address, which is called when
    region is deleted.

    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Lin Ming
     

27 Aug, 2009

8 commits

  • Update version number.

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • FACS: new flag and new OspmFlags field.
    SRAT: x2APIC - add ClockDomain field to descriptor #2

    Includes header and disassembler support.

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • Handler was never invoked. Now invoked if/when host node is deleted.
    Data object was not automatically deleted when host node was deleted.
    Interface to handler had an unused parameter, removed it.
    ACPICA BZ 778.

    http://acpica.org/bugzilla/show_bug.cgi?id=778

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • Adds support for IPMI which is similar to SMBus and uses a bi-directional data buffer.
    ACPICA BZ 773.

    http://acpica.org/bugzilla/show_bug.cgi?id=773

    Signed-off-by: Lin Ming
    Signed-off-by: Bob Moore
    Signed-off-by: Len Brown

    Lin Ming
     
  • Completed a major update for the acpi_get_object_info external interface.
    Changes include:
    - Support for variable, unlimited length HID, UID, and CID strings
    - Support Processor objects the same as Devices (HID,UID,CID,ADR,STA, etc.)
    - Call the _SxW power methods on behalf of a device object
    - Determine if a device is a PCI root bridge
    - Change the ACPI_BUFFER parameter to ACPI_DEVICE_INFO.
    These changes will require an update to all callers of this interface.
    See the ACPICA Programmer Reference for details.

    Also, update all invocations of acpi_get_object_info interface

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • Needed by drivers for new ACPi tables. Internal versions of
    these functions still use 32-bit max transfers, in order to
    minimize disruption and stack use for the standard ACPI registers
    (FADT-based).

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • Some were defined twice, causes a warning with gcc
    -Wredundant-decls.

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     
  • If the BIOS reports an invalid throttling state (which seems to be
    fairly common after system boot), a reset is done to state T0.
    Because of a check in acpi_processor_get_throttling_ptc(), the reset
    never actually gets executed, which results in the error reoccurring
    on every access of for example /proc/acpi/processor/CPU0/throttling.

    Add a 'force' option to acpi_processor_set_throttling() to ensure
    the reset really takes effect.

    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=13389

    This patch, together with the next one, fixes a regression introduced in
    2.6.30, listed on the regression list. They have been available for 2.5
    months now in bugzilla, but have not been picked up, despite various
    reminders and without any reason given.

    Google shows that numerous people are hitting this issue. The issue is in
    itself relatively minor, but the bug in the code is clear.

    The patches have been in all my kernels and today testing has shown that
    throttling works correctly with the patches applied when the system
    overheats (http://bugzilla.kernel.org/show_bug.cgi?id=13918#c14).

    Signed-off-by: Frans Pop
    Acked-by: Zhang Rui
    Cc: Len Brown
    Cc: "Rafael J. Wysocki"
    Cc: Rusty Russell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Frans Pop
     

28 Jul, 2009

1 commit


26 Jun, 2009

1 commit


24 Jun, 2009

1 commit