* [PATCH] regulator: Fix desc_id for tps65023/6507x/65910
@ 2011-05-12 5:47 Axel Lin
2011-05-12 6:30 ` Mark Brown
2011-05-13 12:34 ` Liam Girdwood
0 siblings, 2 replies; 3+ messages in thread
From: Axel Lin @ 2011-05-12 5:47 UTC (permalink / raw)
To: linux-kernel; +Cc: Anuj Aggarwal, Graeme Gregory, Liam Girdwood, Mark Brown
The desc_id variable should not be a static variable.
The rest of the code assumes the desc_id must less than TPSxxxxx_NUM_REGULATOR.
If we set desc_id to be a static variable, checking the return value of
rdev_get_id() may return error.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Cc: Anuj Aggarwal <anuj.aggarwal@ti.com>
Cc: Graeme Gregory <gg@slimlogic.co.uk>
---
drivers/regulator/tps65023-regulator.c | 3 +--
drivers/regulator/tps6507x-regulator.c | 3 +--
drivers/regulator/tps65910-regulator.c | 3 +--
3 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/drivers/regulator/tps65023-regulator.c b/drivers/regulator/tps65023-regulator.c
index 60a7ca5..fbddc15 100644
--- a/drivers/regulator/tps65023-regulator.c
+++ b/drivers/regulator/tps65023-regulator.c
@@ -466,7 +466,6 @@ static struct regulator_ops tps65023_ldo_ops = {
static int __devinit tps_65023_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
- static int desc_id;
const struct tps_info *info = (void *)id->driver_data;
struct regulator_init_data *init_data;
struct regulator_dev *rdev;
@@ -499,7 +498,7 @@ static int __devinit tps_65023_probe(struct i2c_client *client,
tps->info[i] = info;
tps->desc[i].name = info->name;
- tps->desc[i].id = desc_id++;
+ tps->desc[i].id = i;
tps->desc[i].n_voltages = num_voltages[i];
tps->desc[i].ops = (i > TPS65023_DCDC_3 ?
&tps65023_ldo_ops : &tps65023_dcdc_ops);
diff --git a/drivers/regulator/tps6507x-regulator.c b/drivers/regulator/tps6507x-regulator.c
index 0647552..bfffabc 100644
--- a/drivers/regulator/tps6507x-regulator.c
+++ b/drivers/regulator/tps6507x-regulator.c
@@ -553,7 +553,6 @@ static __devinit
int tps6507x_pmic_probe(struct platform_device *pdev)
{
struct tps6507x_dev *tps6507x_dev = dev_get_drvdata(pdev->dev.parent);
- static int desc_id;
struct tps_info *info = &tps6507x_pmic_regs[0];
struct regulator_init_data *init_data;
struct regulator_dev *rdev;
@@ -598,7 +597,7 @@ int tps6507x_pmic_probe(struct platform_device *pdev)
}
tps->desc[i].name = info->name;
- tps->desc[i].id = desc_id++;
+ tps->desc[i].id = i;
tps->desc[i].n_voltages = num_voltages[i];
tps->desc[i].ops = (i > TPS6507X_DCDC_3 ?
&tps6507x_pmic_ldo_ops : &tps6507x_pmic_dcdc_ops);
diff --git a/drivers/regulator/tps65910-regulator.c b/drivers/regulator/tps65910-regulator.c
index d461fa7..048ba47 100644
--- a/drivers/regulator/tps65910-regulator.c
+++ b/drivers/regulator/tps65910-regulator.c
@@ -604,7 +604,6 @@ static __devinit int tps65910_probe(struct platform_device *pdev)
struct regulator_dev *rdev;
struct tps65910_reg *pmic;
struct tps65910_board *pmic_plat_data;
- static int desc_id;
int i, err;
pmic_plat_data = dev_get_platdata(tps65910->dev);
@@ -630,7 +629,7 @@ static __devinit int tps65910_probe(struct platform_device *pdev)
pmic->info[i] = info;
pmic->desc[i].name = info->name;
- pmic->desc[i].id = desc_id++;
+ pmic->desc[i].id = i;
pmic->desc[i].n_voltages = info->table_len;
if ((i == TPS65910_REG_VDD1) || (i == TPS65910_REG_VDD2))
--
1.7.1
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] regulator: Fix desc_id for tps65023/6507x/65910
2011-05-12 5:47 [PATCH] regulator: Fix desc_id for tps65023/6507x/65910 Axel Lin
@ 2011-05-12 6:30 ` Mark Brown
2011-05-13 12:34 ` Liam Girdwood
1 sibling, 0 replies; 3+ messages in thread
From: Mark Brown @ 2011-05-12 6:30 UTC (permalink / raw)
To: Axel Lin; +Cc: linux-kernel, Anuj Aggarwal, Graeme Gregory, Liam Girdwood
On Thu, May 12, 2011 at 01:47:50PM +0800, Axel Lin wrote:
> The desc_id variable should not be a static variable.
>
> The rest of the code assumes the desc_id must less than TPSxxxxx_NUM_REGULATOR.
> If we set desc_id to be a static variable, checking the return value of
> rdev_get_id() may return error.
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] regulator: Fix desc_id for tps65023/6507x/65910
2011-05-12 5:47 [PATCH] regulator: Fix desc_id for tps65023/6507x/65910 Axel Lin
2011-05-12 6:30 ` Mark Brown
@ 2011-05-13 12:34 ` Liam Girdwood
1 sibling, 0 replies; 3+ messages in thread
From: Liam Girdwood @ 2011-05-13 12:34 UTC (permalink / raw)
To: Axel Lin; +Cc: linux-kernel, Anuj Aggarwal, Graeme Gregory, Mark Brown
On Thu, 2011-05-12 at 13:47 +0800, Axel Lin wrote:
> The desc_id variable should not be a static variable.
>
> The rest of the code assumes the desc_id must less than TPSxxxxx_NUM_REGULATOR.
> If we set desc_id to be a static variable, checking the return value of
> rdev_get_id() may return error.
>
> Signed-off-by: Axel Lin <axel.lin@gmail.com>
> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com>
> Cc: Graeme Gregory <gg@slimlogic.co.uk>
Applied.
Liam
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-05-13 12:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-12 5:47 [PATCH] regulator: Fix desc_id for tps65023/6507x/65910 Axel Lin
2011-05-12 6:30 ` Mark Brown
2011-05-13 12:34 ` Liam Girdwood
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox