summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2009-01-19 13:37:03 +0000
committerLiam Girdwood <lrg@slimlogic.co.uk>2009-03-31 09:56:21 +0100
commit93c62da23a717f59933ec799688da42f71d8c6c4 (patch)
tree7bc6329c6e01bff6a9573b661c3f2378750c3df5
parent0527100fd11d9710c7e153d791da78824b7b46fa (diff)
regulator: Allow init data to be supplied for bq24022
Previously it was not possible to do so, making it impossible for machines to configure the driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
-rw-r--r--drivers/regulator/bq24022.c3
-rw-r--r--include/linux/regulator/bq24022.h3
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/regulator/bq24022.c b/drivers/regulator/bq24022.c
index 6804333492e..7ecb820ceeb 100644
--- a/drivers/regulator/bq24022.c
+++ b/drivers/regulator/bq24022.c
@@ -105,7 +105,8 @@ static int __init bq24022_probe(struct platform_device *pdev)
ret = gpio_direction_output(pdata->gpio_iset2, 0);
ret = gpio_direction_output(pdata->gpio_nce, 1);
- bq24022 = regulator_register(&bq24022_desc, &pdev->dev, NULL, pdata);
+ bq24022 = regulator_register(&bq24022_desc, &pdev->dev,
+ pdata->init_data, pdata);
if (IS_ERR(bq24022)) {
dev_dbg(&pdev->dev, "couldn't register regulator\n");
ret = PTR_ERR(bq24022);
diff --git a/include/linux/regulator/bq24022.h b/include/linux/regulator/bq24022.h
index e84b0a9feda..a6d014005d4 100644
--- a/include/linux/regulator/bq24022.h
+++ b/include/linux/regulator/bq24022.h
@@ -10,6 +10,8 @@
*
*/
+struct regulator_init_data;
+
/**
* bq24022_mach_info - platform data for bq24022
* @gpio_nce: GPIO line connected to the nCE pin, used to enable / disable charging
@@ -18,4 +20,5 @@
struct bq24022_mach_info {
int gpio_nce;
int gpio_iset2;
+ struct regulator_init_data *init_data;
};