Lines Matching defs:rdev
63 static int mp886x_set_mode(struct regulator_dev *rdev, unsigned int mode)
67 regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
71 regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
80 static unsigned int mp886x_get_mode(struct regulator_dev *rdev)
85 ret = regmap_read(rdev->regmap, MP886X_SYSCNTLREG1, &val);
94 static int mp8869_set_voltage_sel(struct regulator_dev *rdev, unsigned int sel)
98 ret = regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
103 sel <<= ffs(rdev->desc->vsel_mask) - 1;
104 return regmap_update_bits(rdev->regmap, rdev->desc->vsel_reg,
105 MP886X_V_BOOT | rdev->desc->vsel_mask, sel);
115 static int mp8869_get_voltage_sel(struct regulator_dev *rdev)
117 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
122 ret = regmap_read(rdev->regmap, rdev->desc->vsel_reg, &val);
128 uv = rdev->desc->min_uV;
130 return regulator_map_voltage_linear(rdev, uv, uv);
133 val &= rdev->desc->vsel_mask;
134 val >>= ffs(rdev->desc->vsel_mask) - 1;
175 static int mp8867_set_voltage_sel(struct regulator_dev *rdev, unsigned int sel)
177 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
180 ret = mp8869_set_voltage_sel(rdev, sel);
186 ret = regmap_update_bits(rdev->regmap, MP886X_SYSCNTLREG1,
193 static int mp8867_get_voltage_sel(struct regulator_dev *rdev)
195 struct mp886x_device_info *di = rdev_get_drvdata(rdev);
200 ret = regmap_read(rdev->regmap, rdev->desc->vsel_reg, &val);
206 val &= rdev->desc->vsel_mask;
207 val >>= ffs(rdev->desc->vsel_mask) - 1;
210 uv = regulator_list_voltage_linear(rdev, val);
212 return regulator_map_voltage_linear(rdev, uv, uv);
258 struct regulator_dev *rdev;
277 rdev = devm_regulator_register(di->dev, &di->desc, config);
278 if (IS_ERR(rdev))
279 return PTR_ERR(rdev);
280 di->sel = rdesc->ops->get_voltage_sel(rdev);