* [PATCH 01/10] regulator: tps51632: Use devm_regulator_register
@ 2013-09-04 11:47 Sachin Kamat
2013-09-04 11:47 ` [PATCH 02/10] regulator: tps62360: " Sachin Kamat
` (9 more replies)
0 siblings, 10 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
This series is compile tested.
---
drivers/regulator/tps51632-regulator.c | 11 +----------
1 file changed, 1 insertion(+), 10 deletions(-)
diff --git a/drivers/regulator/tps51632-regulator.c b/drivers/regulator/tps51632-regulator.c
index 6e67be7..83a745e 100644
--- a/drivers/regulator/tps51632-regulator.c
+++ b/drivers/regulator/tps51632-regulator.c
@@ -343,7 +343,7 @@ static int tps51632_probe(struct i2c_client *client,
config.regmap = tps->regmap;
config.of_node = client->dev.of_node;
- rdev = regulator_register(&tps->desc, &config);
+ rdev = devm_regulator_register(&client->dev, &tps->desc, &config);
if (IS_ERR(rdev)) {
dev_err(tps->dev, "regulator register failed\n");
return PTR_ERR(rdev);
@@ -353,14 +353,6 @@ static int tps51632_probe(struct i2c_client *client,
return 0;
}
-static int tps51632_remove(struct i2c_client *client)
-{
- struct tps51632_chip *tps = i2c_get_clientdata(client);
-
- regulator_unregister(tps->rdev);
- return 0;
-}
-
static const struct i2c_device_id tps51632_id[] = {
{.name = "tps51632",},
{},
@@ -375,7 +367,6 @@ static struct i2c_driver tps51632_i2c_driver = {
.of_match_table = of_match_ptr(tps51632_of_match),
},
.probe = tps51632_probe,
- .remove = tps51632_remove,
.id_table = tps51632_id,
};
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 02/10] regulator: tps62360: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 03/10] regulator: tps65023: " Sachin Kamat
` (8 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps62360-regulator.c | 17 +----------------
1 file changed, 1 insertion(+), 16 deletions(-)
diff --git a/drivers/regulator/tps62360-regulator.c b/drivers/regulator/tps62360-regulator.c
index a490d5b..c4a5695 100644
--- a/drivers/regulator/tps62360-regulator.c
+++ b/drivers/regulator/tps62360-regulator.c
@@ -476,7 +476,7 @@ static int tps62360_probe(struct i2c_client *client,
config.of_node = client->dev.of_node;
/* Register the regulators */
- rdev = regulator_register(&tps->desc, &config);
+ rdev = devm_regulator_register(&client->dev, &tps->desc, &config);
if (IS_ERR(rdev)) {
dev_err(tps->dev,
"%s(): regulator register failed with err %s\n",
@@ -488,20 +488,6 @@ static int tps62360_probe(struct i2c_client *client,
return 0;
}
-/**
- * tps62360_remove - tps62360 driver i2c remove handler
- * @client: i2c driver client device structure
- *
- * Unregister TPS driver as an i2c client device driver
- */
-static int tps62360_remove(struct i2c_client *client)
-{
- struct tps62360_chip *tps = i2c_get_clientdata(client);
-
- regulator_unregister(tps->rdev);
- return 0;
-}
-
static void tps62360_shutdown(struct i2c_client *client)
{
struct tps62360_chip *tps = i2c_get_clientdata(client);
@@ -535,7 +521,6 @@ static struct i2c_driver tps62360_i2c_driver = {
.of_match_table = of_match_ptr(tps62360_of_match),
},
.probe = tps62360_probe,
- .remove = tps62360_remove,
.shutdown = tps62360_shutdown,
.id_table = tps62360_id,
};
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 03/10] regulator: tps65023: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
2013-09-04 11:47 ` [PATCH 02/10] regulator: tps62360: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 04/10] regulator: tps6507x: " Sachin Kamat
` (7 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps65023-regulator.c | 22 +++-------------------
1 file changed, 3 insertions(+), 19 deletions(-)
diff --git a/drivers/regulator/tps65023-regulator.c b/drivers/regulator/tps65023-regulator.c
index 9d053e2..8fbbdcc 100644
--- a/drivers/regulator/tps65023-regulator.c
+++ b/drivers/regulator/tps65023-regulator.c
@@ -277,12 +277,12 @@ static int tps_65023_probe(struct i2c_client *client,
config.regmap = tps->regmap;
/* Register the regulators */
- rdev = regulator_register(&tps->desc[i], &config);
+ rdev = devm_regulator_register(&client->dev, &tps->desc[i],
+ &config);
if (IS_ERR(rdev)) {
dev_err(&client->dev, "failed to register %s\n",
id->name);
- error = PTR_ERR(rdev);
- goto fail;
+ return PTR_ERR(rdev);
}
/* Save regulator for cleanup */
@@ -296,21 +296,6 @@ static int tps_65023_probe(struct i2c_client *client,
TPS65023_REG_CTRL2_CORE_ADJ, TPS65023_REG_CTRL2_CORE_ADJ);
return 0;
-
- fail:
- while (--i >= 0)
- regulator_unregister(tps->rdev[i]);
- return error;
-}
-
-static int tps_65023_remove(struct i2c_client *client)
-{
- struct tps_pmic *tps = i2c_get_clientdata(client);
- int i;
-
- for (i = 0; i < TPS65023_NUM_REGULATOR; i++)
- regulator_unregister(tps->rdev[i]);
- return 0;
}
static const struct tps_info tps65020_regs[] = {
@@ -430,7 +415,6 @@ static struct i2c_driver tps_65023_i2c_driver = {
.owner = THIS_MODULE,
},
.probe = tps_65023_probe,
- .remove = tps_65023_remove,
.id_table = tps_65023_id,
};
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 04/10] regulator: tps6507x: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
2013-09-04 11:47 ` [PATCH 02/10] regulator: tps62360: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 03/10] regulator: tps65023: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 05/10] regulator: tps65090: " Sachin Kamat
` (6 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps6507x-regulator.c | 23 +++--------------------
1 file changed, 3 insertions(+), 20 deletions(-)
diff --git a/drivers/regulator/tps6507x-regulator.c b/drivers/regulator/tps6507x-regulator.c
index 4117ff5..162a0fa 100644
--- a/drivers/regulator/tps6507x-regulator.c
+++ b/drivers/regulator/tps6507x-regulator.c
@@ -508,13 +508,13 @@ static int tps6507x_pmic_probe(struct platform_device *pdev)
config.of_node = tps6507x_reg_matches[i].of_node;
}
- rdev = regulator_register(&tps->desc[i], &config);
+ rdev = devm_regulator_register(&pdev->dev, &tps->desc[i],
+ &config);
if (IS_ERR(rdev)) {
dev_err(tps6507x_dev->dev,
"failed to register %s regulator\n",
pdev->name);
- error = PTR_ERR(rdev);
- goto fail;
+ return PTR_ERR(rdev);
}
/* Save regulator for cleanup */
@@ -525,22 +525,6 @@ static int tps6507x_pmic_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, tps6507x_dev);
return 0;
-
-fail:
- while (--i >= 0)
- regulator_unregister(tps->rdev[i]);
- return error;
-}
-
-static int tps6507x_pmic_remove(struct platform_device *pdev)
-{
- struct tps6507x_dev *tps6507x_dev = platform_get_drvdata(pdev);
- struct tps6507x_pmic *tps = tps6507x_dev->pmic;
- int i;
-
- for (i = 0; i < TPS6507X_NUM_REGULATOR; i++)
- regulator_unregister(tps->rdev[i]);
- return 0;
}
static struct platform_driver tps6507x_pmic_driver = {
@@ -549,7 +533,6 @@ static struct platform_driver tps6507x_pmic_driver = {
.owner = THIS_MODULE,
},
.probe = tps6507x_pmic_probe,
- .remove = tps6507x_pmic_remove,
};
static int __init tps6507x_pmic_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 05/10] regulator: tps65090: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (2 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 04/10] regulator: tps6507x: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 06/10] regulator: tps65217: " Sachin Kamat
` (5 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps65090-regulator.c | 35 +++++---------------------------
1 file changed, 5 insertions(+), 30 deletions(-)
diff --git a/drivers/regulator/tps65090-regulator.c b/drivers/regulator/tps65090-regulator.c
index c8e7045..bd611cdf 100644
--- a/drivers/regulator/tps65090-regulator.c
+++ b/drivers/regulator/tps65090-regulator.c
@@ -279,7 +279,7 @@ static int tps65090_regulator_probe(struct platform_device *pdev)
if (ret < 0) {
dev_err(&pdev->dev,
"failed disable ext control\n");
- goto scrub;
+ return ret;
}
}
}
@@ -296,12 +296,11 @@ static int tps65090_regulator_probe(struct platform_device *pdev)
else
config.of_node = NULL;
- rdev = regulator_register(ri->desc, &config);
+ rdev = devm_regulator_register(&pdev->dev, ri->desc, &config);
if (IS_ERR(rdev)) {
dev_err(&pdev->dev, "failed to register regulator %s\n",
ri->desc->name);
- ret = PTR_ERR(rdev);
- goto scrub;
+ return PTR_ERR(rdev);
}
ri->rdev = rdev;
@@ -309,36 +308,13 @@ static int tps65090_regulator_probe(struct platform_device *pdev)
if (tps_pdata && is_dcdc(num) && tps_pdata->reg_init_data &&
tps_pdata->enable_ext_control) {
ret = tps65090_config_ext_control(ri, true);
- if (ret < 0) {
- /* Increment num to get unregister rdev */
- num++;
- goto scrub;
- }
+ if (ret < 0)
+ return ret;
}
}
platform_set_drvdata(pdev, pmic);
return 0;
-
-scrub:
- while (--num >= 0) {
- ri = &pmic[num];
- regulator_unregister(ri->rdev);
- }
- return ret;
-}
-
-static int tps65090_regulator_remove(struct platform_device *pdev)
-{
- struct tps65090_regulator *pmic = platform_get_drvdata(pdev);
- struct tps65090_regulator *ri;
- int num;
-
- for (num = 0; num < TPS65090_REGULATOR_MAX; ++num) {
- ri = &pmic[num];
- regulator_unregister(ri->rdev);
- }
- return 0;
}
static struct platform_driver tps65090_regulator_driver = {
@@ -347,7 +323,6 @@ static struct platform_driver tps65090_regulator_driver = {
.owner = THIS_MODULE,
},
.probe = tps65090_regulator_probe,
- .remove = tps65090_regulator_remove,
};
static int __init tps65090_regulator_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 06/10] regulator: tps65217: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (3 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 05/10] regulator: tps65090: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 07/10] regulator: tps6586x: " Sachin Kamat
` (4 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps65217-regulator.c | 26 ++++----------------------
1 file changed, 4 insertions(+), 22 deletions(-)
diff --git a/drivers/regulator/tps65217-regulator.c b/drivers/regulator/tps65217-regulator.c
index 2df4616..8c0467b 100644
--- a/drivers/regulator/tps65217-regulator.c
+++ b/drivers/regulator/tps65217-regulator.c
@@ -339,7 +339,7 @@ static int tps65217_regulator_probe(struct platform_device *pdev)
struct regulator_init_data *reg_data;
struct regulator_dev *rdev;
struct regulator_config config = { };
- int i, ret;
+ int i;
if (tps->dev->of_node)
pdata = tps65217_parse_dt(pdev);
@@ -377,35 +377,18 @@ static int tps65217_regulator_probe(struct platform_device *pdev)
if (tps->dev->of_node)
config.of_node = pdata->of_node[i];
- rdev = regulator_register(®ulators[i], &config);
+ rdev = devm_regulator_register(&pdev->dev, ®ulators[i],
+ &config);
if (IS_ERR(rdev)) {
dev_err(tps->dev, "failed to register %s regulator\n",
pdev->name);
- ret = PTR_ERR(rdev);
- goto err_unregister_regulator;
+ return PTR_ERR(rdev);
}
/* Save regulator for cleanup */
tps->rdev[i] = rdev;
}
return 0;
-
-err_unregister_regulator:
- while (--i >= 0)
- regulator_unregister(tps->rdev[i]);
-
- return ret;
-}
-
-static int tps65217_regulator_remove(struct platform_device *pdev)
-{
- struct tps65217 *tps = platform_get_drvdata(pdev);
- unsigned int i;
-
- for (i = 0; i < TPS65217_NUM_REGULATOR; i++)
- regulator_unregister(tps->rdev[i]);
-
- return 0;
}
static struct platform_driver tps65217_regulator_driver = {
@@ -413,7 +396,6 @@ static struct platform_driver tps65217_regulator_driver = {
.name = "tps65217-pmic",
},
.probe = tps65217_regulator_probe,
- .remove = tps65217_regulator_remove,
};
static int __init tps65217_regulator_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 07/10] regulator: tps6586x: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (4 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 06/10] regulator: tps65217: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 08/10] regulator: tps65910: " Sachin Kamat
` (3 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps6586x-regulator.c | 31 ++++++-------------------------
1 file changed, 6 insertions(+), 25 deletions(-)
diff --git a/drivers/regulator/tps6586x-regulator.c b/drivers/regulator/tps6586x-regulator.c
index 2c9155b..45e5d68 100644
--- a/drivers/regulator/tps6586x-regulator.c
+++ b/drivers/regulator/tps6586x-regulator.c
@@ -379,15 +379,14 @@ static int tps6586x_regulator_probe(struct platform_device *pdev)
ri = find_regulator_info(id);
if (!ri) {
dev_err(&pdev->dev, "invalid regulator ID specified\n");
- err = -EINVAL;
- goto fail;
+ return -EINVAL;
}
err = tps6586x_regulator_preinit(pdev->dev.parent, ri);
if (err) {
dev_err(&pdev->dev,
"regulator %d preinit failed, e %d\n", id, err);
- goto fail;
+ return err;
}
config.dev = pdev->dev.parent;
@@ -397,12 +396,12 @@ static int tps6586x_regulator_probe(struct platform_device *pdev)
if (tps6586x_reg_matches)
config.of_node = tps6586x_reg_matches[id].of_node;
- rdev[id] = regulator_register(&ri->desc, &config);
+ rdev[id] = devm_regulator_register(&pdev->dev, &ri->desc,
+ &config);
if (IS_ERR(rdev[id])) {
dev_err(&pdev->dev, "failed to register regulator %s\n",
ri->desc.name);
- err = PTR_ERR(rdev[id]);
- goto fail;
+ return PTR_ERR(rdev[id]);
}
if (reg_data) {
@@ -411,30 +410,13 @@ static int tps6586x_regulator_probe(struct platform_device *pdev)
if (err < 0) {
dev_err(&pdev->dev,
"Slew rate config failed, e %d\n", err);
- regulator_unregister(rdev[id]);
- goto fail;
+ return err;
}
}
}
platform_set_drvdata(pdev, rdev);
return 0;
-
-fail:
- while (--id >= 0)
- regulator_unregister(rdev[id]);
- return err;
-}
-
-static int tps6586x_regulator_remove(struct platform_device *pdev)
-{
- struct regulator_dev **rdev = platform_get_drvdata(pdev);
- int id = TPS6586X_ID_MAX_REGULATOR;
-
- while (--id >= 0)
- regulator_unregister(rdev[id]);
-
- return 0;
}
static struct platform_driver tps6586x_regulator_driver = {
@@ -443,7 +425,6 @@ static struct platform_driver tps6586x_regulator_driver = {
.owner = THIS_MODULE,
},
.probe = tps6586x_regulator_probe,
- .remove = tps6586x_regulator_remove,
};
static int __init tps6586x_regulator_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 08/10] regulator: tps65910: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (5 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 07/10] regulator: tps6586x: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 09/10] regulator: tps65912: " Sachin Kamat
` (2 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps65910-regulator.c | 23 +++--------------------
1 file changed, 3 insertions(+), 20 deletions(-)
diff --git a/drivers/regulator/tps65910-regulator.c b/drivers/regulator/tps65910-regulator.c
index 45c1644..b8167df 100644
--- a/drivers/regulator/tps65910-regulator.c
+++ b/drivers/regulator/tps65910-regulator.c
@@ -1177,35 +1177,19 @@ static int tps65910_probe(struct platform_device *pdev)
if (tps65910_reg_matches)
config.of_node = tps65910_reg_matches[i].of_node;
- rdev = regulator_register(&pmic->desc[i], &config);
+ rdev = devm_regulator_register(&pdev->dev, &pmic->desc[i],
+ &config);
if (IS_ERR(rdev)) {
dev_err(tps65910->dev,
"failed to register %s regulator\n",
pdev->name);
- err = PTR_ERR(rdev);
- goto err_unregister_regulator;
+ return PTR_ERR(rdev);
}
/* Save regulator for cleanup */
pmic->rdev[i] = rdev;
}
return 0;
-
-err_unregister_regulator:
- while (--i >= 0)
- regulator_unregister(pmic->rdev[i]);
- return err;
-}
-
-static int tps65910_remove(struct platform_device *pdev)
-{
- struct tps65910_reg *pmic = platform_get_drvdata(pdev);
- int i;
-
- for (i = 0; i < pmic->num_regulators; i++)
- regulator_unregister(pmic->rdev[i]);
-
- return 0;
}
static void tps65910_shutdown(struct platform_device *pdev)
@@ -1244,7 +1228,6 @@ static struct platform_driver tps65910_driver = {
.owner = THIS_MODULE,
},
.probe = tps65910_probe,
- .remove = tps65910_remove,
.shutdown = tps65910_shutdown,
};
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 09/10] regulator: tps65912: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (6 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 08/10] regulator: tps65910: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 11:47 ` [PATCH 10/10] regulator: tps80031: " Sachin Kamat
2013-09-04 18:53 ` [PATCH 01/10] regulator: tps51632: " Mark Brown
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps65912-regulator.c | 24 ++++--------------------
1 file changed, 4 insertions(+), 20 deletions(-)
diff --git a/drivers/regulator/tps65912-regulator.c b/drivers/regulator/tps65912-regulator.c
index 17e994e..3301af8 100644
--- a/drivers/regulator/tps65912-regulator.c
+++ b/drivers/regulator/tps65912-regulator.c
@@ -468,7 +468,7 @@ static int tps65912_probe(struct platform_device *pdev)
struct regulator_dev *rdev;
struct tps65912_reg *pmic;
struct tps65912_board *pmic_plat_data;
- int i, err;
+ int i;
pmic_plat_data = dev_get_platdata(tps65912->dev);
if (!pmic_plat_data)
@@ -505,34 +505,19 @@ static int tps65912_probe(struct platform_device *pdev)
config.init_data = reg_data;
config.driver_data = pmic;
- rdev = regulator_register(&pmic->desc[i], &config);
+ rdev = devm_regulator_register(&pdev->dev, &pmic->desc[i],
+ &config);
if (IS_ERR(rdev)) {
dev_err(tps65912->dev,
"failed to register %s regulator\n",
pdev->name);
- err = PTR_ERR(rdev);
- goto err;
+ return PTR_ERR(rdev);
}
/* Save regulator for cleanup */
pmic->rdev[i] = rdev;
}
return 0;
-
-err:
- while (--i >= 0)
- regulator_unregister(pmic->rdev[i]);
- return err;
-}
-
-static int tps65912_remove(struct platform_device *pdev)
-{
- struct tps65912_reg *tps65912_reg = platform_get_drvdata(pdev);
- int i;
-
- for (i = 0; i < TPS65912_NUM_REGULATOR; i++)
- regulator_unregister(tps65912_reg->rdev[i]);
- return 0;
}
static struct platform_driver tps65912_driver = {
@@ -541,7 +526,6 @@ static struct platform_driver tps65912_driver = {
.owner = THIS_MODULE,
},
.probe = tps65912_probe,
- .remove = tps65912_remove,
};
static int __init tps65912_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 10/10] regulator: tps80031: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (7 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 09/10] regulator: tps65912: " Sachin Kamat
@ 2013-09-04 11:47 ` Sachin Kamat
2013-09-04 18:53 ` [PATCH 01/10] regulator: tps51632: " Mark Brown
9 siblings, 0 replies; 11+ messages in thread
From: Sachin Kamat @ 2013-09-04 11:47 UTC (permalink / raw)
To: linux-kernel
Cc: broonie, sachin.kamat, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
devm_* simplifies the code.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/regulator/tps80031-regulator.c | 30 +++++-------------------------
1 file changed, 5 insertions(+), 25 deletions(-)
diff --git a/drivers/regulator/tps80031-regulator.c b/drivers/regulator/tps80031-regulator.c
index 6511d0b..71f457a 100644
--- a/drivers/regulator/tps80031-regulator.c
+++ b/drivers/regulator/tps80031-regulator.c
@@ -719,7 +719,7 @@ static int tps80031_regulator_probe(struct platform_device *pdev)
if (ret < 0) {
dev_err(&pdev->dev,
"regulator config failed, e %d\n", ret);
- goto fail;
+ return ret;
}
ret = tps80031_power_req_config(pdev->dev.parent,
@@ -727,41 +727,22 @@ static int tps80031_regulator_probe(struct platform_device *pdev)
if (ret < 0) {
dev_err(&pdev->dev,
"pwr_req config failed, err %d\n", ret);
- goto fail;
+ return ret;
}
}
- rdev = regulator_register(&ri->rinfo->desc, &config);
+ rdev = devm_regulator_register(&pdev->dev, &ri->rinfo->desc,
+ &config);
if (IS_ERR(rdev)) {
dev_err(&pdev->dev,
"register regulator failed %s\n",
ri->rinfo->desc.name);
- ret = PTR_ERR(rdev);
- goto fail;
+ return PTR_ERR(rdev);
}
ri->rdev = rdev;
}
platform_set_drvdata(pdev, pmic);
return 0;
-fail:
- while (--num >= 0) {
- ri = &pmic[num];
- regulator_unregister(ri->rdev);
- }
- return ret;
-}
-
-static int tps80031_regulator_remove(struct platform_device *pdev)
-{
- struct tps80031_regulator *pmic = platform_get_drvdata(pdev);
- struct tps80031_regulator *ri = NULL;
- int num;
-
- for (num = 0; num < TPS80031_REGULATOR_MAX; ++num) {
- ri = &pmic[num];
- regulator_unregister(ri->rdev);
- }
- return 0;
}
static struct platform_driver tps80031_regulator_driver = {
@@ -770,7 +751,6 @@ static struct platform_driver tps80031_regulator_driver = {
.owner = THIS_MODULE,
},
.probe = tps80031_regulator_probe,
- .remove = tps80031_regulator_remove,
};
static int __init tps80031_regulator_init(void)
--
1.7.9.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 01/10] regulator: tps51632: Use devm_regulator_register
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
` (8 preceding siblings ...)
2013-09-04 11:47 ` [PATCH 10/10] regulator: tps80031: " Sachin Kamat
@ 2013-09-04 18:53 ` Mark Brown
9 siblings, 0 replies; 11+ messages in thread
From: Mark Brown @ 2013-09-04 18:53 UTC (permalink / raw)
To: Sachin Kamat
Cc: linux-kernel, ldewangan, magi, gg, mike, anilkumar, vbyravarasu
[-- Attachment #1: Type: text/plain, Size: 114 bytes --]
On Wed, Sep 04, 2013 at 05:17:44PM +0530, Sachin Kamat wrote:
> devm_* simplifies the code.
Applied all, thanks.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2013-09-04 18:53 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-04 11:47 [PATCH 01/10] regulator: tps51632: Use devm_regulator_register Sachin Kamat
2013-09-04 11:47 ` [PATCH 02/10] regulator: tps62360: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 03/10] regulator: tps65023: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 04/10] regulator: tps6507x: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 05/10] regulator: tps65090: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 06/10] regulator: tps65217: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 07/10] regulator: tps6586x: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 08/10] regulator: tps65910: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 09/10] regulator: tps65912: " Sachin Kamat
2013-09-04 11:47 ` [PATCH 10/10] regulator: tps80031: " Sachin Kamat
2013-09-04 18:53 ` [PATCH 01/10] regulator: tps51632: " Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®