return ret;
}
---- -static int tps6586x_get_voltage_sel(struct regulator_dev *rdev)
---- -{
---- - struct tps6586x_regulator *ri = rdev_get_drvdata(rdev);
---- - struct device *parent = to_tps6586x_dev(rdev);
---- - uint8_t val, mask;
---- - int ret;
---- -
---- - ret = tps6586x_read(parent, ri->volt_reg, &val);
---- - if (ret)
---- - return ret;
---- -
---- - mask = ((1 << ri->volt_nbits) - 1) << ri->volt_shift;
---- - val = (val & mask) >> ri->volt_shift;
---- -
---- - if (val >= ri->desc.n_voltages)
---- - BUG();
---- -
---- - return val;
---- -}
---- -
---- -static int tps6586x_regulator_enable(struct regulator_dev *rdev)
---- -{
---- - struct tps6586x_regulator *ri = rdev_get_drvdata(rdev);
---- - struct device *parent = to_tps6586x_dev(rdev);
---- -
---- - return tps6586x_set_bits(parent, ri->enable_reg[0],
---- - 1 << ri->enable_bit[0]);
---- -}
---- -
---- -static int tps6586x_regulator_disable(struct regulator_dev *rdev)
---- -{
---- - struct tps6586x_regulator *ri = rdev_get_drvdata(rdev);
---- - struct device *parent = to_tps6586x_dev(rdev);
---- -
---- - return tps6586x_clr_bits(parent, ri->enable_reg[0],
---- - 1 << ri->enable_bit[0]);
---- -}
---- -
---- -static int tps6586x_regulator_is_enabled(struct regulator_dev *rdev)
---- -{
---- - struct tps6586x_regulator *ri = rdev_get_drvdata(rdev);
---- - struct device *parent = to_tps6586x_dev(rdev);
---- - uint8_t reg_val;
---- - int ret;
---- -
---- - ret = tps6586x_read(parent, ri->enable_reg[0], ®_val);
---- - if (ret)
---- - return ret;
---- -
---- - return !!(reg_val & (1 << ri->enable_bit[0]));
---- -}
---- -
static struct regulator_ops tps6586x_regulator_ops = {
.list_voltage = regulator_list_voltage_table,
---- - .get_voltage_sel = tps6586x_get_voltage_sel,
++++ + .get_voltage_sel = regulator_get_voltage_sel_regmap,
.set_voltage_sel = tps6586x_set_voltage_sel,
---- - .is_enabled = tps6586x_regulator_is_enabled,
---- - .enable = tps6586x_regulator_enable,
---- - .disable = tps6586x_regulator_disable,
++++ + .is_enabled = regulator_is_enabled_regmap,
++++ + .enable = regulator_enable_regmap,
++++ + .disable = regulator_disable_regmap,
++++ };
++++
+++++ static struct regulator_ops tps6586x_sys_regulator_ops = {
+ };
+
static const unsigned int tps6586x_ldo0_voltages[] = {
1200000, 1500000, 1800000, 2500000, 2700000, 2850000, 3100000, 3300000,
};
TPS6586X_LDO(LDO_7, "vinldo678", ldo, SUPPLYV3, 3, 3, ENC, 5, END, 5),
TPS6586X_LDO(LDO_8, "vinldo678", ldo, SUPPLYV2, 5, 3, ENC, 6, END, 6),
TPS6586X_LDO(LDO_9, "vinldo9", ldo, SUPPLYV6, 3, 3, ENE, 7, ENE, 7),
----- TPS6586X_LDO(LDO_RTC, NULL, ldo, SUPPLYV4, 3, 3, V4, 7, V4, 7),
+++++ TPS6586X_LDO(LDO_RTC, "REG-SYS", ldo, SUPPLYV4, 3, 3, V4, 7, V4, 7),
TPS6586X_LDO(LDO_1, "vinldo01", dvm, SUPPLYV1, 0, 5, ENC, 1, END, 1),
- - TPS6586X_LDO(SM_2, "sm2", sm2, SUPPLYV2, 0, 5, ENC, 7, END, 7),
+ + TPS6586X_LDO(SM_2, "vin-sm2", sm2, SUPPLYV2, 0, 5, ENC, 7, END, 7),
TPS6586X_DVM(LDO_2, "vinldo23", dvm, LDO2BV1, 0, 5, ENA, 3,
ENB, 3, VCC2, 6),