From 081bab217db769526c1202c87099ff69737126ae Mon Sep 17 00:00:00 2001 From: Andrew F. Davis Date: Tue, 22 Sep 2015 14:35:06 -0500 Subject: power: bq27x00_battery: Renaming for consistency Rename functions that are used by multiple devices. New devices have been added and the function names and driver name are no longer general enough for the functionality they provide. Signed-off-by: Andrew F. Davis Acked-by: Tony Lindgren Acked-by: GUAN Xuetao Signed-off-by: Sebastian Reichel --- drivers/w1/slaves/w1_bq27000.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers/w1') diff --git a/drivers/w1/slaves/w1_bq27000.c b/drivers/w1/slaves/w1_bq27000.c index caafb1722783..84805317a5ce 100644 --- a/drivers/w1/slaves/w1_bq27000.c +++ b/drivers/w1/slaves/w1_bq27000.c @@ -15,7 +15,7 @@ #include #include #include -#include +#include #include "../w1.h" #include "../w1_int.h" @@ -39,7 +39,7 @@ static int w1_bq27000_read(struct device *dev, unsigned int reg) return val; } -static struct bq27000_platform_data bq27000_battery_info = { +static struct bq27xxx_platform_data bq27000_battery_info = { .read = w1_bq27000_read, .name = "bq27000-battery", }; -- cgit v1.2.3 From 424cfde49acaf1426e90837961e8aead0238b11b Mon Sep 17 00:00:00 2001 From: Andrew F. Davis Date: Tue, 22 Sep 2015 14:35:07 -0500 Subject: power: bq27xxx_battery: Platform initialization must declare a device When initialized as a platform device the initializer must now specify a device. An empty device name is no longer valid. Signed-off-by: Andrew F. Davis Signed-off-by: Sebastian Reichel --- drivers/power/bq27xxx_battery.c | 9 ++++++--- drivers/w1/slaves/w1_bq27000.c | 1 + include/linux/power/bq27xxx_battery.h | 6 +++++- 3 files changed, 12 insertions(+), 4 deletions(-) (limited to 'drivers/w1') diff --git a/drivers/power/bq27xxx_battery.c b/drivers/power/bq27xxx_battery.c index e72055ce7b3c..073441383df1 100644 --- a/drivers/power/bq27xxx_battery.c +++ b/drivers/power/bq27xxx_battery.c @@ -91,8 +91,6 @@ struct bq27xxx_access_methods { int (*read)(struct bq27xxx_device_info *di, u8 reg, bool single); }; -enum bq27xxx_chip { BQ27000, BQ27500, BQ27425, BQ27742, BQ27510}; - struct bq27xxx_reg_cache { int temperature; int time_to_empty; @@ -1036,6 +1034,11 @@ static int bq27xxx_battery_platform_probe(struct platform_device *pdev) return -EINVAL; } + if (!pdata->chip) { + dev_err(&pdev->dev, "no device supplied\n"); + return -EINVAL; + } + di = devm_kzalloc(&pdev->dev, sizeof(*di), GFP_KERNEL); if (!di) return -ENOMEM; @@ -1043,7 +1046,7 @@ static int bq27xxx_battery_platform_probe(struct platform_device *pdev) platform_set_drvdata(pdev, di); di->dev = &pdev->dev; - di->chip = BQ27000; + di->chip = pdata->chip; name = pdata->name ?: dev_name(&pdev->dev); di->bus.read = &bq27xxx_battery_platform_read; diff --git a/drivers/w1/slaves/w1_bq27000.c b/drivers/w1/slaves/w1_bq27000.c index 84805317a5ce..9f4a86b754ba 100644 --- a/drivers/w1/slaves/w1_bq27000.c +++ b/drivers/w1/slaves/w1_bq27000.c @@ -42,6 +42,7 @@ static int w1_bq27000_read(struct device *dev, unsigned int reg) static struct bq27xxx_platform_data bq27000_battery_info = { .read = w1_bq27000_read, .name = "bq27000-battery", + .chip = BQ27000, }; static int w1_bq27000_add_slave(struct w1_slave *sl) diff --git a/include/linux/power/bq27xxx_battery.h b/include/linux/power/bq27xxx_battery.h index e70a93a6799f..a4efb10a1bab 100644 --- a/include/linux/power/bq27xxx_battery.h +++ b/include/linux/power/bq27xxx_battery.h @@ -3,7 +3,8 @@ /** * struct bq27xxx_plaform_data - Platform data for bq27xxx devices - * @name: Name of the battery. If NULL the driver will fallback to "bq27000". + * @name: Name of the battery. + * @chip: Chip class number of this device. * @read: HDQ read callback. * This function should provide access to the HDQ bus the battery is * connected to. @@ -11,8 +12,11 @@ * register to be read. The return value should either be the content of * the passed register or an error value. */ +enum bq27xxx_chip { BQ27000 = 1, BQ27500, BQ27425, BQ27742, BQ27510 }; + struct bq27xxx_platform_data { const char *name; + enum bq27xxx_chip chip; int (*read)(struct device *dev, unsigned int); }; -- cgit v1.2.3