Commit a69929c7 authored by Axel Lin's avatar Axel Lin Committed by Mark Brown

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 dd7e71fb
("regulator: fan53555: use set_ramp_delay to set the ramp up slew rate").
Signed-off-by: default avatarAxel Lin <axel.lin@ingics.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent b2745697
...@@ -91,10 +91,8 @@ enum { ...@@ -91,10 +91,8 @@ enum {
struct fan53555_device_info { struct fan53555_device_info {
enum fan53555_vendor vendor; enum fan53555_vendor vendor;
struct regmap *regmap;
struct device *dev; struct device *dev;
struct regulator_desc desc; struct regulator_desc desc;
struct regulator_dev *rdev;
struct regulator_init_data *regulator; struct regulator_init_data *regulator;
/* IC Type and Rev */ /* IC Type and Rev */
int chip_id; int chip_id;
...@@ -106,8 +104,6 @@ struct fan53555_device_info { ...@@ -106,8 +104,6 @@ struct fan53555_device_info {
unsigned int vsel_min; unsigned int vsel_min;
unsigned int vsel_step; unsigned int vsel_step;
unsigned int vsel_count; unsigned int vsel_count;
/* Voltage slew rate limiting */
unsigned int slew_rate;
/* Mode */ /* Mode */
unsigned int mode_reg; unsigned int mode_reg;
unsigned int mode_mask; unsigned int mode_mask;
...@@ -125,7 +121,7 @@ static int fan53555_set_suspend_voltage(struct regulator_dev *rdev, int uV) ...@@ -125,7 +121,7 @@ static int fan53555_set_suspend_voltage(struct regulator_dev *rdev, int uV)
ret = regulator_map_voltage_linear(rdev, uV, uV); ret = regulator_map_voltage_linear(rdev, uV, uV);
if (ret < 0) if (ret < 0)
return ret; return ret;
ret = regmap_update_bits(di->regmap, di->sleep_reg, ret = regmap_update_bits(rdev->regmap, di->sleep_reg,
di->desc.vsel_mask, ret); di->desc.vsel_mask, ret);
if (ret < 0) if (ret < 0)
return ret; return ret;
...@@ -140,7 +136,7 @@ static int fan53555_set_suspend_enable(struct regulator_dev *rdev) ...@@ -140,7 +136,7 @@ static int fan53555_set_suspend_enable(struct regulator_dev *rdev)
{ {
struct fan53555_device_info *di = rdev_get_drvdata(rdev); struct fan53555_device_info *di = rdev_get_drvdata(rdev);
return regmap_update_bits(di->regmap, di->sleep_reg, return regmap_update_bits(rdev->regmap, di->sleep_reg,
VSEL_BUCK_EN, VSEL_BUCK_EN); VSEL_BUCK_EN, VSEL_BUCK_EN);
} }
...@@ -148,7 +144,7 @@ static int fan53555_set_suspend_disable(struct regulator_dev *rdev) ...@@ -148,7 +144,7 @@ static int fan53555_set_suspend_disable(struct regulator_dev *rdev)
{ {
struct fan53555_device_info *di = rdev_get_drvdata(rdev); struct fan53555_device_info *di = rdev_get_drvdata(rdev);
return regmap_update_bits(di->regmap, di->sleep_reg, return regmap_update_bits(rdev->regmap, di->sleep_reg,
VSEL_BUCK_EN, 0); VSEL_BUCK_EN, 0);
} }
...@@ -158,11 +154,11 @@ static int fan53555_set_mode(struct regulator_dev *rdev, unsigned int mode) ...@@ -158,11 +154,11 @@ static int fan53555_set_mode(struct regulator_dev *rdev, unsigned int mode)
switch (mode) { switch (mode) {
case REGULATOR_MODE_FAST: case REGULATOR_MODE_FAST:
regmap_update_bits(di->regmap, di->mode_reg, regmap_update_bits(rdev->regmap, di->mode_reg,
di->mode_mask, di->mode_mask); di->mode_mask, di->mode_mask);
break; break;
case REGULATOR_MODE_NORMAL: case REGULATOR_MODE_NORMAL:
regmap_update_bits(di->regmap, di->vol_reg, di->mode_mask, 0); regmap_update_bits(rdev->regmap, di->vol_reg, di->mode_mask, 0);
break; break;
default: default:
return -EINVAL; return -EINVAL;
...@@ -176,7 +172,7 @@ static unsigned int fan53555_get_mode(struct regulator_dev *rdev) ...@@ -176,7 +172,7 @@ static unsigned int fan53555_get_mode(struct regulator_dev *rdev)
unsigned int val; unsigned int val;
int ret = 0; int ret = 0;
ret = regmap_read(di->regmap, di->mode_reg, &val); ret = regmap_read(rdev->regmap, di->mode_reg, &val);
if (ret < 0) if (ret < 0)
return ret; return ret;
if (val & di->mode_mask) if (val & di->mode_mask)
...@@ -213,7 +209,7 @@ static int fan53555_set_ramp(struct regulator_dev *rdev, int ramp) ...@@ -213,7 +209,7 @@ static int fan53555_set_ramp(struct regulator_dev *rdev, int ramp)
return -EINVAL; return -EINVAL;
} }
return regmap_update_bits(di->regmap, FAN53555_CONTROL, return regmap_update_bits(rdev->regmap, FAN53555_CONTROL,
CTL_SLEW_MASK, regval << CTL_SLEW_SHIFT); CTL_SLEW_MASK, regval << CTL_SLEW_SHIFT);
} }
...@@ -396,6 +392,7 @@ static int fan53555_regulator_register(struct fan53555_device_info *di, ...@@ -396,6 +392,7 @@ static int fan53555_regulator_register(struct fan53555_device_info *di,
struct regulator_config *config) struct regulator_config *config)
{ {
struct regulator_desc *rdesc = &di->desc; struct regulator_desc *rdesc = &di->desc;
struct regulator_dev *rdev;
rdesc->name = "fan53555-reg"; rdesc->name = "fan53555-reg";
rdesc->supply_name = "vin"; rdesc->supply_name = "vin";
...@@ -410,8 +407,8 @@ static int fan53555_regulator_register(struct fan53555_device_info *di, ...@@ -410,8 +407,8 @@ static int fan53555_regulator_register(struct fan53555_device_info *di,
rdesc->vsel_mask = di->vsel_count - 1; rdesc->vsel_mask = di->vsel_count - 1;
rdesc->owner = THIS_MODULE; rdesc->owner = THIS_MODULE;
di->rdev = devm_regulator_register(di->dev, &di->desc, config); rdev = devm_regulator_register(di->dev, &di->desc, config);
return PTR_ERR_OR_ZERO(di->rdev); return PTR_ERR_OR_ZERO(rdev);
} }
static const struct regmap_config fan53555_regmap_config = { static const struct regmap_config fan53555_regmap_config = {
...@@ -466,6 +463,7 @@ static int fan53555_regulator_probe(struct i2c_client *client, ...@@ -466,6 +463,7 @@ static int fan53555_regulator_probe(struct i2c_client *client,
struct fan53555_device_info *di; struct fan53555_device_info *di;
struct fan53555_platform_data *pdata; struct fan53555_platform_data *pdata;
struct regulator_config config = { }; struct regulator_config config = { };
struct regmap *regmap;
unsigned int val; unsigned int val;
int ret; int ret;
...@@ -502,22 +500,22 @@ static int fan53555_regulator_probe(struct i2c_client *client, ...@@ -502,22 +500,22 @@ static int fan53555_regulator_probe(struct i2c_client *client,
di->vendor = id->driver_data; di->vendor = id->driver_data;
} }
di->regmap = devm_regmap_init_i2c(client, &fan53555_regmap_config); regmap = devm_regmap_init_i2c(client, &fan53555_regmap_config);
if (IS_ERR(di->regmap)) { if (IS_ERR(regmap)) {
dev_err(&client->dev, "Failed to allocate regmap!\n"); dev_err(&client->dev, "Failed to allocate regmap!\n");
return PTR_ERR(di->regmap); return PTR_ERR(regmap);
} }
di->dev = &client->dev; di->dev = &client->dev;
i2c_set_clientdata(client, di); i2c_set_clientdata(client, di);
/* Get chip ID */ /* Get chip ID */
ret = regmap_read(di->regmap, FAN53555_ID1, &val); ret = regmap_read(regmap, FAN53555_ID1, &val);
if (ret < 0) { if (ret < 0) {
dev_err(&client->dev, "Failed to get chip ID!\n"); dev_err(&client->dev, "Failed to get chip ID!\n");
return ret; return ret;
} }
di->chip_id = val & DIE_ID; di->chip_id = val & DIE_ID;
/* Get chip revision */ /* Get chip revision */
ret = regmap_read(di->regmap, FAN53555_ID2, &val); ret = regmap_read(regmap, FAN53555_ID2, &val);
if (ret < 0) { if (ret < 0) {
dev_err(&client->dev, "Failed to get chip Rev!\n"); dev_err(&client->dev, "Failed to get chip Rev!\n");
return ret; return ret;
...@@ -534,7 +532,7 @@ static int fan53555_regulator_probe(struct i2c_client *client, ...@@ -534,7 +532,7 @@ static int fan53555_regulator_probe(struct i2c_client *client,
/* Register regulator */ /* Register regulator */
config.dev = di->dev; config.dev = di->dev;
config.init_data = di->regulator; config.init_data = di->regulator;
config.regmap = di->regmap; config.regmap = regmap;
config.driver_data = di; config.driver_data = di;
config.of_node = np; config.of_node = np;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment