summaryrefslogtreecommitdiffstats
path: root/drivers/regulator
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@ingics.com>2019-04-18 20:58:23 -0400
committerMark Brown <broonie@kernel.org>2019-04-26 05:38:21 -0400
commita69929c7aa7006990975e0c5f8de16a6215265ec (patch)
treebd4abfb37507ad5bdad0d296afefbdd728ad04d4 /drivers/regulator
parentb2745697bfe46ce04af5493f194c6073e683b0f1 (diff)
regulator: fan53555: Clean up unneeded fields from struct fan53555_device_info
The *regmap and *rdev can be replaced by local variables. The slew_rate is no longer used since commit dd7e71fbeefe ("regulator: fan53555: use set_ramp_delay to set the ramp up slew rate"). Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/fan53555.c36
1 files changed, 17 insertions, 19 deletions
diff --git a/drivers/regulator/fan53555.c b/drivers/regulator/fan53555.c
index 771a06d1900d..e2caf4173ab5 100644
--- a/drivers/regulator/fan53555.c
+++ b/drivers/regulator/fan53555.c
@@ -91,10 +91,8 @@ enum {
91 91
92struct fan53555_device_info { 92struct fan53555_device_info {
93 enum fan53555_vendor vendor; 93 enum fan53555_vendor vendor;
94 struct regmap *regmap;
95 struct device *dev; 94 struct device *dev;
96 struct regulator_desc desc; 95 struct regulator_desc desc;
97 struct regulator_dev *rdev;
98 struct regulator_init_data *regulator; 96 struct regulator_init_data *regulator;
99 /* IC Type and Rev */ 97 /* IC Type and Rev */
100 int chip_id; 98 int chip_id;
@@ -106,8 +104,6 @@ struct fan53555_device_info {
106 unsigned int vsel_min; 104 unsigned int vsel_min;
107 unsigned int vsel_step; 105 unsigned int vsel_step;
108 unsigned int vsel_count; 106 unsigned int vsel_count;
109 /* Voltage slew rate limiting */
110 unsigned int slew_rate;
111 /* Mode */ 107 /* Mode */
112 unsigned int mode_reg; 108 unsigned int mode_reg;
113 unsigned int mode_mask; 109 unsigned int mode_mask;
@@ -125,7 +121,7 @@ static int fan53555_set_suspend_voltage(struct regulator_dev *rdev, int uV)
125 ret = regulator_map_voltage_linear(rdev, uV, uV); 121 ret = regulator_map_voltage_linear(rdev, uV, uV);
126 if (ret < 0) 122 if (ret < 0)
127 return ret; 123 return ret;
128 ret = regmap_update_bits(di->regmap, di->sleep_reg, 124 ret = regmap_update_bits(rdev->regmap, di->sleep_reg,
129 di->desc.vsel_mask, ret); 125 di->desc.vsel_mask, ret);
130 if (ret < 0) 126 if (ret < 0)
131 return ret; 127 return ret;
@@ -140,7 +136,7 @@ static int fan53555_set_suspend_enable(struct regulator_dev *rdev)
140{ 136{
141 struct fan53555_device_info *di = rdev_get_drvdata(rdev); 137 struct fan53555_device_info *di = rdev_get_drvdata(rdev);
142 138
143 return regmap_update_bits(di->regmap, di->sleep_reg, 139 return regmap_update_bits(rdev->regmap, di->sleep_reg,
144 VSEL_BUCK_EN, VSEL_BUCK_EN); 140 VSEL_BUCK_EN, VSEL_BUCK_EN);
145} 141}
146 142
@@ -148,7 +144,7 @@ static int fan53555_set_suspend_disable(struct regulator_dev *rdev)
148{ 144{
149 struct fan53555_device_info *di = rdev_get_drvdata(rdev); 145 struct fan53555_device_info *di = rdev_get_drvdata(rdev);
150 146
151 return regmap_update_bits(di->regmap, di->sleep_reg, 147 return regmap_update_bits(rdev->regmap, di->sleep_reg,
152 VSEL_BUCK_EN, 0); 148 VSEL_BUCK_EN, 0);
153} 149}
154 150
@@ -158,11 +154,11 @@ static int fan53555_set_mode(struct regulator_dev *rdev, unsigned int mode)
158 154
159 switch (mode) { 155 switch (mode) {
160 case REGULATOR_MODE_FAST: 156 case REGULATOR_MODE_FAST:
161 regmap_update_bits(di->regmap, di->mode_reg, 157 regmap_update_bits(rdev->regmap, di->mode_reg,
162 di->mode_mask, di->mode_mask); 158 di->mode_mask, di->mode_mask);
163 break; 159 break;
164 case REGULATOR_MODE_NORMAL: 160 case REGULATOR_MODE_NORMAL:
165 regmap_update_bits(di->regmap, di->vol_reg, di->mode_mask, 0); 161 regmap_update_bits(rdev->regmap, di->vol_reg, di->mode_mask, 0);
166 break; 162 break;
167 default: 163 default:
168 return -EINVAL; 164 return -EINVAL;
@@ -176,7 +172,7 @@ static unsigned int fan53555_get_mode(struct regulator_dev *rdev)
176 unsigned int val; 172 unsigned int val;
177 int ret = 0; 173 int ret = 0;
178 174
179 ret = regmap_read(di->regmap, di->mode_reg, &val); 175 ret = regmap_read(rdev->regmap, di->mode_reg, &val);
180 if (ret < 0) 176 if (ret < 0)
181 return ret; 177 return ret;
182 if (val & di->mode_mask) 178 if (val & di->mode_mask)
@@ -213,7 +209,7 @@ static int fan53555_set_ramp(struct regulator_dev *rdev, int ramp)
213 return -EINVAL; 209 return -EINVAL;
214 } 210 }
215 211
216 return regmap_update_bits(di->regmap, FAN53555_CONTROL, 212 return regmap_update_bits(rdev->regmap, FAN53555_CONTROL,
217 CTL_SLEW_MASK, regval << CTL_SLEW_SHIFT); 213 CTL_SLEW_MASK, regval << CTL_SLEW_SHIFT);
218} 214}
219 215
@@ -396,6 +392,7 @@ static int fan53555_regulator_register(struct fan53555_device_info *di,
396 struct regulator_config *config) 392 struct regulator_config *config)
397{ 393{
398 struct regulator_desc *rdesc = &di->desc; 394 struct regulator_desc *rdesc = &di->desc;
395 struct regulator_dev *rdev;
399 396
400 rdesc->name = "fan53555-reg"; 397 rdesc->name = "fan53555-reg";
401 rdesc->supply_name = "vin"; 398 rdesc->supply_name = "vin";
@@ -410,8 +407,8 @@ static int fan53555_regulator_register(struct fan53555_device_info *di,
410 rdesc->vsel_mask = di->vsel_count - 1; 407 rdesc->vsel_mask = di->vsel_count - 1;
411 rdesc->owner = THIS_MODULE; 408 rdesc->owner = THIS_MODULE;
412 409
413 di->rdev = devm_regulator_register(di->dev, &di->desc, config); 410 rdev = devm_regulator_register(di->dev, &di->desc, config);
414 return PTR_ERR_OR_ZERO(di->rdev); 411 return PTR_ERR_OR_ZERO(rdev);
415} 412}
416 413
417static const struct regmap_config fan53555_regmap_config = { 414static const struct regmap_config fan53555_regmap_config = {
@@ -466,6 +463,7 @@ static int fan53555_regulator_probe(struct i2c_client *client,
466 struct fan53555_device_info *di; 463 struct fan53555_device_info *di;
467 struct fan53555_platform_data *pdata; 464 struct fan53555_platform_data *pdata;
468 struct regulator_config config = { }; 465 struct regulator_config config = { };
466 struct regmap *regmap;
469 unsigned int val; 467 unsigned int val;
470 int ret; 468 int ret;
471 469
@@ -502,22 +500,22 @@ static int fan53555_regulator_probe(struct i2c_client *client,
502 di->vendor = id->driver_data; 500 di->vendor = id->driver_data;
503 } 501 }
504 502
505 di->regmap = devm_regmap_init_i2c(client, &fan53555_regmap_config); 503 regmap = devm_regmap_init_i2c(client, &fan53555_regmap_config);
506 if (IS_ERR(di->regmap)) { 504 if (IS_ERR(regmap)) {
507 dev_err(&client->dev, "Failed to allocate regmap!\n"); 505 dev_err(&client->dev, "Failed to allocate regmap!\n");
508 return PTR_ERR(di->regmap); 506 return PTR_ERR(regmap);
509 } 507 }
510 di->dev = &client->dev; 508 di->dev = &client->dev;
511 i2c_set_clientdata(client, di); 509 i2c_set_clientdata(client, di);
512 /* Get chip ID */ 510 /* Get chip ID */
513 ret = regmap_read(di->regmap, FAN53555_ID1, &val); 511 ret = regmap_read(regmap, FAN53555_ID1, &val);
514 if (ret < 0) { 512 if (ret < 0) {
515 dev_err(&client->dev, "Failed to get chip ID!\n"); 513 dev_err(&client->dev, "Failed to get chip ID!\n");
516 return ret; 514 return ret;
517 } 515 }
518 di->chip_id = val & DIE_ID; 516 di->chip_id = val & DIE_ID;
519 /* Get chip revision */ 517 /* Get chip revision */
520 ret = regmap_read(di->regmap, FAN53555_ID2, &val); 518 ret = regmap_read(regmap, FAN53555_ID2, &val);
521 if (ret < 0) { 519 if (ret < 0) {
522 dev_err(&client->dev, "Failed to get chip Rev!\n"); 520 dev_err(&client->dev, "Failed to get chip Rev!\n");
523 return ret; 521 return ret;
@@ -534,7 +532,7 @@ static int fan53555_regulator_probe(struct i2c_client *client,
534 /* Register regulator */ 532 /* Register regulator */
535 config.dev = di->dev; 533 config.dev = di->dev;
536 config.init_data = di->regulator; 534 config.init_data = di->regulator;
537 config.regmap = di->regmap; 535 config.regmap = regmap;
538 config.driver_data = di; 536 config.driver_data = di;
539 config.of_node = np; 537 config.of_node = np;
540 538