From 2dc9215d7c94f7f9f34ccf8b1710ad73d82f6216 Mon Sep 17 00:00:00 2001 From: Krzysztof Kozlowski Date: Thu, 12 Mar 2015 08:44:02 +0100 Subject: power_supply: Move run-time configuration to separate structure Add new structure 'power_supply_config' for holding run-time initialization data like of_node, supplies and private driver data. The power_supply_register() function is changed so all power supply drivers need updating. When registering the power supply this new 'power_supply_config' should be used instead of directly initializing 'struct power_supply'. This allows changing the ownership of power_supply structure from driver to the power supply core in next patches. When a driver does not use of_node or supplies then it should use NULL as config. If driver uses of_node or supplies then it should allocate config on stack and initialize it with proper values. Signed-off-by: Krzysztof Kozlowski Reviewed-by: Bartlomiej Zolnierkiewicz Acked-by: Pavel Machek [for the nvec part] Reviewed-by: Marc Dietrich [for drivers/platform/x86/compal-laptop.c] Reviewed-by: Darren Hart [for drivers/hid/*] Reviewed-by: Jiri Kosina Signed-off-by: Sebastian Reichel --- drivers/hid/hid-input.c | 2 +- drivers/hid/hid-sony.c | 2 +- drivers/hid/hid-wiimote-modules.c | 2 +- drivers/hid/wacom_sys.c | 5 +++-- 4 files changed, 6 insertions(+), 5 deletions(-) (limited to 'drivers/hid') diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c index 052869d0ab78..6182265a6571 100644 --- a/drivers/hid/hid-input.c +++ b/drivers/hid/hid-input.c @@ -439,7 +439,7 @@ static bool hidinput_setup_battery(struct hid_device *dev, unsigned report_type, dev->battery_report_type = report_type; dev->battery_report_id = field->report->id; - ret = power_supply_register(&dev->dev, battery); + ret = power_supply_register(&dev->dev, battery, NULL); if (ret != 0) { hid_warn(dev, "can't register power supply: %d\n", ret); kfree(battery->name); diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c index 31e9d2561106..16fc6a17ac63 100644 --- a/drivers/hid/hid-sony.c +++ b/drivers/hid/hid-sony.c @@ -1718,7 +1718,7 @@ static int sony_battery_probe(struct sony_sc *sc) if (!sc->battery.name) return -ENOMEM; - ret = power_supply_register(&hdev->dev, &sc->battery); + ret = power_supply_register(&hdev->dev, &sc->battery, NULL); if (ret) { hid_err(hdev, "Unable to register battery device\n"); goto err_free; diff --git a/drivers/hid/hid-wiimote-modules.c b/drivers/hid/hid-wiimote-modules.c index 6b61f01e01e7..91cb00abcb8e 100644 --- a/drivers/hid/hid-wiimote-modules.c +++ b/drivers/hid/hid-wiimote-modules.c @@ -250,7 +250,7 @@ static int wiimod_battery_probe(const struct wiimod_ops *ops, if (!wdata->battery.name) return -ENOMEM; - ret = power_supply_register(&wdata->hdev->dev, &wdata->battery); + ret = power_supply_register(&wdata->hdev->dev, &wdata->battery, NULL); if (ret) { hid_err(wdata->hdev, "cannot register battery device\n"); goto err_free; diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c index f0568a7e6de9..148949c0e039 100644 --- a/drivers/hid/wacom_sys.c +++ b/drivers/hid/wacom_sys.c @@ -1021,13 +1021,14 @@ static int wacom_initialize_battery(struct wacom *wacom) wacom->ac.use_for_apm = 0; error = power_supply_register(&wacom->hdev->dev, - &wacom->battery); + &wacom->battery, NULL); if (error) return error; power_supply_powers(&wacom->battery, &wacom->hdev->dev); - error = power_supply_register(&wacom->hdev->dev, &wacom->ac); + error = power_supply_register(&wacom->hdev->dev, &wacom->ac, + NULL); if (error) { power_supply_unregister(&wacom->battery); return error; -- cgit v1.2.3