]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ACPI: make remove callback of ACPI driver void
authorDawei Li <set_pte_at@outlook.com>
Sun, 13 Nov 2022 16:26:09 +0000 (00:26 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 23 Nov 2022 18:11:22 +0000 (19:11 +0100)
For bus-based driver, device removal is implemented as:
1 device_remove()->
2   bus->remove()->
3     driver->remove()

Driver core needs no inform from callee(bus driver) about the
result of remove callback. In that case, commit fc7a6209d571
("bus: Make remove callback return void") forces bus_type::remove
be void-returned.

Now we have the situation that both 1 & 2 of calling chain are
void-returned, so it does not make much sense for 3(driver->remove)
to return non-void to its caller.

So the basic idea behind this change is making remove() callback of
any bus-based driver to be void-returned.

This change, for itself, is for device drivers based on acpi-bus.

Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Lee Jones <lee@kernel.org>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Dawei Li <set_pte_at@outlook.com>
Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com> # for drivers/platform/surface/*
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
48 files changed:
arch/ia64/hp/common/aml_nfw.c
arch/x86/platform/olpc/olpc-xo15-sci.c
drivers/acpi/ac.c
drivers/acpi/acpi_pad.c
drivers/acpi/acpi_video.c
drivers/acpi/battery.c
drivers/acpi/button.c
drivers/acpi/ec.c
drivers/acpi/hed.c
drivers/acpi/nfit/core.c
drivers/acpi/sbs.c
drivers/acpi/sbshc.c
drivers/acpi/thermal.c
drivers/acpi/tiny-power-button.c
drivers/char/sonypi.c
drivers/char/tpm/tpm_crb.c
drivers/hv/vmbus_drv.c
drivers/hwmon/acpi_power_meter.c
drivers/hwmon/asus_atk0110.c
drivers/input/misc/atlas_btns.c
drivers/net/fjes/fjes_main.c
drivers/platform/chrome/chromeos_privacy_screen.c
drivers/platform/chrome/wilco_ec/event.c
drivers/platform/surface/surfacepro3_button.c
drivers/platform/x86/asus-laptop.c
drivers/platform/x86/asus-wireless.c
drivers/platform/x86/classmate-laptop.c
drivers/platform/x86/dell/dell-rbtn.c
drivers/platform/x86/eeepc-laptop.c
drivers/platform/x86/fujitsu-laptop.c
drivers/platform/x86/fujitsu-tablet.c
drivers/platform/x86/intel/rst.c
drivers/platform/x86/lg-laptop.c
drivers/platform/x86/panasonic-laptop.c
drivers/platform/x86/sony-laptop.c
drivers/platform/x86/system76_acpi.c
drivers/platform/x86/topstar-laptop.c
drivers/platform/x86/toshiba_acpi.c
drivers/platform/x86/toshiba_bluetooth.c
drivers/platform/x86/toshiba_haps.c
drivers/platform/x86/wireless-hotkey.c
drivers/platform/x86/xo15-ebook.c
drivers/ptp/ptp_vmw.c
drivers/thermal/intel/intel_menlow.c
drivers/video/backlight/apple_bl.c
drivers/watchdog/ni903x_wdt.c
drivers/xen/xen-acpi-pad.c
include/acpi/acpi_bus.h

index 684667ade52593b39fed40605efb3d73b6c5f4f9..901df49461a058fd91ea3935cf6828d5a61335b5 100644 (file)
@@ -187,9 +187,9 @@ static int aml_nfw_add(struct acpi_device *device)
        return aml_nfw_add_global_handler();
 }
 
-static int aml_nfw_remove(struct acpi_device *device)
+static void aml_nfw_remove(struct acpi_device *device)
 {
-       return aml_nfw_remove_global_handler();
+       aml_nfw_remove_global_handler();
 }
 
 static const struct acpi_device_id aml_nfw_ids[] = {
index 994a229cb79fe190fe6836dfb0c4aa7bc51fbd45..68244a3422d1d6792630a5bcb520959e8bbecda5 100644 (file)
@@ -183,13 +183,12 @@ err_sysfs:
        return r;
 }
 
-static int xo15_sci_remove(struct acpi_device *device)
+static void xo15_sci_remove(struct acpi_device *device)
 {
        acpi_disable_gpe(NULL, xo15_sci_gpe);
        acpi_remove_gpe_handler(NULL, xo15_sci_gpe, xo15_sci_gpe_handler);
        cancel_work_sync(&sci_work);
        sysfs_remove_file(&device->dev.kobj, &lid_wake_on_close_attr.attr);
-       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
index bb9fe7984b1a00fe3dae2321dab70979909ea3bf..1ace70b831cdfecd4a2f87fe8fa57788776541bd 100644 (file)
@@ -33,7 +33,7 @@ MODULE_DESCRIPTION("ACPI AC Adapter Driver");
 MODULE_LICENSE("GPL");
 
 static int acpi_ac_add(struct acpi_device *device);
-static int acpi_ac_remove(struct acpi_device *device);
+static void acpi_ac_remove(struct acpi_device *device);
 static void acpi_ac_notify(struct acpi_device *device, u32 event);
 
 static const struct acpi_device_id ac_device_ids[] = {
@@ -288,12 +288,12 @@ static int acpi_ac_resume(struct device *dev)
 #define acpi_ac_resume NULL
 #endif
 
-static int acpi_ac_remove(struct acpi_device *device)
+static void acpi_ac_remove(struct acpi_device *device)
 {
        struct acpi_ac *ac = NULL;
 
        if (!device || !acpi_driver_data(device))
-               return -EINVAL;
+               return;
 
        ac = acpi_driver_data(device);
 
@@ -301,8 +301,6 @@ static int acpi_ac_remove(struct acpi_device *device)
        unregister_acpi_notifier(&ac->battery_nb);
 
        kfree(ac);
-
-       return 0;
 }
 
 static int __init acpi_ac_init(void)
index ec0e22a1e25d64bd0d7add3e54892092f6a31cd7..edbb28faee2a69f1785f970f5d4b30622f4d1097 100644 (file)
@@ -449,7 +449,7 @@ static int acpi_pad_add(struct acpi_device *device)
        return 0;
 }
 
-static int acpi_pad_remove(struct acpi_device *device)
+static void acpi_pad_remove(struct acpi_device *device)
 {
        mutex_lock(&isolated_cpus_lock);
        acpi_pad_idle_cpus(0);
@@ -458,7 +458,6 @@ static int acpi_pad_remove(struct acpi_device *device)
        acpi_remove_notify_handler(device->handle,
                ACPI_DEVICE_NOTIFY, acpi_pad_notify);
        acpi_pad_remove_sysfs(device);
-       return 0;
 }
 
 static const struct acpi_device_id pad_device_ids[] = {
index 32953646caebf6a57bac1d367ad0d79ec104d822..30d8fd03fec7ce783d04ee1e9f05c790f853b52a 100644 (file)
@@ -86,7 +86,7 @@ static DEFINE_MUTEX(register_count_mutex);
 static DEFINE_MUTEX(video_list_lock);
 static LIST_HEAD(video_bus_head);
 static int acpi_video_bus_add(struct acpi_device *device);
-static int acpi_video_bus_remove(struct acpi_device *device);
+static void acpi_video_bus_remove(struct acpi_device *device);
 static void acpi_video_bus_notify(struct acpi_device *device, u32 event);
 static void acpi_video_bus_register_backlight_work(struct work_struct *ignored);
 static DECLARE_DELAYED_WORK(video_bus_register_backlight_work,
@@ -2067,13 +2067,13 @@ err_free_video:
        return error;
 }
 
-static int acpi_video_bus_remove(struct acpi_device *device)
+static void acpi_video_bus_remove(struct acpi_device *device)
 {
        struct acpi_video_bus *video = NULL;
 
 
        if (!device || !acpi_driver_data(device))
-               return -EINVAL;
+               return;
 
        video = acpi_driver_data(device);
 
@@ -2087,8 +2087,6 @@ static int acpi_video_bus_remove(struct acpi_device *device)
 
        kfree(video->attached_array);
        kfree(video);
-
-       return 0;
 }
 
 static void acpi_video_bus_register_backlight_work(struct work_struct *ignored)
index 306513fec1e1f71ca0c0bb0464d44e4fb3926967..28b0d1d6e225bc1ba869e460bcea475d48b064b8 100644 (file)
@@ -1208,12 +1208,12 @@ fail:
        return result;
 }
 
-static int acpi_battery_remove(struct acpi_device *device)
+static void acpi_battery_remove(struct acpi_device *device)
 {
        struct acpi_battery *battery = NULL;
 
        if (!device || !acpi_driver_data(device))
-               return -EINVAL;
+               return;
        device_init_wakeup(&device->dev, 0);
        battery = acpi_driver_data(device);
        unregister_pm_notifier(&battery->pm_nb);
@@ -1221,7 +1221,6 @@ static int acpi_battery_remove(struct acpi_device *device)
        mutex_destroy(&battery->lock);
        mutex_destroy(&battery->sysfs_lock);
        kfree(battery);
-       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
index 1f9b9a4c38c7d2fa4734a27c883b303e20700db0..475e1eddfa3b4ae162bb88157a29619ca58a2290 100644 (file)
@@ -125,7 +125,7 @@ static const struct dmi_system_id dmi_lid_quirks[] = {
 };
 
 static int acpi_button_add(struct acpi_device *device);
-static int acpi_button_remove(struct acpi_device *device);
+static void acpi_button_remove(struct acpi_device *device);
 static void acpi_button_notify(struct acpi_device *device, u32 event);
 
 #ifdef CONFIG_PM_SLEEP
@@ -580,14 +580,13 @@ static int acpi_button_add(struct acpi_device *device)
        return error;
 }
 
-static int acpi_button_remove(struct acpi_device *device)
+static void acpi_button_remove(struct acpi_device *device)
 {
        struct acpi_button *button = acpi_driver_data(device);
 
        acpi_button_remove_fs(device);
        input_unregister_device(button->input);
        kfree(button);
-       return 0;
 }
 
 static int param_set_lid_init_state(const char *val,
index 9b42628cf21b328963285e2c04b1e92d912fbb1a..b8afee1e8d0115ee2ec198f384019660e906db87 100644 (file)
@@ -1663,12 +1663,12 @@ err:
        return ret;
 }
 
-static int acpi_ec_remove(struct acpi_device *device)
+static void acpi_ec_remove(struct acpi_device *device)
 {
        struct acpi_ec *ec;
 
        if (!device)
-               return -EINVAL;
+               return;
 
        ec = acpi_driver_data(device);
        release_region(ec->data_addr, 1);
@@ -1678,7 +1678,6 @@ static int acpi_ec_remove(struct acpi_device *device)
                ec_remove_handlers(ec);
                acpi_ec_free(ec);
        }
-       return 0;
 }
 
 static acpi_status
index 60a2939cde6c500d9946f20be336a635e6979f51..78d44e3fe1295ce434872aa97db4ffe547440059 100644 (file)
@@ -56,10 +56,9 @@ static int acpi_hed_add(struct acpi_device *device)
        return 0;
 }
 
-static int acpi_hed_remove(struct acpi_device *device)
+static void acpi_hed_remove(struct acpi_device *device)
 {
        hed_handle = NULL;
-       return 0;
 }
 
 static struct acpi_driver acpi_hed_driver = {
index ae5f4acf2675390f58c38aee79c7a0e68e14d47c..f1cc5ec6a3b6546a995e5979befb3b1cc570e753 100644 (file)
@@ -3371,10 +3371,9 @@ static int acpi_nfit_add(struct acpi_device *adev)
        return devm_add_action_or_reset(dev, acpi_nfit_shutdown, acpi_desc);
 }
 
-static int acpi_nfit_remove(struct acpi_device *adev)
+static void acpi_nfit_remove(struct acpi_device *adev)
 {
        /* see acpi_nfit_unregister */
-       return 0;
 }
 
 static void acpi_nfit_update_notify(struct device *dev, acpi_handle handle)
index e6a01a8df1b8150015f0f1931d338d72cc315183..e90752d4f488eff36a03bf8b9b1019a7fbee3c2e 100644 (file)
@@ -96,7 +96,7 @@ struct acpi_sbs {
 
 #define to_acpi_sbs(x) power_supply_get_drvdata(x)
 
-static int acpi_sbs_remove(struct acpi_device *device);
+static void acpi_sbs_remove(struct acpi_device *device);
 static int acpi_battery_get_state(struct acpi_battery *battery);
 
 static inline int battery_scale(int log)
@@ -664,16 +664,16 @@ end:
        return result;
 }
 
-static int acpi_sbs_remove(struct acpi_device *device)
+static void acpi_sbs_remove(struct acpi_device *device)
 {
        struct acpi_sbs *sbs;
        int id;
 
        if (!device)
-               return -EINVAL;
+               return;
        sbs = acpi_driver_data(device);
        if (!sbs)
-               return -EINVAL;
+               return;
        mutex_lock(&sbs->lock);
        acpi_smbus_unregister_callback(sbs->hc);
        for (id = 0; id < MAX_SBS_BAT; ++id)
@@ -682,7 +682,6 @@ static int acpi_sbs_remove(struct acpi_device *device)
        mutex_unlock(&sbs->lock);
        mutex_destroy(&sbs->lock);
        kfree(sbs);
-       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
index 340e0b61587e02c4e8218d31907f4b39876fe3a0..16f2daaa2c454b4d9e6c3b3364a9c62d2ff750ff 100644 (file)
@@ -30,7 +30,7 @@ struct acpi_smb_hc {
 };
 
 static int acpi_smbus_hc_add(struct acpi_device *device);
-static int acpi_smbus_hc_remove(struct acpi_device *device);
+static void acpi_smbus_hc_remove(struct acpi_device *device);
 
 static const struct acpi_device_id sbs_device_ids[] = {
        {"ACPI0001", 0},
@@ -280,19 +280,18 @@ static int acpi_smbus_hc_add(struct acpi_device *device)
 
 extern void acpi_ec_remove_query_handler(struct acpi_ec *ec, u8 query_bit);
 
-static int acpi_smbus_hc_remove(struct acpi_device *device)
+static void acpi_smbus_hc_remove(struct acpi_device *device)
 {
        struct acpi_smb_hc *hc;
 
        if (!device)
-               return -EINVAL;
+               return;
 
        hc = acpi_driver_data(device);
        acpi_ec_remove_query_handler(hc->ec, hc->query_bit);
        acpi_os_wait_events_complete();
        kfree(hc);
        device->driver_data = NULL;
-       return 0;
 }
 
 module_acpi_driver(acpi_smb_hc_driver);
index 40b07057983e04565d28c00dc022b97e0c847e55..0c4bdef4d09cafcba2f0b2c2954191b6b9878506 100644 (file)
@@ -74,7 +74,7 @@ MODULE_PARM_DESC(psv, "Disable or override all passive trip points.");
 static struct workqueue_struct *acpi_thermal_pm_queue;
 
 static int acpi_thermal_add(struct acpi_device *device);
-static int acpi_thermal_remove(struct acpi_device *device);
+static void acpi_thermal_remove(struct acpi_device *device);
 static void acpi_thermal_notify(struct acpi_device *device, u32 event);
 
 static const struct acpi_device_id  thermal_device_ids[] = {
@@ -1059,19 +1059,18 @@ end:
        return result;
 }
 
-static int acpi_thermal_remove(struct acpi_device *device)
+static void acpi_thermal_remove(struct acpi_device *device)
 {
        struct acpi_thermal *tz;
 
        if (!device || !acpi_driver_data(device))
-               return -EINVAL;
+               return;
 
        flush_workqueue(acpi_thermal_pm_queue);
        tz = acpi_driver_data(device);
 
        acpi_thermal_unregister_thermal_zone(tz);
        kfree(tz);
-       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
index a19f0e4e69f7602f5ef127e084b9cf87edda5aff..598f548b21f360496bbb46467a3fbcd0b9e15aa1 100644 (file)
@@ -19,11 +19,15 @@ static const struct acpi_device_id tiny_power_button_device_ids[] = {
 };
 MODULE_DEVICE_TABLE(acpi, tiny_power_button_device_ids);
 
-static int acpi_noop_add_remove(struct acpi_device *device)
+static int acpi_noop_add(struct acpi_device *device)
 {
        return 0;
 }
 
+static void acpi_noop_remove(struct acpi_device *device)
+{
+}
+
 static void acpi_tiny_power_button_notify(struct acpi_device *device, u32 event)
 {
        kill_cad_pid(power_signal, 1);
@@ -34,8 +38,8 @@ static struct acpi_driver acpi_tiny_power_button_driver = {
        .class = "tiny-power-button",
        .ids = tiny_power_button_device_ids,
        .ops = {
-               .add = acpi_noop_add_remove,
-               .remove = acpi_noop_add_remove,
+               .add = acpi_noop_add,
+               .remove = acpi_noop_remove,
                .notify = acpi_tiny_power_button_notify,
        },
 };
index 27e301a6bb7a324b78bea79a3a3739c5388b1ffb..9211531689b286747983def201468166130d1ad2 100644 (file)
@@ -1123,10 +1123,9 @@ static int sonypi_acpi_add(struct acpi_device *device)
        return 0;
 }
 
-static int sonypi_acpi_remove(struct acpi_device *device)
+static void sonypi_acpi_remove(struct acpi_device *device)
 {
        sonypi_acpi_device = NULL;
-       return 0;
 }
 
 static const struct acpi_device_id sonypi_device_ids[] = {
index 18606651d1aa43231755e8ec468c9191ec2e0c6b..17d92f466db58d6700bb15d74ee273f7fd118ae9 100644 (file)
@@ -713,14 +713,12 @@ static int crb_acpi_add(struct acpi_device *device)
        return tpm_chip_register(chip);
 }
 
-static int crb_acpi_remove(struct acpi_device *device)
+static void crb_acpi_remove(struct acpi_device *device)
 {
        struct device *dev = &device->dev;
        struct tpm_chip *chip = dev_get_drvdata(dev);
 
        tpm_chip_unregister(chip);
-
-       return 0;
 }
 
 static const struct dev_pm_ops crb_pm = {
index 8b2e413bf19cc1ef9f55c9cd9d2bd9213ddc2a0e..d9d898ed59209fbb0d7cb609e2e9529f16dabf6e 100644 (file)
@@ -2239,7 +2239,7 @@ static acpi_status vmbus_walk_resources(struct acpi_resource *res, void *ctx)
        return AE_OK;
 }
 
-static int vmbus_acpi_remove(struct acpi_device *device)
+static void vmbus_acpi_remove(struct acpi_device *device)
 {
        struct resource *cur_res;
        struct resource *next_res;
@@ -2256,8 +2256,6 @@ static int vmbus_acpi_remove(struct acpi_device *device)
                        kfree(cur_res);
                }
        }
-
-       return 0;
 }
 
 static void vmbus_reserve_fb(void)
index 0962c12eba5a007f1e6f001648b420e5710f807c..fa28d447f0dfbdc13d910e74dcab9d7fe0bb10eb 100644 (file)
@@ -910,12 +910,12 @@ exit:
        return res;
 }
 
-static int acpi_power_meter_remove(struct acpi_device *device)
+static void acpi_power_meter_remove(struct acpi_device *device)
 {
        struct acpi_power_meter_resource *resource;
 
        if (!device || !acpi_driver_data(device))
-               return -EINVAL;
+               return;
 
        resource = acpi_driver_data(device);
        hwmon_device_unregister(resource->hwmon_dev);
@@ -924,7 +924,6 @@ static int acpi_power_meter_remove(struct acpi_device *device)
        free_capabilities(resource);
 
        kfree(resource);
-       return 0;
 }
 
 static int acpi_power_meter_resume(struct device *dev)
index ff64a39d56def96582571aa4551189cdab3fd062..d778a2aaefec16091f75cc14ab93ca790da63374 100644 (file)
@@ -187,7 +187,7 @@ struct atk_acpi_input_buf {
 };
 
 static int atk_add(struct acpi_device *device);
-static int atk_remove(struct acpi_device *device);
+static void atk_remove(struct acpi_device *device);
 static void atk_print_sensor(struct atk_data *data, union acpi_object *obj);
 static int atk_read_value(struct atk_sensor_data *sensor, u64 *value);
 
@@ -1344,7 +1344,7 @@ out:
        return err;
 }
 
-static int atk_remove(struct acpi_device *device)
+static void atk_remove(struct acpi_device *device)
 {
        struct atk_data *data = device->driver_data;
        dev_dbg(&device->dev, "removing...\n");
@@ -1359,8 +1359,6 @@ static int atk_remove(struct acpi_device *device)
                if (atk_ec_ctl(data, 0))
                        dev_err(&device->dev, "Failed to disable EC\n");
        }
-
-       return 0;
 }
 
 static int __init atk0110_init(void)
index 0e77c40e1966b59e6d8822dc81f686b8f80646b8..3c9bbd04e14349552d7accf559e37a970316e98c 100644 (file)
@@ -106,7 +106,7 @@ static int atlas_acpi_button_add(struct acpi_device *device)
        return err;
 }
 
-static int atlas_acpi_button_remove(struct acpi_device *device)
+static void atlas_acpi_button_remove(struct acpi_device *device)
 {
        acpi_status status;
 
@@ -116,8 +116,6 @@ static int atlas_acpi_button_remove(struct acpi_device *device)
                pr_err("error removing addr spc handler\n");
 
        input_unregister_device(input_dev);
-
-       return 0;
 }
 
 static const struct acpi_device_id atlas_device_ids[] = {
index 1eff202f6a1fa2dd6590aa7313f70d3ffe65ebda..2513be6d4e11d19ca1c1975b7e529d9d8e7ebe6c 100644 (file)
@@ -145,14 +145,12 @@ static int fjes_acpi_add(struct acpi_device *device)
        return 0;
 }
 
-static int fjes_acpi_remove(struct acpi_device *device)
+static void fjes_acpi_remove(struct acpi_device *device)
 {
        struct platform_device *plat_dev;
 
        plat_dev = (struct platform_device *)acpi_driver_data(device);
        platform_device_unregister(plat_dev);
-
-       return 0;
 }
 
 static struct acpi_driver fjes_acpi_driver = {
index 77e9f5ee8e334f9b20020b32d003ed5c10d1f425..bb74ddf9af4ac5f813a0bcd0c97839c060071f18 100644 (file)
@@ -123,12 +123,11 @@ static int chromeos_privacy_screen_add(struct acpi_device *adev)
        return 0;
 }
 
-static int chromeos_privacy_screen_remove(struct acpi_device *adev)
+static void chromeos_privacy_screen_remove(struct acpi_device *adev)
 {
        struct drm_privacy_screen *drm_privacy_screen = acpi_driver_data(adev);
 
        drm_privacy_screen_unregister(drm_privacy_screen);
-       return 0;
 }
 
 static const struct acpi_device_id chromeos_privacy_screen_device_ids[] = {
index 32e400590be5aaa4eb66c2bebebe2f62d99ba609..69ceead8cdaa1c6f243b690b957c35af28fc8d86 100644 (file)
@@ -500,15 +500,13 @@ free_minor:
        return error;
 }
 
-static int event_device_remove(struct acpi_device *adev)
+static void event_device_remove(struct acpi_device *adev)
 {
        struct event_device_data *dev_data = adev->driver_data;
 
        cdev_device_del(&dev_data->cdev, &dev_data->dev);
        ida_simple_remove(&event_ida, MINOR(dev_data->dev.devt));
        hangup_device(dev_data);
-
-       return 0;
 }
 
 static const struct acpi_device_id event_acpi_ids[] = {
index 242fb690dcaf7aff6998cbc22c3e753679fe6a84..2755601f979cd53a4618bc6874f946fbd2f9dcc7 100644 (file)
@@ -239,13 +239,12 @@ static int surface_button_add(struct acpi_device *device)
        return error;
 }
 
-static int surface_button_remove(struct acpi_device *device)
+static void surface_button_remove(struct acpi_device *device)
 {
        struct surface_button *button = acpi_driver_data(device);
 
        input_unregister_device(button->input);
        kfree(button);
-       return 0;
 }
 
 static SIMPLE_DEV_PM_OPS(surface_button_pm,
index 47b2f8bb6fb53f74875ada2afef4b91cb33ebf60..761029f39314a667a0c8f64c274bb007503ea94f 100644 (file)
@@ -1901,7 +1901,7 @@ fail_platform:
        return result;
 }
 
-static int asus_acpi_remove(struct acpi_device *device)
+static void asus_acpi_remove(struct acpi_device *device)
 {
        struct asus_laptop *asus = acpi_driver_data(device);
 
@@ -1914,7 +1914,6 @@ static int asus_acpi_remove(struct acpi_device *device)
 
        kfree(asus->name);
        kfree(asus);
-       return 0;
 }
 
 static const struct acpi_device_id asus_device_ids[] = {
index d3e7171928e5d55fbcd7a0e6d06b3c7b716a0025..abf01e00b799fa47b8ffbfb1e517c96e155db21e 100644 (file)
@@ -175,7 +175,7 @@ static int asus_wireless_add(struct acpi_device *adev)
        return err;
 }
 
-static int asus_wireless_remove(struct acpi_device *adev)
+static void asus_wireless_remove(struct acpi_device *adev)
 {
        struct asus_wireless_data *data = acpi_driver_data(adev);
 
@@ -183,7 +183,6 @@ static int asus_wireless_remove(struct acpi_device *adev)
                devm_led_classdev_unregister(&adev->dev, &data->led);
                destroy_workqueue(data->wq);
        }
-       return 0;
 }
 
 static struct acpi_driver asus_wireless_driver = {
index 9309ab5792cbc3710ac9370ca0d3a8ec2ebb316a..8b6a1461185999a3aed75ba4a34fdd5776af92e5 100644 (file)
@@ -418,11 +418,11 @@ failed_sensitivity:
        return error;
 }
 
-static int cmpc_accel_remove_v4(struct acpi_device *acpi)
+static void cmpc_accel_remove_v4(struct acpi_device *acpi)
 {
        device_remove_file(&acpi->dev, &cmpc_accel_sensitivity_attr_v4);
        device_remove_file(&acpi->dev, &cmpc_accel_g_select_attr_v4);
-       return cmpc_remove_acpi_notify_device(acpi);
+       cmpc_remove_acpi_notify_device(acpi);
 }
 
 static SIMPLE_DEV_PM_OPS(cmpc_accel_pm, cmpc_accel_suspend_v4,
@@ -648,10 +648,10 @@ failed_file:
        return error;
 }
 
-static int cmpc_accel_remove(struct acpi_device *acpi)
+static void cmpc_accel_remove(struct acpi_device *acpi)
 {
        device_remove_file(&acpi->dev, &cmpc_accel_sensitivity_attr);
-       return cmpc_remove_acpi_notify_device(acpi);
+       cmpc_remove_acpi_notify_device(acpi);
 }
 
 static const struct acpi_device_id cmpc_accel_device_ids[] = {
@@ -727,9 +727,9 @@ static int cmpc_tablet_add(struct acpi_device *acpi)
                                           cmpc_tablet_idev_init);
 }
 
-static int cmpc_tablet_remove(struct acpi_device *acpi)
+static void cmpc_tablet_remove(struct acpi_device *acpi)
 {
-       return cmpc_remove_acpi_notify_device(acpi);
+       cmpc_remove_acpi_notify_device(acpi);
 }
 
 #ifdef CONFIG_PM_SLEEP
@@ -974,7 +974,7 @@ out_bd:
        return retval;
 }
 
-static int cmpc_ipml_remove(struct acpi_device *acpi)
+static void cmpc_ipml_remove(struct acpi_device *acpi)
 {
        struct ipml200_dev *ipml;
 
@@ -988,8 +988,6 @@ static int cmpc_ipml_remove(struct acpi_device *acpi)
        }
 
        kfree(ipml);
-
-       return 0;
 }
 
 static const struct acpi_device_id cmpc_ipml_device_ids[] = {
@@ -1055,9 +1053,9 @@ static int cmpc_keys_add(struct acpi_device *acpi)
                                           cmpc_keys_idev_init);
 }
 
-static int cmpc_keys_remove(struct acpi_device *acpi)
+static void cmpc_keys_remove(struct acpi_device *acpi)
 {
-       return cmpc_remove_acpi_notify_device(acpi);
+       cmpc_remove_acpi_notify_device(acpi);
 }
 
 static const struct acpi_device_id cmpc_keys_device_ids[] = {
index a89fad47ff1394d06ef64551468a6de6cdacaded..aa0e6c90749426c1ecd337c6674b74f8b7fcab62 100644 (file)
@@ -206,7 +206,7 @@ static void rbtn_input_event(struct rbtn_data *rbtn_data)
  */
 
 static int rbtn_add(struct acpi_device *device);
-static int rbtn_remove(struct acpi_device *device);
+static void rbtn_remove(struct acpi_device *device);
 static void rbtn_notify(struct acpi_device *device, u32 event);
 
 static const struct acpi_device_id rbtn_ids[] = {
@@ -426,7 +426,7 @@ static int rbtn_add(struct acpi_device *device)
 
 }
 
-static int rbtn_remove(struct acpi_device *device)
+static void rbtn_remove(struct acpi_device *device)
 {
        struct rbtn_data *rbtn_data = device->driver_data;
 
@@ -443,8 +443,6 @@ static int rbtn_remove(struct acpi_device *device)
 
        rbtn_acquire(device, false);
        device->driver_data = NULL;
-
-       return 0;
 }
 
 static void rbtn_notify(struct acpi_device *device, u32 event)
index a388a28b6f2a2188a3fa0c472b92a7ae96ae5808..62b71e8e3567a977ee528528bcb00a1b0d1a911d 100644 (file)
@@ -1440,7 +1440,7 @@ fail_platform:
        return result;
 }
 
-static int eeepc_acpi_remove(struct acpi_device *device)
+static void eeepc_acpi_remove(struct acpi_device *device)
 {
        struct eeepc_laptop *eeepc = acpi_driver_data(device);
 
@@ -1451,7 +1451,6 @@ static int eeepc_acpi_remove(struct acpi_device *device)
        eeepc_platform_exit(eeepc);
 
        kfree(eeepc);
-       return 0;
 }
 
 
index b543d117b12c7a5f664cc2db1a12cb684c6331fd..085e044e888e4e788fa99894841e4d538d042bca 100644 (file)
@@ -847,15 +847,13 @@ err_free_fifo:
        return ret;
 }
 
-static int acpi_fujitsu_laptop_remove(struct acpi_device *device)
+static void acpi_fujitsu_laptop_remove(struct acpi_device *device)
 {
        struct fujitsu_laptop *priv = acpi_driver_data(device);
 
        fujitsu_laptop_platform_remove(device);
 
        kfifo_free(&priv->fifo);
-
-       return 0;
 }
 
 static void acpi_fujitsu_laptop_press(struct acpi_device *device, int scancode)
index 7fb7fe5eb55a1f9f5af86acc3a1bc2cc3ab879d4..17f08ce7552d77400be728b90abbf02a16a03b9c 100644 (file)
@@ -484,12 +484,11 @@ static int acpi_fujitsu_add(struct acpi_device *adev)
        return 0;
 }
 
-static int acpi_fujitsu_remove(struct acpi_device *adev)
+static void acpi_fujitsu_remove(struct acpi_device *adev)
 {
        free_irq(fujitsu.irq, fujitsu_interrupt);
        release_region(fujitsu.io_base, fujitsu.io_length);
        input_fujitsu_remove();
-       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP
index 3b81cb896fedff37c231ed62de5c9d859a2df3ac..35814a7707af79fa12ecb39a226fe3f95cf44171 100644 (file)
@@ -113,12 +113,10 @@ static int irst_add(struct acpi_device *acpi)
        return error;
 }
 
-static int irst_remove(struct acpi_device *acpi)
+static void irst_remove(struct acpi_device *acpi)
 {
        device_remove_file(&acpi->dev, &irst_wakeup_attr);
        device_remove_file(&acpi->dev, &irst_timeout_attr);
-
-       return 0;
 }
 
 static const struct acpi_device_id irst_ids[] = {
index 332868b140ed5844d4e4e7aaf066188bacfaab2e..1452110d36ad76314aa5bae6bfc3f8245666f608 100644 (file)
@@ -761,7 +761,7 @@ out_platform_registered:
        return ret;
 }
 
-static int acpi_remove(struct acpi_device *device)
+static void acpi_remove(struct acpi_device *device)
 {
        sysfs_remove_group(&pf_device->dev.kobj, &dev_attribute_group);
 
@@ -773,8 +773,6 @@ static int acpi_remove(struct acpi_device *device)
        platform_device_unregister(pf_device);
        pf_device = NULL;
        platform_driver_unregister(&pf_driver);
-
-       return 0;
 }
 
 static const struct acpi_device_id device_ids[] = {
index ad3083f9946d4d8f9881a4db3b6c5db21ea02a3b..cf845ee1c7b1f0ef4030d7648da3774fbb593136 100644 (file)
@@ -183,7 +183,7 @@ enum SINF_BITS { SINF_NUM_BATTERIES = 0,
 /* R1 handles SINF_AC_CUR_BRIGHT as SINF_CUR_BRIGHT, doesn't know AC state */
 
 static int acpi_pcc_hotkey_add(struct acpi_device *device);
-static int acpi_pcc_hotkey_remove(struct acpi_device *device);
+static void acpi_pcc_hotkey_remove(struct acpi_device *device);
 static void acpi_pcc_hotkey_notify(struct acpi_device *device, u32 event);
 
 static const struct acpi_device_id pcc_device_ids[] = {
@@ -1065,12 +1065,12 @@ out_hotkey:
        return result;
 }
 
-static int acpi_pcc_hotkey_remove(struct acpi_device *device)
+static void acpi_pcc_hotkey_remove(struct acpi_device *device)
 {
        struct pcc_acpi *pcc = acpi_driver_data(device);
 
        if (!device || !pcc)
-               return -EINVAL;
+               return;
 
        i8042_remove_filter(panasonic_i8042_filter);
 
@@ -1088,8 +1088,6 @@ static int acpi_pcc_hotkey_remove(struct acpi_device *device)
 
        kfree(pcc->sinf);
        kfree(pcc);
-
-       return 0;
 }
 
 module_acpi_driver(acpi_pcc_driver);
index 765fcaba4d121ea09752b7554437788b1743b0b0..a19aac70252fa5adc1e288b8ce27a8e7d9559180 100644 (file)
@@ -3263,7 +3263,7 @@ outwalk:
        return result;
 }
 
-static int sony_nc_remove(struct acpi_device *device)
+static void sony_nc_remove(struct acpi_device *device)
 {
        struct sony_nc_value *item;
 
@@ -3280,8 +3280,6 @@ static int sony_nc_remove(struct acpi_device *device)
        sony_pf_remove();
        sony_laptop_remove_input();
        dprintk(SONY_NC_DRIVER_NAME " removed.\n");
-
-       return 0;
 }
 
 static const struct acpi_device_id sony_device_ids[] = {
@@ -4630,14 +4628,14 @@ found:
  *  ACPI driver
  *
  *****************/
-static int sony_pic_remove(struct acpi_device *device)
+static void sony_pic_remove(struct acpi_device *device)
 {
        struct sony_pic_ioport *io, *tmp_io;
        struct sony_pic_irq *irq, *tmp_irq;
 
        if (sony_pic_disable(device)) {
                pr_err("Couldn't disable device\n");
-               return -ENXIO;
+               return;
        }
 
        free_irq(spic_dev.cur_irq->irq.interrupts[0], &spic_dev);
@@ -4667,7 +4665,6 @@ static int sony_pic_remove(struct acpi_device *device)
        spic_dev.cur_irq = NULL;
 
        dprintk(SONY_PIC_DRIVER_NAME " removed.\n");
-       return 0;
 }
 
 static int sony_pic_add(struct acpi_device *device)
index 958df41ad5098d12c95dac664f862253980bd6bf..52d94d8b1f25f050f03f6b69b0e243454ddac1ec 100644 (file)
@@ -744,7 +744,7 @@ error:
 }
 
 // Remove a System76 ACPI device
-static int system76_remove(struct acpi_device *acpi_dev)
+static void system76_remove(struct acpi_device *acpi_dev)
 {
        struct system76_data *data;
 
@@ -760,8 +760,6 @@ static int system76_remove(struct acpi_device *acpi_dev)
        devm_led_classdev_unregister(&acpi_dev->dev, &data->kb_led);
 
        system76_get(data, "FINI");
-
-       return 0;
 }
 
 static struct acpi_driver system76_driver = {
index 6d18fbf8762b1bfcc03b171286c75f27ee6859e8..20df1ebefc30e4c27abe53a00d9bb5cefe1bcd99 100644 (file)
@@ -332,7 +332,7 @@ err_free:
        return err;
 }
 
-static int topstar_acpi_remove(struct acpi_device *device)
+static void topstar_acpi_remove(struct acpi_device *device)
 {
        struct topstar_laptop *topstar = acpi_driver_data(device);
 
@@ -344,7 +344,6 @@ static int topstar_acpi_remove(struct acpi_device *device)
        topstar_acpi_exit(topstar);
 
        kfree(topstar);
-       return 0;
 }
 
 static const struct acpi_device_id topstar_device_ids[] = {
index 160abd3b3af8be37b2abf7018e53d552e20c7591..ce6a735b1abd8abaf6bbf3c4c37797e610c796d6 100644 (file)
@@ -3186,7 +3186,7 @@ static void print_supported_features(struct toshiba_acpi_dev *dev)
        pr_cont("\n");
 }
 
-static int toshiba_acpi_remove(struct acpi_device *acpi_dev)
+static void toshiba_acpi_remove(struct acpi_device *acpi_dev)
 {
        struct toshiba_acpi_dev *dev = acpi_driver_data(acpi_dev);
 
@@ -3234,8 +3234,6 @@ static int toshiba_acpi_remove(struct acpi_device *acpi_dev)
                toshiba_acpi = NULL;
 
        kfree(dev);
-
-       return 0;
 }
 
 static const char *find_hci_method(acpi_handle handle)
index 57a5dc60c58a62abc27494dffe6af221a52ca4fb..d8f81962a2402de1bab45cb042715786a2fd82da 100644 (file)
@@ -36,7 +36,7 @@ struct toshiba_bluetooth_dev {
 };
 
 static int toshiba_bt_rfkill_add(struct acpi_device *device);
-static int toshiba_bt_rfkill_remove(struct acpi_device *device);
+static void toshiba_bt_rfkill_remove(struct acpi_device *device);
 static void toshiba_bt_rfkill_notify(struct acpi_device *device, u32 event);
 
 static const struct acpi_device_id bt_device_ids[] = {
@@ -279,7 +279,7 @@ static int toshiba_bt_rfkill_add(struct acpi_device *device)
        return result;
 }
 
-static int toshiba_bt_rfkill_remove(struct acpi_device *device)
+static void toshiba_bt_rfkill_remove(struct acpi_device *device)
 {
        struct toshiba_bluetooth_dev *bt_dev = acpi_driver_data(device);
 
@@ -291,7 +291,7 @@ static int toshiba_bt_rfkill_remove(struct acpi_device *device)
 
        kfree(bt_dev);
 
-       return toshiba_bluetooth_disable(device->handle);
+       toshiba_bluetooth_disable(device->handle);
 }
 
 module_acpi_driver(toshiba_bt_rfkill_driver);
index 49e84095bb010739b23c6aa1e7e915905810ce61..8c9f76286b0807f4ab6cbf723816967794cba383 100644 (file)
@@ -138,14 +138,12 @@ static void toshiba_haps_notify(struct acpi_device *device, u32 event)
                                        event, 0);
 }
 
-static int toshiba_haps_remove(struct acpi_device *device)
+static void toshiba_haps_remove(struct acpi_device *device)
 {
        sysfs_remove_group(&device->dev.kobj, &haps_attr_group);
 
        if (toshiba_haps)
                toshiba_haps = NULL;
-
-       return 0;
 }
 
 /* Helper function */
index 11c60a2734468e2f2203413527de181ee7f456af..c64d9f0844049902dcf77d0c5c50ae9026f6f0da 100644 (file)
@@ -83,10 +83,9 @@ static int wl_add(struct acpi_device *device)
        return err;
 }
 
-static int wl_remove(struct acpi_device *device)
+static void wl_remove(struct acpi_device *device)
 {
        wireless_input_destroy();
-       return 0;
 }
 
 static struct acpi_driver wl_driver = {
index 97440462aa258a4d5c52dd650895a75681828574..391f7ea4431e08dea2fbd3f99726b267a502b7a3 100644 (file)
@@ -143,13 +143,12 @@ static int ebook_switch_add(struct acpi_device *device)
        return error;
 }
 
-static int ebook_switch_remove(struct acpi_device *device)
+static void ebook_switch_remove(struct acpi_device *device)
 {
        struct ebook_switch *button = acpi_driver_data(device);
 
        input_unregister_device(button->input);
        kfree(button);
-       return 0;
 }
 
 static struct acpi_driver xo15_ebook_driver = {
index 5dca26e14bdc84704fe513c874f776c8c3ecf32c..0dcbabd1533db96127bfdc5419985eb85d80a4f6 100644 (file)
@@ -101,10 +101,9 @@ static int ptp_vmw_acpi_add(struct acpi_device *device)
        return 0;
 }
 
-static int ptp_vmw_acpi_remove(struct acpi_device *device)
+static void ptp_vmw_acpi_remove(struct acpi_device *device)
 {
        ptp_clock_unregister(ptp_vmw_clock);
-       return 0;
 }
 
 static const struct acpi_device_id ptp_vmw_acpi_device_ids[] = {
index 101d7e791a137d0532a613f6850759ced9104314..3f885b08a4909fb972126c6aa1f9e980229a067a 100644 (file)
@@ -179,22 +179,20 @@ static int intel_menlow_memory_add(struct acpi_device *device)
 
 }
 
-static int intel_menlow_memory_remove(struct acpi_device *device)
+static void intel_menlow_memory_remove(struct acpi_device *device)
 {
        struct thermal_cooling_device *cdev;
 
        if (!device)
-               return -EINVAL;
+               return;
 
        cdev = acpi_driver_data(device);
        if (!cdev)
-               return -EINVAL;
+               return;
 
        sysfs_remove_link(&device->dev.kobj, "thermal_cooling");
        sysfs_remove_link(&cdev->device.kobj, "device");
        thermal_cooling_device_unregister(cdev);
-
-       return 0;
 }
 
 static const struct acpi_device_id intel_menlow_memory_ids[] = {
index c0d9339cff8734f5da52d129f4aee6fc44e77565..e9e7acb577bfad513a7da6710444e29d0db432fb 100644 (file)
@@ -193,13 +193,12 @@ static int apple_bl_add(struct acpi_device *dev)
        return 0;
 }
 
-static int apple_bl_remove(struct acpi_device *dev)
+static void apple_bl_remove(struct acpi_device *dev)
 {
        backlight_device_unregister(apple_backlight_device);
 
        release_region(hw_data->iostart, hw_data->iolen);
        hw_data = NULL;
-       return 0;
 }
 
 static const struct acpi_device_id apple_bl_ids[] = {
index 4cebad324b202ee348badfb81b914425a90ac1df..045bb72d9a4388a3ac748a7cd90f4de853c38a05 100644 (file)
@@ -224,14 +224,12 @@ static int ni903x_acpi_add(struct acpi_device *device)
        return 0;
 }
 
-static int ni903x_acpi_remove(struct acpi_device *device)
+static void ni903x_acpi_remove(struct acpi_device *device)
 {
        struct ni903x_wdt *wdt = acpi_driver_data(device);
 
        ni903x_wdd_stop(&wdt->wdd);
        watchdog_unregister_device(&wdt->wdd);
-
-       return 0;
 }
 
 static const struct acpi_device_id ni903x_device_ids[] = {
index ccd8012020f15469451431987b72fec88b5341d2..ede69a5278d3f31f226f767b1d92a71d0f4733a4 100644 (file)
@@ -122,7 +122,7 @@ static int acpi_pad_add(struct acpi_device *device)
        return 0;
 }
 
-static int acpi_pad_remove(struct acpi_device *device)
+static void acpi_pad_remove(struct acpi_device *device)
 {
        mutex_lock(&xen_cpu_lock);
        xen_acpi_pad_idle_cpus(0);
@@ -130,7 +130,6 @@ static int acpi_pad_remove(struct acpi_device *device)
 
        acpi_remove_notify_handler(device->handle,
                ACPI_DEVICE_NOTIFY, acpi_pad_notify);
-       return 0;
 }
 
 static const struct acpi_device_id pad_device_ids[] = {
index c09d72986968ab224374454efe5cd6ea4d7a372b..cd3b75e08ec3fa67d4b4bff40269ca49fa23a20f 100644 (file)
@@ -149,7 +149,7 @@ struct acpi_hotplug_context {
  */
 
 typedef int (*acpi_op_add) (struct acpi_device * device);
-typedef int (*acpi_op_remove) (struct acpi_device * device);
+typedef void (*acpi_op_remove) (struct acpi_device *device);
 typedef void (*acpi_op_notify) (struct acpi_device * device, u32 event);
 
 struct acpi_device_ops {