The patch titled
     ACPI: SBS: Ignore alarms coming from unknown devices
has been removed from the -mm tree.  Its filename was
     acpi-sbs-ignore-alarms-coming-from-unknown-devices.patch

This patch was dropped because it was merged into mainline or a subsystem tree

------------------------------------------------------
Subject: ACPI: SBS: Ignore alarms coming from unknown devices
From: Alexey Starikovskiy <[EMAIL PROTECTED]>

Reference: http://bugzilla.kernel.org/show_bug.cgi?id=9362

Signed-off-by: Alexey Starikovskiy <[EMAIL PROTECTED]>
Cc: Len Brown <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---

 drivers/acpi/sbs.c   |    6 ------
 drivers/acpi/sbshc.c |   16 ++++++++++++----
 drivers/acpi/sbshc.h |    6 ++++++
 3 files changed, 18 insertions(+), 10 deletions(-)

diff -puN drivers/acpi/sbs.c~acpi-sbs-ignore-alarms-coming-from-unknown-devices 
drivers/acpi/sbs.c
--- a/drivers/acpi/sbs.c~acpi-sbs-ignore-alarms-coming-from-unknown-devices
+++ a/drivers/acpi/sbs.c
@@ -54,12 +54,6 @@
 #define ACPI_BATTERY_DIR_NAME          "BAT%i"
 #define ACPI_AC_DIR_NAME               "AC0"
 
-enum acpi_sbs_device_addr {
-       ACPI_SBS_CHARGER = 0x9,
-       ACPI_SBS_MANAGER = 0xa,
-       ACPI_SBS_BATTERY = 0xb,
-};
-
 #define ACPI_SBS_NOTIFY_STATUS         0x80
 #define ACPI_SBS_NOTIFY_INFO           0x81
 
diff -puN 
drivers/acpi/sbshc.c~acpi-sbs-ignore-alarms-coming-from-unknown-devices 
drivers/acpi/sbshc.c
--- a/drivers/acpi/sbshc.c~acpi-sbs-ignore-alarms-coming-from-unknown-devices
+++ a/drivers/acpi/sbshc.c
@@ -202,10 +202,9 @@ int acpi_smbus_unregister_callback(struc
 
 EXPORT_SYMBOL_GPL(acpi_smbus_unregister_callback);
 
-static void acpi_smbus_callback(void *context)
+static inline void acpi_smbus_callback(void *context)
 {
        struct acpi_smb_hc *hc = context;
-
        if (hc->callback)
                hc->callback(hc->context);
 }
@@ -214,6 +213,7 @@ static int smbus_alarm(void *context)
 {
        struct acpi_smb_hc *hc = context;
        union acpi_smb_status status;
+       u8 address;
        if (smb_hc_read(hc, ACPI_SMB_STATUS, &status.raw))
                return 0;
        /* Check if it is only a completion notify */
@@ -222,10 +222,18 @@ static int smbus_alarm(void *context)
        if (!status.fields.alarm)
                return 0;
        mutex_lock(&hc->lock);
+       smb_hc_read(hc, ACPI_SMB_ALARM_ADDRESS, &address);
        status.fields.alarm = 0;
        smb_hc_write(hc, ACPI_SMB_STATUS, status.raw);
-       if (hc->callback)
-               acpi_os_execute(OSL_GPE_HANDLER, acpi_smbus_callback, hc);
+       /* We are only interested in events coming from known devices */
+       switch (address >> 1) {
+               case ACPI_SBS_CHARGER:
+               case ACPI_SBS_MANAGER:
+               case ACPI_SBS_BATTERY:
+                       acpi_os_execute(OSL_GPE_HANDLER,
+                                       acpi_smbus_callback, hc);
+               default:;
+       }
        mutex_unlock(&hc->lock);
        return 0;
 }
diff -puN 
drivers/acpi/sbshc.h~acpi-sbs-ignore-alarms-coming-from-unknown-devices 
drivers/acpi/sbshc.h
--- a/drivers/acpi/sbshc.h~acpi-sbs-ignore-alarms-coming-from-unknown-devices
+++ a/drivers/acpi/sbshc.h
@@ -16,6 +16,12 @@ enum acpi_smb_protocol {
 
 static const u8 SMBUS_PEC = 0x80;
 
+enum acpi_sbs_device_addr {
+       ACPI_SBS_CHARGER = 0x9,
+       ACPI_SBS_MANAGER = 0xa,
+       ACPI_SBS_BATTERY = 0xb,
+};
+
 typedef void (*smbus_alarm_callback)(void *context);
 
 extern int acpi_smbus_read(struct acpi_smb_hc *hc, u8 protocol, u8 address,
_

Patches currently in -mm which might be from [EMAIL PROTECTED] are

origin.patch
git-acpi.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to