• Bjorn Helgaas's avatar
    ACPI: support acpi_device_ops .notify methods · 46ec8598
    Bjorn Helgaas authored
    This patch adds support for ACPI device driver .notify() methods.  If
    such a method is present, Linux/ACPI installs a handler for device
    notifications (but not for system notifications such as Bus Check,
    Device Check, etc).  When a device notification occurs, Linux/ACPI
    passes it on to the driver's .notify() method.
    
    In most cases, this removes the need for drivers to install their own
    handlers for device-specific notifications.
    
    For fixed hardware devices like some power and sleep buttons, there's
    no notification value because there's no control method to execute a
    Notify opcode.  When a fixed hardware device generates an event, we
    handle it the same as a regular device notification, except we send
    a ACPI_FIXED_HARDWARE_EVENT value.  This is outside the normal 0x0-0xff
    range used by Notify opcodes.
    
    Several drivers install their own handlers for system Bus Check and
    Device Check notifications so they can support hot-plug.  This patch
    doesn't affect that usage.
    Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
    Reviewed-by: default avatarAlex Chiang <achiang@hp.com>
    Signed-off-by: default avatarLen Brown <len.brown@intel.com>
    46ec8598
acpi_drivers.h 5.36 KB