]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commitdiff
hp-wmi: split rfkill initialization out of hp_wmi_bios_setup
authorAnssi Hannula <anssi.hannula@iki.fi>
Sun, 20 Feb 2011 18:07:23 +0000 (20:07 +0200)
committerMatthew Garrett <mjg@redhat.com>
Mon, 28 Mar 2011 10:07:18 +0000 (06:07 -0400)
Split initialization of rfkill devices from hp_wmi_bios_setup() to
hp_wmi_rfkill_setup(). This makes the code somewhat cleaner, especially
with the future command 0x1b rfkill support.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
drivers/platform/x86/hp-wmi.c

index 5c8ae65950d4a7e31c05ec01eef619c7a51e346f..f6a1c37af9cc67f3d0ae2cab9ea5226a1ba91ddd 100644 (file)
@@ -532,7 +532,7 @@ static void cleanup_sysfs(struct platform_device *device)
        device_remove_file(&device->dev, &dev_attr_tablet);
 }
 
-static int __devinit hp_wmi_bios_setup(struct platform_device *device)
+static int __devinit hp_wmi_rfkill_setup(struct platform_device *device)
 {
        int err;
        int wireless = 0;
@@ -542,22 +542,6 @@ static int __devinit hp_wmi_bios_setup(struct platform_device *device)
        if (err)
                return err;
 
-       err = device_create_file(&device->dev, &dev_attr_display);
-       if (err)
-               goto add_sysfs_error;
-       err = device_create_file(&device->dev, &dev_attr_hddtemp);
-       if (err)
-               goto add_sysfs_error;
-       err = device_create_file(&device->dev, &dev_attr_als);
-       if (err)
-               goto add_sysfs_error;
-       err = device_create_file(&device->dev, &dev_attr_dock);
-       if (err)
-               goto add_sysfs_error;
-       err = device_create_file(&device->dev, &dev_attr_tablet);
-       if (err)
-               goto add_sysfs_error;
-
        if (wireless & 0x1) {
                wifi_rfkill = rfkill_alloc("hp-wifi", &device->dev,
                                           RFKILL_TYPE_WLAN,
@@ -611,6 +595,34 @@ register_bluetooth_error:
                rfkill_unregister(wifi_rfkill);
 register_wifi_error:
        rfkill_destroy(wifi_rfkill);
+       return err;
+}
+
+static int __devinit hp_wmi_bios_setup(struct platform_device *device)
+{
+       int err;
+
+       err = hp_wmi_rfkill_setup(device);
+       if (err)
+               return err;
+
+       err = device_create_file(&device->dev, &dev_attr_display);
+       if (err)
+               goto add_sysfs_error;
+       err = device_create_file(&device->dev, &dev_attr_hddtemp);
+       if (err)
+               goto add_sysfs_error;
+       err = device_create_file(&device->dev, &dev_attr_als);
+       if (err)
+               goto add_sysfs_error;
+       err = device_create_file(&device->dev, &dev_attr_dock);
+       if (err)
+               goto add_sysfs_error;
+       err = device_create_file(&device->dev, &dev_attr_tablet);
+       if (err)
+               goto add_sysfs_error;
+       return 0;
+
 add_sysfs_error:
        cleanup_sysfs(device);
        return err;