summaryrefslogtreecommitdiff
path: root/drivers/power/supply/max14656_charger_detector.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/power/supply/max14656_charger_detector.c')
-rw-r--r--drivers/power/supply/max14656_charger_detector.c24
1 files changed, 7 insertions, 17 deletions
diff --git a/drivers/power/supply/max14656_charger_detector.c b/drivers/power/supply/max14656_charger_detector.c
index 137f9fafce8c..a5b42b42d134 100644
--- a/drivers/power/supply/max14656_charger_detector.c
+++ b/drivers/power/supply/max14656_charger_detector.c
@@ -14,12 +14,11 @@
#include <linux/delay.h>
#include <linux/i2c.h>
#include <linux/interrupt.h>
+#include <linux/mod_devicetable.h>
#include <linux/slab.h>
-#include <linux/gpio.h>
-#include <linux/of_gpio.h>
-#include <linux/of_device.h>
#include <linux/workqueue.h>
#include <linux/power_supply.h>
+#include <linux/devm-helpers.h>
#define MAX14656_MANUFACTURER "Maxim Integrated"
#define MAX14656_NAME "max14656"
@@ -235,16 +234,7 @@ static enum power_supply_property max14656_battery_props[] = {
POWER_SUPPLY_PROP_MANUFACTURER,
};
-static void stop_irq_work(void *data)
-{
- struct max14656_chip *chip = data;
-
- cancel_delayed_work_sync(&chip->irq_work);
-}
-
-
-static int max14656_probe(struct i2c_client *client,
- const struct i2c_device_id *id)
+static int max14656_probe(struct i2c_client *client)
{
struct i2c_adapter *adapter = client->adapter;
struct device *dev = &client->dev;
@@ -288,10 +278,10 @@ static int max14656_probe(struct i2c_client *client,
return -EINVAL;
}
- INIT_DELAYED_WORK(&chip->irq_work, max14656_irq_worker);
- ret = devm_add_action(dev, stop_irq_work, chip);
+ ret = devm_delayed_work_autocancel(dev, &chip->irq_work,
+ max14656_irq_worker);
if (ret) {
- dev_err(dev, "devm_add_action %d failed\n", ret);
+ dev_err(dev, "devm_delayed_work_autocancel %d failed\n", ret);
return ret;
}
@@ -310,7 +300,7 @@ static int max14656_probe(struct i2c_client *client,
}
static const struct i2c_device_id max14656_id[] = {
- { "max14656", 0 },
+ { "max14656" },
{}
};
MODULE_DEVICE_TABLE(i2c, max14656_id);