Lines Matching defs:rdev
45 static int mp886x_set_ramp(struct regulator_dev *rdev, int ramp)
47 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
63 return regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
85 static int mp886x_set_mode(struct regulator_dev *rdev, unsigned int mode)
89 regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
93 regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
102 static unsigned int mp886x_get_mode(struct regulator_dev *rdev)
107 ret = regmap_read(rdev->regmap, MP886X_SYSCNTLREG1, &val);
116 static int mp8869_set_voltage_sel(struct regulator_dev *rdev, unsigned int sel)
120 ret = regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
125 sel <<= ffs(rdev->desc->vsel_mask) - 1;
126 return regmap_update_bits(rdev->regmap, rdev->desc->vsel_reg,
127 MP886X_V_BOOT | rdev->desc->vsel_mask, sel);
137 static int mp8869_get_voltage_sel(struct regulator_dev *rdev)
139 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
144 ret = regmap_read(rdev->regmap, rdev->desc->vsel_reg, &val);
150 uv = rdev->desc->min_uV;
152 return regulator_map_voltage_linear(rdev, uv, uv);
155 val &= rdev->desc->vsel_mask;
156 val >>= ffs(rdev->desc->vsel_mask) - 1;
197 static int mp8867_set_voltage_sel(struct regulator_dev *rdev, unsigned int sel)
199 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
202 ret = mp8869_set_voltage_sel(rdev, sel);
208 ret = regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
215 static int mp8867_get_voltage_sel(struct regulator_dev *rdev)
217 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
222 ret = regmap_read(rdev->regmap, rdev->desc->vsel_reg, &val);
228 val &= rdev->desc->vsel_mask;
229 val >>= ffs(rdev->desc->vsel_mask) - 1;
232 uv = regulator_list_voltage_linear(rdev, val);
234 return regulator_map_voltage_linear(rdev, uv, uv);
280 struct regulator_dev *rdev;
295 rdev = devm_regulator_register(di->dev, &di->desc, config);
296 if (IS_ERR(rdev))
297 return PTR_ERR(rdev);
298 di->sel = rdesc->ops->get_voltage_sel(rdev);