Message ID | 20221201193025.1584365-1-Naresh.Solanki@9elements.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | [v5,1/5] hwmon: (pmbus/core): Add rdev in pmbus_data struct | expand |
On Thu, Dec 01, 2022 at 08:30:20PM +0100, Naresh Solanki wrote: > Add regulator device in pmbus_data & initialize the same during PMBus > regulator register. > This needs an explanation why this change is needed. Guenter > Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com> > > --- > Change in V5: > - Fix error check for rdev > --- > drivers/hwmon/pmbus/pmbus_core.c | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/drivers/hwmon/pmbus/pmbus_core.c b/drivers/hwmon/pmbus/pmbus_core.c > index 95e95783972a..a95f998ca247 100644 > --- a/drivers/hwmon/pmbus/pmbus_core.c > +++ b/drivers/hwmon/pmbus/pmbus_core.c > @@ -81,6 +81,7 @@ struct pmbus_label { > struct pmbus_data { > struct device *dev; > struct device *hwmon_dev; > + struct regulator_dev **rdevs; > > u32 flags; /* from platform data */ > > @@ -3050,9 +3051,13 @@ static int pmbus_regulator_register(struct pmbus_data *data) > struct device *dev = data->dev; > const struct pmbus_driver_info *info = data->info; > const struct pmbus_platform_data *pdata = dev_get_platdata(dev); > - struct regulator_dev *rdev; > int i; > > + data->rdevs = devm_kzalloc(dev, sizeof(struct regulator_dev *) * info->num_regulators, > + GFP_KERNEL); > + if (!data->rdevs) > + return -ENOMEM; > + > for (i = 0; i < info->num_regulators; i++) { > struct regulator_config config = { }; > > @@ -3062,10 +3067,10 @@ static int pmbus_regulator_register(struct pmbus_data *data) > if (pdata && pdata->reg_init_data) > config.init_data = &pdata->reg_init_data[i]; > > - rdev = devm_regulator_register(dev, &info->reg_desc[i], > + data->rdevs[i] = devm_regulator_register(dev, &info->reg_desc[i], > &config); > - if (IS_ERR(rdev)) > - return dev_err_probe(dev, PTR_ERR(rdev), > + if (IS_ERR(data->rdevs[i])) > + return dev_err_probe(dev, PTR_ERR(data->rdevs[i]), > "Failed to register %s regulator\n", > info->reg_desc[i].name); > } > > base-commit: 9494c53e1389b120ba461899207ac8a3aab2632c > -- > 2.37.3 >
diff --git a/drivers/hwmon/pmbus/pmbus_core.c b/drivers/hwmon/pmbus/pmbus_core.c index 95e95783972a..a95f998ca247 100644 --- a/drivers/hwmon/pmbus/pmbus_core.c +++ b/drivers/hwmon/pmbus/pmbus_core.c @@ -81,6 +81,7 @@ struct pmbus_label { struct pmbus_data { struct device *dev; struct device *hwmon_dev; + struct regulator_dev **rdevs; u32 flags; /* from platform data */ @@ -3050,9 +3051,13 @@ static int pmbus_regulator_register(struct pmbus_data *data) struct device *dev = data->dev; const struct pmbus_driver_info *info = data->info; const struct pmbus_platform_data *pdata = dev_get_platdata(dev); - struct regulator_dev *rdev; int i; + data->rdevs = devm_kzalloc(dev, sizeof(struct regulator_dev *) * info->num_regulators, + GFP_KERNEL); + if (!data->rdevs) + return -ENOMEM; + for (i = 0; i < info->num_regulators; i++) { struct regulator_config config = { }; @@ -3062,10 +3067,10 @@ static int pmbus_regulator_register(struct pmbus_data *data) if (pdata && pdata->reg_init_data) config.init_data = &pdata->reg_init_data[i]; - rdev = devm_regulator_register(dev, &info->reg_desc[i], + data->rdevs[i] = devm_regulator_register(dev, &info->reg_desc[i], &config); - if (IS_ERR(rdev)) - return dev_err_probe(dev, PTR_ERR(rdev), + if (IS_ERR(data->rdevs[i])) + return dev_err_probe(dev, PTR_ERR(data->rdevs[i]), "Failed to register %s regulator\n", info->reg_desc[i].name); }
Add regulator device in pmbus_data & initialize the same during PMBus regulator register. Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com> --- Change in V5: - Fix error check for rdev --- drivers/hwmon/pmbus/pmbus_core.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) base-commit: 9494c53e1389b120ba461899207ac8a3aab2632c