]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/misc/acer-wmi.c
Merge branch 'v28-range-hrtimers-for-linus-v2' of git://git.kernel.org/pub/scm/linux...
[linux-2.6-omap-h63xx.git] / drivers / misc / acer-wmi.c
index 8708d3193788233776e742a268e3ff2dac535785..0532a2de2ce4decf8ef2744d5bfcaa4054b13597 100644 (file)
@@ -473,7 +473,7 @@ struct wmi_interface *iface)
                }
                break;
        default:
-               return AE_BAD_ADDRESS;
+               return AE_ERROR;
        }
        return AE_OK;
 }
@@ -511,7 +511,7 @@ static acpi_status AMW0_set_u32(u32 value, u32 cap, struct wmi_interface *iface)
                        break;
                }
        default:
-               return AE_BAD_ADDRESS;
+               return AE_ERROR;
        }
 
        /* Actually do the set */
@@ -686,7 +686,7 @@ struct wmi_interface *iface)
                        return 0;
                }
        default:
-               return AE_BAD_ADDRESS;
+               return AE_ERROR;
        }
        status = WMI_execute_u32(method_id, 0, &result);
 
@@ -732,7 +732,7 @@ static acpi_status WMID_set_u32(u32 value, u32 cap, struct wmi_interface *iface)
                }
                break;
        default:
-               return AE_BAD_ADDRESS;
+               return AE_ERROR;
        }
        return WMI_execute_u32(method_id, (u32)value, NULL);
 }
@@ -782,7 +782,7 @@ static struct wmi_interface wmid_interface = {
 
 static acpi_status get_u32(u32 *value, u32 cap)
 {
-       acpi_status status = AE_BAD_ADDRESS;
+       acpi_status status = AE_ERROR;
 
        switch (interface->type) {
        case ACER_AMW0:
@@ -930,8 +930,6 @@ static void acer_backlight_exit(void)
 /*
  * Rfkill devices
  */
-static struct workqueue_struct *rfkill_workqueue;
-
 static void acer_rfkill_update(struct work_struct *ignored);
 static DECLARE_DELAYED_WORK(acer_rfkill_work, acer_rfkill_update);
 static void acer_rfkill_update(struct work_struct *ignored)
@@ -952,8 +950,7 @@ static void acer_rfkill_update(struct work_struct *ignored)
                                RFKILL_STATE_SOFT_BLOCKED);
        }
 
-       queue_delayed_work(rfkill_workqueue, &acer_rfkill_work,
-               round_jiffies_relative(HZ));
+       schedule_delayed_work(&acer_rfkill_work, round_jiffies_relative(HZ));
 }
 
 static int acer_rfkill_set(void *data, enum rfkill_state state)
@@ -1018,17 +1015,7 @@ static int acer_rfkill_init(struct device *dev)
                }
        }
 
-       rfkill_workqueue = create_singlethread_workqueue("rfkill_workqueue");
-       if (!rfkill_workqueue) {
-               if (has_cap(ACER_CAP_BLUETOOTH)) {
-                       kfree(bluetooth_rfkill->data);
-                       rfkill_unregister(bluetooth_rfkill);
-               }
-               kfree(wireless_rfkill->data);
-               rfkill_unregister(wireless_rfkill);
-               return -ENOMEM;
-       }
-       queue_delayed_work(rfkill_workqueue, &acer_rfkill_work, HZ);
+       schedule_delayed_work(&acer_rfkill_work, round_jiffies_relative(HZ));
 
        return 0;
 }
@@ -1036,7 +1023,6 @@ static int acer_rfkill_init(struct device *dev)
 static void acer_rfkill_exit(void)
 {
        cancel_delayed_work_sync(&acer_rfkill_work);
-       destroy_workqueue(rfkill_workqueue);
        kfree(wireless_rfkill->data);
        rfkill_unregister(wireless_rfkill);
        if (has_cap(ACER_CAP_BLUETOOTH)) {