/linux-6.12.1/drivers/regulator/ |
D | max77620-regulator.c | 99 static int max77620_regulator_get_fps_src(struct max77620_regulator *pmic, in max77620_regulator_get_fps_src() argument 102 struct max77620_regulator_info *rinfo = pmic->rinfo[id]; in max77620_regulator_get_fps_src() 106 ret = regmap_read(pmic->rmap, rinfo->fps_addr, &val); in max77620_regulator_get_fps_src() 108 dev_err(pmic->dev, "Reg 0x%02x read failed %d\n", in max77620_regulator_get_fps_src() 116 static int max77620_regulator_set_fps_src(struct max77620_regulator *pmic, in max77620_regulator_set_fps_src() argument 119 struct max77620_regulator_info *rinfo = pmic->rinfo[id]; in max77620_regulator_set_fps_src() 134 ret = regmap_read(pmic->rmap, rinfo->fps_addr, &val); in max77620_regulator_set_fps_src() 136 dev_err(pmic->dev, "Reg 0x%02x read failed %d\n", in max77620_regulator_set_fps_src() 141 pmic->active_fps_src[id] = ret; in max77620_regulator_set_fps_src() 145 dev_err(pmic->dev, "Invalid FPS %d for regulator %d\n", in max77620_regulator_set_fps_src() [all …]
|
D | tps65910-regulator.c | 391 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_set_mode() local 395 reg = pmic->get_ctrl_reg(id); in tps65910_set_mode() 416 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_get_mode() local 420 reg = pmic->get_ctrl_reg(id); in tps65910_get_mode() 514 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_get_voltage_sel() local 518 reg = pmic->get_ctrl_reg(id); in tps65910_get_voltage_sel() 557 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65911_get_voltage_sel() local 562 reg = pmic->get_ctrl_reg(id); in tps65911_get_voltage_sel() 634 struct tps65910_reg *pmic = rdev_get_drvdata(dev); in tps65910_set_voltage_sel() local 638 reg = pmic->get_ctrl_reg(id); in tps65910_set_voltage_sel() [all …]
|
D | isl6271a-regulator.c | 31 struct isl_pmic *pmic = rdev_get_drvdata(dev); in isl6271a_get_voltage_sel() local 34 mutex_lock(&pmic->mtx); in isl6271a_get_voltage_sel() 36 idx = i2c_smbus_read_byte(pmic->client); in isl6271a_get_voltage_sel() 38 dev_err(&pmic->client->dev, "Error getting voltage\n"); in isl6271a_get_voltage_sel() 40 mutex_unlock(&pmic->mtx); in isl6271a_get_voltage_sel() 47 struct isl_pmic *pmic = rdev_get_drvdata(dev); in isl6271a_set_voltage_sel() local 50 mutex_lock(&pmic->mtx); in isl6271a_set_voltage_sel() 52 err = i2c_smbus_write_byte(pmic->client, selector); in isl6271a_set_voltage_sel() 54 dev_err(&pmic->client->dev, "Error setting voltage\n"); in isl6271a_set_voltage_sel() 56 mutex_unlock(&pmic->mtx); in isl6271a_set_voltage_sel() [all …]
|
D | palmas-regulator.c | 441 struct palmas_pmic *pmic = rdev_get_drvdata(dev); in palmas_set_mode_smps() local 442 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata; in palmas_set_mode_smps() 447 ret = palmas_smps_read(pmic->palmas, rinfo->ctrl_addr, ®); in palmas_set_mode_smps() 470 pmic->current_reg_mode[id] = reg & PALMAS_SMPS12_CTRL_MODE_ACTIVE_MASK; in palmas_set_mode_smps() 472 palmas_smps_write(pmic->palmas, rinfo->ctrl_addr, reg); in palmas_set_mode_smps() 475 pmic->desc[id].enable_val = pmic->current_reg_mode[id]; in palmas_set_mode_smps() 482 struct palmas_pmic *pmic = rdev_get_drvdata(dev); in palmas_get_mode_smps() local 486 reg = pmic->current_reg_mode[id] & PALMAS_SMPS12_CTRL_MODE_ACTIVE_MASK; in palmas_get_mode_smps() 504 struct palmas_pmic *pmic = rdev_get_drvdata(rdev); in palmas_smps_set_ramp_delay() local 505 struct palmas_pmic_driver_data *ddata = pmic->palmas->pmic_ddata; in palmas_smps_set_ramp_delay() [all …]
|
D | max8907-regulator.c | 279 struct max8907_regulator *pmic; in max8907_regulator_probe() local 290 pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL); in max8907_regulator_probe() 291 if (!pmic) in max8907_regulator_probe() 294 platform_set_drvdata(pdev, pmic); in max8907_regulator_probe() 296 memcpy(pmic->desc, max8907_regulators, sizeof(pmic->desc)); in max8907_regulator_probe() 305 pmic->desc[MAX8907_SD1].min_uV = 637500; in max8907_regulator_probe() 306 pmic->desc[MAX8907_SD1].uV_step = 12500; in max8907_regulator_probe() 307 pmic->desc[MAX8907_SD1].n_voltages = in max8907_regulator_probe() 320 config.driver_data = pmic; in max8907_regulator_probe() 324 switch (pmic->desc[i].id) { in max8907_regulator_probe() [all …]
|
D | wm8350-regulator.c | 101 switch (wm8350->pmic.isink_A_dcdc) { in wm8350_isink_enable() 109 1 << (wm8350->pmic.isink_A_dcdc - in wm8350_isink_enable() 117 switch (wm8350->pmic.isink_B_dcdc) { in wm8350_isink_enable() 125 1 << (wm8350->pmic.isink_B_dcdc - in wm8350_isink_enable() 145 switch (wm8350->pmic.isink_A_dcdc) { in wm8350_isink_disable() 149 1 << (wm8350->pmic.isink_A_dcdc - in wm8350_isink_disable() 159 switch (wm8350->pmic.isink_B_dcdc) { in wm8350_isink_disable() 163 1 << (wm8350->pmic.isink_B_dcdc - in wm8350_isink_disable() 311 val | wm8350->pmic.dcdc1_hib_mode); in wm8350_dcdc_set_suspend_enable() 317 val | wm8350->pmic.dcdc3_hib_mode); in wm8350_dcdc_set_suspend_enable() [all …]
|
/linux-6.12.1/drivers/mfd/ |
D | intel_soc_pmic_bxtwc.c | 281 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_read() local 283 if (!pmic) in regmap_ipc_byte_reg_read() 295 ret = intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_read() 311 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_write() local 313 if (!pmic) in regmap_ipc_byte_reg_write() 326 return intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_write() 356 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in val_show() local 358 ret = regmap_read(pmic->regmap, bxtwc_reg_addr, &val); in val_show() 372 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in val_store() local 378 ret = regmap_write(pmic->regmap, bxtwc_reg_addr, val); in val_store() [all …]
|
D | hi655x-pmic.c | 94 struct hi655x_pmic *pmic; in hi655x_pmic_probe() local 98 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in hi655x_pmic_probe() 99 if (!pmic) in hi655x_pmic_probe() 101 pmic->dev = dev; in hi655x_pmic_probe() 107 pmic->regmap = devm_regmap_init_mmio_clk(dev, NULL, base, in hi655x_pmic_probe() 109 if (IS_ERR(pmic->regmap)) in hi655x_pmic_probe() 110 return PTR_ERR(pmic->regmap); in hi655x_pmic_probe() 112 regmap_read(pmic->regmap, HI655X_BUS_ADDR(HI655X_VER_REG), &pmic->ver); in hi655x_pmic_probe() 113 if ((pmic->ver < PMU_VER_START) || (pmic->ver > PMU_VER_END)) { in hi655x_pmic_probe() 114 dev_warn(dev, "PMU version %d unsupported\n", pmic->ver); in hi655x_pmic_probe() [all …]
|
D | qcom-spmi-pmic.c | 32 struct qcom_spmi_pmic pmic; member 155 memcpy(&ctx->pmic, &base_ctx->pmic, sizeof(ctx->pmic)); in pmic_spmi_get_base_revid() 165 struct qcom_spmi_pmic *pmic) in pmic_spmi_load_revid() argument 169 ret = regmap_read(map, PMIC_TYPE, &pmic->type); in pmic_spmi_load_revid() 173 if (pmic->type != PMIC_TYPE_VALUE) in pmic_spmi_load_revid() 176 ret = regmap_read(map, PMIC_SUBTYPE, &pmic->subtype); in pmic_spmi_load_revid() 180 pmic->name = of_match_device(pmic_spmi_id_table, dev)->compatible; in pmic_spmi_load_revid() 182 ret = regmap_read(map, PMIC_REV2, &pmic->rev2); in pmic_spmi_load_revid() 186 ret = regmap_read(map, PMIC_REV3, &pmic->minor); in pmic_spmi_load_revid() 190 ret = regmap_read(map, PMIC_REV4, &pmic->major); in pmic_spmi_load_revid() [all …]
|
D | intel_soc_pmic_chtdc_ti.c | 110 struct intel_soc_pmic *pmic; in chtdc_ti_probe() local 113 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in chtdc_ti_probe() 114 if (!pmic) in chtdc_ti_probe() 117 i2c_set_clientdata(i2c, pmic); in chtdc_ti_probe() 119 pmic->regmap = devm_regmap_init_i2c(i2c, &chtdc_ti_regmap_config); in chtdc_ti_probe() 120 if (IS_ERR(pmic->regmap)) in chtdc_ti_probe() 121 return PTR_ERR(pmic->regmap); in chtdc_ti_probe() 122 pmic->irq = i2c->irq; in chtdc_ti_probe() 124 ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq, in chtdc_ti_probe() 127 &pmic->irq_chip_data); in chtdc_ti_probe() [all …]
|
D | intel_soc_pmic_mrfld.c | 76 struct intel_soc_pmic *pmic = context; in bcove_ipc_byte_reg_read() local 80 ret = intel_scu_ipc_dev_ioread8(pmic->scu, reg, &ipc_out); in bcove_ipc_byte_reg_read() 91 struct intel_soc_pmic *pmic = context; in bcove_ipc_byte_reg_write() local 94 return intel_scu_ipc_dev_iowrite8(pmic->scu, reg, ipc_in); in bcove_ipc_byte_reg_write() 108 struct intel_soc_pmic *pmic; in bcove_probe() local 112 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in bcove_probe() 113 if (!pmic) in bcove_probe() 116 pmic->scu = devm_intel_scu_ipc_dev_get(dev); in bcove_probe() 117 if (!pmic->scu) in bcove_probe() 120 platform_set_drvdata(pdev, pmic); in bcove_probe() [all …]
|
D | intel_soc_pmic_crc.c | 173 struct intel_soc_pmic *pmic; in crystal_cove_i2c_probe() local 181 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in crystal_cove_i2c_probe() 182 if (!pmic) in crystal_cove_i2c_probe() 185 i2c_set_clientdata(i2c, pmic); in crystal_cove_i2c_probe() 187 pmic->regmap = devm_regmap_init_i2c(i2c, config->regmap_config); in crystal_cove_i2c_probe() 188 if (IS_ERR(pmic->regmap)) in crystal_cove_i2c_probe() 189 return PTR_ERR(pmic->regmap); in crystal_cove_i2c_probe() 191 pmic->irq = i2c->irq; in crystal_cove_i2c_probe() 193 ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq, in crystal_cove_i2c_probe() 195 0, config->irq_chip, &pmic->irq_chip_data); in crystal_cove_i2c_probe() [all …]
|
D | intel_soc_pmic_chtwc.c | 191 struct intel_soc_pmic *pmic; in cht_wc_probe() local 205 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in cht_wc_probe() 206 if (!pmic) in cht_wc_probe() 211 pmic->cht_wc_model = (long)id->driver_data; in cht_wc_probe() 213 pmic->irq = client->irq; in cht_wc_probe() 214 pmic->dev = dev; in cht_wc_probe() 215 i2c_set_clientdata(client, pmic); in cht_wc_probe() 217 pmic->regmap = devm_regmap_init(dev, NULL, client, &cht_wc_regmap_cfg); in cht_wc_probe() 218 if (IS_ERR(pmic->regmap)) in cht_wc_probe() 219 return PTR_ERR(pmic->regmap); in cht_wc_probe() [all …]
|
D | hi6421-pmic-core.c | 53 struct hi6421_pmic *pmic; in hi6421_pmic_probe() local 61 pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL); in hi6421_pmic_probe() 62 if (!pmic) in hi6421_pmic_probe() 69 pmic->regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, in hi6421_pmic_probe() 71 if (IS_ERR(pmic->regmap)) { in hi6421_pmic_probe() 73 PTR_ERR(pmic->regmap)); in hi6421_pmic_probe() 74 return PTR_ERR(pmic->regmap); in hi6421_pmic_probe() 77 platform_set_drvdata(pdev, pmic); in hi6421_pmic_probe() 82 regmap_update_bits(pmic->regmap, HI6421_OCP_DEB_CTRL_REG, in hi6421_pmic_probe()
|
D | mt6397-core.c | 309 struct mt6397_chip *pmic; in mt6397_probe() local 312 pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL); in mt6397_probe() 313 if (!pmic) in mt6397_probe() 316 pmic->dev = &pdev->dev; in mt6397_probe() 322 pmic->regmap = dev_get_regmap(pdev->dev.parent, NULL); in mt6397_probe() 323 if (!pmic->regmap) in mt6397_probe() 330 ret = regmap_read(pmic->regmap, pmic_core->cid_addr, &id); in mt6397_probe() 336 pmic->chip_id = (id >> pmic_core->cid_shift) & 0xff; in mt6397_probe() 338 platform_set_drvdata(pdev, pmic); in mt6397_probe() 340 pmic->irq = platform_get_irq(pdev, 0); in mt6397_probe() [all …]
|
/linux-6.12.1/drivers/watchdog/ |
D | stpmic1_wdt.c | 31 struct stpmic1 *pmic; member 39 return regmap_update_bits(wdt->pmic->regmap, in pmic_wdt_start() 47 return regmap_update_bits(wdt->pmic->regmap, in pmic_wdt_stop() 55 return regmap_update_bits(wdt->pmic->regmap, in pmic_wdt_ping() 66 return regmap_write(wdt->pmic->regmap, WCHDG_TIMER_CR, timeout - 1); in pmic_wdt_set_timeout() 86 struct stpmic1 *pmic; in pmic_wdt_probe() local 92 pmic = dev_get_drvdata(dev->parent); in pmic_wdt_probe() 93 if (!pmic) in pmic_wdt_probe() 100 wdt->pmic = pmic; in pmic_wdt_probe() 118 dev_dbg(wdt->pmic->dev, "PMIC Watchdog driver probed\n"); in pmic_wdt_probe()
|
/linux-6.12.1/arch/arm64/boot/dts/qcom/ |
D | x1e80100-pmics.dtsi | 197 pmk8550: pmic@0 { 198 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 263 pm8550: pmic@1 { 264 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 301 pm8550ve_2: pmic@2 { 302 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 326 pmc8380_3: pmic@3 { 327 compatible = "qcom,pmc8380", "qcom,spmi-pmic"; 350 pmc8380_4: pmic@4 { 351 compatible = "qcom,pmc8380", "qcom,spmi-pmic"; [all …]
|
D | sc8180x-pmics.dtsi | 69 pmc8180_0: pmic@0 { 70 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 153 pmic@1 { 154 compatible = "qcom,pmc8180", "qcom,spmi-pmic"; 160 pmic@2 { 161 compatible = "qcom,smb2351", "qcom,spmi-pmic"; 194 pmic@6 { 195 compatible = "qcom,pm8150c", "qcom,spmi-pmic"; 201 pmc8180_2: pmic@8 { 202 compatible = "qcom,pm8150", "qcom,spmi-pmic"; [all …]
|
D | sa8540p-pmics.dtsi | 11 pmm8540a: pmic@0 { 12 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 36 pmm8540c: pmic@4 { 37 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 62 pmm8540e: pmic@8 { 63 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 79 pmm8540g: pmic@c { 80 compatible = "qcom,pm8150", "qcom,spmi-pmic";
|
D | pm8550vs.dtsi | 95 pm8550vs_c: pmic@2 { 96 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 119 pm8550vs_d: pmic@3 { 120 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 143 pm8550vs_e: pmic@4 { 144 compatible = "qcom,pm8550", "qcom,spmi-pmic"; 167 pm8550vs_g: pmic@6 { 168 compatible = "qcom,pm8550", "qcom,spmi-pmic";
|
D | pm8004.dtsi | 7 pm8004_lsid4: pmic@4 { 8 compatible = "qcom,pm8004", "qcom,spmi-pmic"; 14 pm8004_lsid5: pmic@5 { 15 compatible = "qcom,pm8004", "qcom,spmi-pmic";
|
/linux-6.12.1/Documentation/devicetree/bindings/regulator/ |
D | palmas-pmic.txt | 12 ti,twl6035-pmic 13 ti,twl6036-pmic 14 ti,twl6037-pmic 15 ti,tps65913-pmic 16 ti,tps65914-pmic 17 ti,tps65917-pmic 18 ti,tps659038-pmic 20 ti,palmas-pmic 35 For ti,palmas-pmic - smps12, smps123, smps3 depending on OTP, 48 ti,mode-sleep - mode to adopt in pmic sleep 0 - off, 1 - auto, [all …]
|
/linux-6.12.1/arch/arm/mach-omap2/ |
D | vp.c | 19 vsel = voltdm->pmic->uv_to_vsel(volt); in _vp_set_init_voltage() 45 if (!voltdm->pmic || !voltdm->pmic->uv_to_vsel) { in omap_vp_init() 61 timeout = (sys_clk_rate * voltdm->pmic->vp_timeout_us) / 1000; in omap_vp_init() 62 vddmin = max(voltdm->vp_param->vddmin, voltdm->pmic->vddmin); in omap_vp_init() 63 vddmax = min(voltdm->vp_param->vddmax, voltdm->pmic->vddmax); in omap_vp_init() 64 vddmin = voltdm->pmic->uv_to_vsel(vddmin); in omap_vp_init() 65 vddmax = voltdm->pmic->uv_to_vsel(vddmax); in omap_vp_init() 67 waittime = DIV_ROUND_UP(voltdm->pmic->step_size * sys_clk_rate, in omap_vp_init() 68 1000 * voltdm->pmic->slew_rate); in omap_vp_init() 69 vstepmin = voltdm->pmic->vp_vstepmin; in omap_vp_init() [all …]
|
D | vc.c | 143 if (!voltdm->pmic) { in omap_vc_pre_scale() 149 if (!voltdm->pmic->uv_to_vsel) { in omap_vc_pre_scale() 161 *target_vsel = voltdm->pmic->uv_to_vsel(target_volt); in omap_vc_pre_scale() 162 *current_vsel = voltdm->pmic->uv_to_vsel(voltdm->nominal_volt); in omap_vc_pre_scale() 185 smps_delay = ((smps_steps * voltdm->pmic->step_size) / in omap_vc_post_scale() 186 voltdm->pmic->slew_rate) + 2; in omap_vc_post_scale() 377 val = (voltdm->vc_param->on - idle) / voltdm->pmic->slew_rate; in omap3_init_voltsetup1() 478 time = voltage_diff / voltdm->pmic->slew_rate; in omap4_calc_volt_ramp() 669 if (!voltdm->pmic->i2c_high_speed) { in omap4_vc_i2c_timing_init() 681 capacitance += voltdm->pmic->i2c_pad_load; in omap4_vc_i2c_timing_init() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/mfd/ |
D | hisilicon,hi655x.txt | 15 - compatible: Should be "hisilicon,hi655x-pmic". 18 - pmic-gpios: The GPIO used by PMIC IRQ. 26 pmic: pmic@f8000000 { 27 compatible = "hisilicon,hi655x-pmic"; 31 pmic-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|