Lines Matching refs:palmas

20 #include <linux/mfd/palmas.h>
398 static int palmas_smps_read(struct palmas *palmas, unsigned int reg,
405 return regmap_read(palmas->regmap[REGULATOR_SLAVE], addr, dest);
408 static int palmas_smps_write(struct palmas *palmas, unsigned int reg,
415 return regmap_write(palmas->regmap[REGULATOR_SLAVE], addr, value);
418 static int palmas_ldo_read(struct palmas *palmas, unsigned int reg,
425 return regmap_read(palmas->regmap[REGULATOR_SLAVE], addr, dest);
428 static int palmas_ldo_write(struct palmas *palmas, unsigned int reg,
435 return regmap_write(palmas->regmap[REGULATOR_SLAVE], addr, value);
443 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata;
448 ret = palmas_smps_read(pmic->palmas, rinfo->ctrl_addr, &reg);
473 palmas_smps_write(pmic->palmas, rinfo->ctrl_addr, reg);
506 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata;
527 ret = palmas_smps_write(pmic->palmas, rinfo->tstep_addr, reg);
529 dev_err(pmic->palmas->dev, "TSTEP write failed: %d\n", ret);
600 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata;
604 palmas_ldo_read(pmic->palmas, rinfo->ctrl_addr, &reg);
673 static int palmas_regulator_config_external(struct palmas *palmas, int id,
676 struct palmas_pmic_driver_data *ddata = palmas->pmic_ddata;
680 ret = palmas_ext_control_req_config(palmas, rinfo->sleep_id,
683 dev_err(palmas->dev,
695 static int palmas_smps_init(struct palmas *palmas, int id,
700 struct palmas_pmic_driver_data *ddata = palmas->pmic_ddata;
704 ret = palmas_smps_read(palmas, addr, &reg);
733 ret = palmas_smps_write(palmas, addr, reg);
741 ret = palmas_smps_write(palmas, rinfo->vsel_addr, reg);
749 ret = palmas_smps_read(palmas, addr, &reg);
755 ret = palmas_smps_write(palmas, addr, reg);
759 return palmas_regulator_config_external(palmas, id, reg_init);
764 static int palmas_ldo_init(struct palmas *palmas, int id,
770 struct palmas_pmic_driver_data *ddata = palmas->pmic_ddata;
775 ret = palmas_ldo_read(palmas, addr, &reg);
789 ret = palmas_ldo_write(palmas, addr, reg);
795 ret = palmas_update_bits(palmas, PALMAS_LDO_BASE,
799 dev_err(palmas->dev,
804 return palmas_regulator_config_external(palmas, id, reg_init);
809 static int palmas_extreg_init(struct palmas *palmas, int id,
815 struct palmas_pmic_driver_data *ddata = palmas->pmic_ddata;
823 ret = palmas_update_bits(palmas, PALMAS_RESOURCE_BASE,
826 dev_err(palmas->dev, "Resource reg 0x%02x update failed %d\n",
833 ret = palmas_update_bits(palmas, PALMAS_RESOURCE_BASE,
837 dev_err(palmas->dev,
842 return palmas_regulator_config_external(palmas, id, reg_init);
847 static void palmas_enable_ldo8_track(struct palmas *palmas)
852 struct palmas_pmic_driver_data *ddata = palmas->pmic_ddata;
858 ret = palmas_ldo_read(palmas, addr, &reg);
860 dev_err(palmas->dev, "Error in reading ldo8 control reg\n");
865 ret = palmas_ldo_write(palmas, addr, reg);
867 dev_err(palmas->dev, "Error in enabling tracking mode\n");
876 ret = palmas_ldo_read(palmas, addr, &reg);
878 dev_err(palmas->dev, "Error in reading ldo8 voltage reg\n");
883 ret = palmas_ldo_write(palmas, addr, reg);
885 dev_err(palmas->dev, "Error in setting ldo8 voltage reg\n");
940 palmas_enable_ldo8_track(pmic->palmas);
994 ret = palmas_ldo_init(pmic->palmas, id,
997 ret = palmas_extreg_init(pmic->palmas,
1101 ret = palmas_ldo_init(pmic->palmas,
1104 ret = palmas_extreg_init(pmic->palmas,
1162 if (!PALMAS_PMIC_HAS(pmic->palmas, SMPS10_BOOST))
1173 ret = palmas_smps_read(pmic->palmas, addr, &reg);
1186 ret = palmas_smps_init(pmic->palmas, id, reg_init);
1228 ret = palmas_smps_read(pmic->palmas, addr, &reg);
1249 ret = palmas_smps_read(pmic->palmas, addr, &reg);
1312 ret = palmas_smps_init(pmic->palmas, id, reg_init);
1332 ret = palmas_smps_read(pmic->palmas, addr, &reg);
1355 ret = palmas_smps_read(pmic->palmas, addr, &reg);
1557 .compatible = "ti,palmas-pmic",
1597 struct palmas *palmas = dev_get_drvdata(pdev->dev.parent);
1629 pmic->palmas = palmas;
1630 palmas->pmic = pmic;
1632 pmic->palmas->pmic_ddata = driver_data;
1638 ret = palmas_smps_read(palmas, PALMAS_SMPS_CTRL, &reg);
1650 config.regmap = palmas->regmap[REGULATOR_SLAVE];
1668 .name = "palmas-pmic",
1689 MODULE_ALIAS("platform:palmas-pmic");