Pull events into release branch
[sfrench/cifs-2.6.git] / drivers / acpi / sbs.c
index 974d00ccfe845209c6ced6ec09278f5dbe8b49bf..a578986e3214fc9b479ef6978d645e9002137bed 100644 (file)
@@ -38,7 +38,6 @@
 #define ACPI_SBS_CLASS                 "sbs"
 #define ACPI_AC_CLASS                  "ac_adapter"
 #define ACPI_BATTERY_CLASS             "battery"
-#define ACPI_SBS_HID                   "ACPI0002"
 #define ACPI_SBS_DEVICE_NAME           "Smart Battery System"
 #define ACPI_SBS_FILE_INFO             "info"
 #define ACPI_SBS_FILE_STATE            "state"
@@ -124,10 +123,17 @@ static int acpi_sbs_add(struct acpi_device *device);
 static int acpi_sbs_remove(struct acpi_device *device, int type);
 static int acpi_sbs_resume(struct acpi_device *device);
 
+static const struct acpi_device_id sbs_device_ids[] = {
+       {"ACPI0001", 0},
+       {"ACPI0005", 0},
+       {"", 0},
+};
+MODULE_DEVICE_TABLE(acpi, sbs_device_ids);
+
 static struct acpi_driver acpi_sbs_driver = {
        .name = "sbs",
        .class = ACPI_SBS_CLASS,
-       .ids = "ACPI0001,ACPI0005",
+       .ids = sbs_device_ids,
        .ops = {
                .add = acpi_sbs_add,
                .remove = acpi_sbs_remove,
@@ -434,11 +440,12 @@ static int acpi_sbs_generate_event(struct acpi_device *device,
        strcpy(acpi_device_bid(device), bid);
        strcpy(acpi_device_class(device), class);
 
-       result = acpi_bus_generate_event(device, event, state);
+       result = acpi_bus_generate_proc_event(device, event, state);
 
        strcpy(acpi_device_bid(device), bid_saved);
        strcpy(acpi_device_class(device), class_saved);
 
+       acpi_bus_generate_netlink_event(class, bid, event, state);
        return result;
 }
 
@@ -1409,7 +1416,7 @@ static int acpi_sbs_update_run(struct acpi_sbs *sbs, int id, int data_type)
        char dir_name[32];
        int do_battery_init = 0, do_ac_init = 0;
        int old_remaining_capacity = 0;
-       int update_ac = 1, update_battery = 1;
+       int update_battery = 1;
        int up_tm = update_time;
 
        if (sbs_zombie(sbs)) {
@@ -1429,10 +1436,6 @@ static int acpi_sbs_update_run(struct acpi_sbs *sbs, int id, int data_type)
 
        sbs->run_cnt++;
 
-       if (!update_ac && !update_battery) {
-               goto end;
-       }
-
        old_ac_present = sbs->ac.ac_present;
 
        result = acpi_ac_get_present(sbs);