Lines Matching +full:pmic +full:- +full:buck4 +full:- +full:uses +full:- +full:gpio +full:- +full:dvs

1 // SPDX-License-Identifier: GPL-2.0+
9 #include <linux/gpio/consumer.h>
171 *reg = S5M8767_REG_LDO1CTRL + (reg_id - S5M8767_LDO1); in s5m8767_get_register()
174 *reg = S5M8767_REG_LDO3CTRL + (reg_id - S5M8767_LDO3); in s5m8767_get_register()
180 *reg = S5M8767_REG_BUCK2CTRL + (reg_id - S5M8767_BUCK2) * 9; in s5m8767_get_register()
186 *reg = S5M8767_REG_BUCK6CTRL1 + (reg_id - S5M8767_BUCK6) * 2; in s5m8767_get_register()
189 return -EINVAL; in s5m8767_get_register()
192 for (i = 0; i < s5m8767->num_regulators; i++) { in s5m8767_get_register()
193 if (s5m8767->opmode[i].id == reg_id) { in s5m8767_get_register()
194 mode = s5m8767->opmode[i].mode; in s5m8767_get_register()
199 if (i >= s5m8767->num_regulators) in s5m8767_get_register()
200 return -EINVAL; in s5m8767_get_register()
213 reg = S5M8767_REG_LDO1CTRL + (reg_id - S5M8767_LDO1); in s5m8767_get_vsel_reg()
216 reg = S5M8767_REG_LDO3CTRL + (reg_id - S5M8767_LDO3); in s5m8767_get_vsel_reg()
223 if (s5m8767->buck2_gpiodvs) in s5m8767_get_vsel_reg()
224 reg += s5m8767->buck_gpioindex; in s5m8767_get_vsel_reg()
228 if (s5m8767->buck3_gpiodvs) in s5m8767_get_vsel_reg()
229 reg += s5m8767->buck_gpioindex; in s5m8767_get_vsel_reg()
233 if (s5m8767->buck4_gpiodvs) in s5m8767_get_vsel_reg()
234 reg += s5m8767->buck_gpioindex; in s5m8767_get_vsel_reg()
240 reg = S5M8767_REG_BUCK6CTRL2 + (reg_id - S5M8767_BUCK6) * 2; in s5m8767_get_vsel_reg()
243 return -EINVAL; in s5m8767_get_vsel_reg()
255 return -EINVAL; in s5m8767_convert_voltage_to_sel()
257 if (min_vol > desc->max) in s5m8767_convert_voltage_to_sel()
258 return -EINVAL; in s5m8767_convert_voltage_to_sel()
260 if (min_vol < desc->min) in s5m8767_convert_voltage_to_sel()
261 min_vol = desc->min; in s5m8767_convert_voltage_to_sel()
263 selector = DIV_ROUND_UP(min_vol - desc->min, desc->step); in s5m8767_convert_voltage_to_sel()
265 if (desc->min + desc->step * selector > desc->max) in s5m8767_convert_voltage_to_sel()
266 return -EINVAL; in s5m8767_convert_voltage_to_sel()
273 int temp_index = s5m8767->buck_gpioindex; in s5m8767_set_high()
275 gpiod_set_value(s5m8767->buck_gpios[0], !!(temp_index & BIT(2))); in s5m8767_set_high()
276 gpiod_set_value(s5m8767->buck_gpios[1], !!(temp_index & BIT(1))); in s5m8767_set_high()
277 gpiod_set_value(s5m8767->buck_gpios[2], !!(temp_index & BIT(0))); in s5m8767_set_high()
284 int temp_index = s5m8767->buck_gpioindex; in s5m8767_set_low()
286 gpiod_set_value(s5m8767->buck_gpios[2], !!(temp_index & BIT(0))); in s5m8767_set_low()
287 gpiod_set_value(s5m8767->buck_gpios[1], !!(temp_index & BIT(1))); in s5m8767_set_low()
288 gpiod_set_value(s5m8767->buck_gpios[0], !!(temp_index & BIT(2))); in s5m8767_set_low()
305 if (reg_id == S5M8767_BUCK2 && s5m8767->buck2_gpiodvs) in s5m8767_set_voltage_sel()
306 buck234_vol = &s5m8767->buck2_vol[0]; in s5m8767_set_voltage_sel()
307 else if (reg_id == S5M8767_BUCK3 && s5m8767->buck3_gpiodvs) in s5m8767_set_voltage_sel()
308 buck234_vol = &s5m8767->buck3_vol[0]; in s5m8767_set_voltage_sel()
309 else if (reg_id == S5M8767_BUCK4 && s5m8767->buck4_gpiodvs) in s5m8767_set_voltage_sel()
310 buck234_vol = &s5m8767->buck4_vol[0]; in s5m8767_set_voltage_sel()
313 return -EINVAL; in s5m8767_set_voltage_sel()
317 return -EINVAL; in s5m8767_set_voltage_sel()
320 /* buck234_vol != NULL means to control buck234 voltage via DVS GPIO */ in s5m8767_set_voltage_sel()
326 old_index = s5m8767->buck_gpioindex; in s5m8767_set_voltage_sel()
327 s5m8767->buck_gpioindex = index; in s5m8767_set_voltage_sel()
344 if ((old_sel < new_sel) && s5m8767->ramp_delay) in s5m8767_set_voltage_time_sel()
345 return DIV_ROUND_UP(rdev->desc->uV_step * (new_sel - old_sel), in s5m8767_set_voltage_time_sel()
346 s5m8767->ramp_delay * 1000); in s5m8767_set_voltage_time_sel()
417 s5m8767_regulator_desc(BUCK4),
426 * Enable GPIO control over BUCK9 in regulator_config for that regulator.
434 if (rdata->id != S5M8767_BUCK9) in s5m8767_regulator_config_ext_control()
438 for (i = 0; i < s5m8767->num_regulators; i++) { in s5m8767_regulator_config_ext_control()
439 const struct sec_opmode_data *opmode = &s5m8767->opmode[i]; in s5m8767_regulator_config_ext_control()
440 if (opmode->id == rdata->id) { in s5m8767_regulator_config_ext_control()
441 mode = s5m8767_opmode_reg[rdata->id][opmode->mode]; in s5m8767_regulator_config_ext_control()
446 dev_warn(s5m8767->dev, in s5m8767_regulator_config_ext_control()
447 "ext-control for %pOFn: mismatched op_mode (%x), ignoring\n", in s5m8767_regulator_config_ext_control()
448 rdata->reg_node, mode); in s5m8767_regulator_config_ext_control()
452 if (!rdata->ext_control_gpiod) { in s5m8767_regulator_config_ext_control()
453 dev_warn(s5m8767->dev, in s5m8767_regulator_config_ext_control()
454 "ext-control for %pOFn: GPIO not valid, ignoring\n", in s5m8767_regulator_config_ext_control()
455 rdata->reg_node); in s5m8767_regulator_config_ext_control()
459 config->ena_gpiod = rdata->ext_control_gpiod; in s5m8767_regulator_config_ext_control()
463 * Turn on GPIO control over BUCK9.
472 return -EINVAL; in s5m8767_enable_ext_control()
478 return regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_enable_ext_control()
488 struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent); in s5m8767_pmic_dt_parse_pdata()
494 pmic_np = iodev->dev->of_node; in s5m8767_pmic_dt_parse_pdata()
496 dev_err(iodev->dev, "could not find pmic sub-node\n"); in s5m8767_pmic_dt_parse_pdata()
497 return -ENODEV; in s5m8767_pmic_dt_parse_pdata()
503 dev_err(iodev->dev, "could not find regulators sub-node\n"); in s5m8767_pmic_dt_parse_pdata()
504 return -EINVAL; in s5m8767_pmic_dt_parse_pdata()
507 /* count the number of regulators to be supported in pmic */ in s5m8767_pmic_dt_parse_pdata()
508 pdata->num_regulators = of_get_child_count(regulators_np); in s5m8767_pmic_dt_parse_pdata()
510 rdata = devm_kcalloc(&pdev->dev, in s5m8767_pmic_dt_parse_pdata()
511 pdata->num_regulators, sizeof(*rdata), in s5m8767_pmic_dt_parse_pdata()
514 return -ENOMEM; in s5m8767_pmic_dt_parse_pdata()
516 rmode = devm_kcalloc(&pdev->dev, in s5m8767_pmic_dt_parse_pdata()
517 pdata->num_regulators, sizeof(*rmode), in s5m8767_pmic_dt_parse_pdata()
520 return -ENOMEM; in s5m8767_pmic_dt_parse_pdata()
522 pdata->regulators = rdata; in s5m8767_pmic_dt_parse_pdata()
523 pdata->opmode = rmode; in s5m8767_pmic_dt_parse_pdata()
530 dev_warn(iodev->dev, in s5m8767_pmic_dt_parse_pdata()
536 rdata->ext_control_gpiod = devm_fwnode_gpiod_get( in s5m8767_pmic_dt_parse_pdata()
537 &pdev->dev, in s5m8767_pmic_dt_parse_pdata()
539 "s5m8767,pmic-ext-control", in s5m8767_pmic_dt_parse_pdata()
542 if (PTR_ERR(rdata->ext_control_gpiod) == -ENOENT) { in s5m8767_pmic_dt_parse_pdata()
543 rdata->ext_control_gpiod = NULL; in s5m8767_pmic_dt_parse_pdata()
544 } else if (IS_ERR(rdata->ext_control_gpiod)) { in s5m8767_pmic_dt_parse_pdata()
546 return PTR_ERR(rdata->ext_control_gpiod); in s5m8767_pmic_dt_parse_pdata()
549 rdata->id = i; in s5m8767_pmic_dt_parse_pdata()
550 rdata->initdata = of_get_regulator_init_data( in s5m8767_pmic_dt_parse_pdata()
551 &pdev->dev, reg_np, in s5m8767_pmic_dt_parse_pdata()
553 rdata->reg_node = reg_np; in s5m8767_pmic_dt_parse_pdata()
555 rmode->id = i; in s5m8767_pmic_dt_parse_pdata()
557 &rmode->mode)) { in s5m8767_pmic_dt_parse_pdata()
558 dev_warn(iodev->dev, in s5m8767_pmic_dt_parse_pdata()
562 rmode->mode = S5M8767_OPMODE_NORMAL_MODE; in s5m8767_pmic_dt_parse_pdata()
567 if (of_property_read_bool(pmic_np, "s5m8767,pmic-buck2-uses-gpio-dvs")) { in s5m8767_pmic_dt_parse_pdata()
568 pdata->buck2_gpiodvs = true; in s5m8767_pmic_dt_parse_pdata()
571 "s5m8767,pmic-buck2-dvs-voltage", in s5m8767_pmic_dt_parse_pdata()
572 pdata->buck2_voltage, dvs_voltage_nr)) { in s5m8767_pmic_dt_parse_pdata()
573 dev_err(iodev->dev, "buck2 voltages not specified\n"); in s5m8767_pmic_dt_parse_pdata()
574 return -EINVAL; in s5m8767_pmic_dt_parse_pdata()
578 if (of_property_read_bool(pmic_np, "s5m8767,pmic-buck3-uses-gpio-dvs")) { in s5m8767_pmic_dt_parse_pdata()
579 pdata->buck3_gpiodvs = true; in s5m8767_pmic_dt_parse_pdata()
582 "s5m8767,pmic-buck3-dvs-voltage", in s5m8767_pmic_dt_parse_pdata()
583 pdata->buck3_voltage, dvs_voltage_nr)) { in s5m8767_pmic_dt_parse_pdata()
584 dev_err(iodev->dev, "buck3 voltages not specified\n"); in s5m8767_pmic_dt_parse_pdata()
585 return -EINVAL; in s5m8767_pmic_dt_parse_pdata()
589 if (of_property_read_bool(pmic_np, "s5m8767,pmic-buck4-uses-gpio-dvs")) { in s5m8767_pmic_dt_parse_pdata()
590 pdata->buck4_gpiodvs = true; in s5m8767_pmic_dt_parse_pdata()
593 "s5m8767,pmic-buck4-dvs-voltage", in s5m8767_pmic_dt_parse_pdata()
594 pdata->buck4_voltage, dvs_voltage_nr)) { in s5m8767_pmic_dt_parse_pdata()
595 dev_err(iodev->dev, "buck4 voltages not specified\n"); in s5m8767_pmic_dt_parse_pdata()
596 return -EINVAL; in s5m8767_pmic_dt_parse_pdata()
600 if (pdata->buck2_gpiodvs || pdata->buck3_gpiodvs || in s5m8767_pmic_dt_parse_pdata()
601 pdata->buck4_gpiodvs) { in s5m8767_pmic_dt_parse_pdata()
603 "s5m8767,pmic-buck-default-dvs-idx", in s5m8767_pmic_dt_parse_pdata()
604 &pdata->buck_default_idx)) { in s5m8767_pmic_dt_parse_pdata()
605 pdata->buck_default_idx = 0; in s5m8767_pmic_dt_parse_pdata()
607 if (pdata->buck_default_idx >= 8) { in s5m8767_pmic_dt_parse_pdata()
608 pdata->buck_default_idx = 0; in s5m8767_pmic_dt_parse_pdata()
609 dev_info(iodev->dev, in s5m8767_pmic_dt_parse_pdata()
610 "invalid value for default dvs index, use 0\n"); in s5m8767_pmic_dt_parse_pdata()
615 pdata->buck2_ramp_enable = of_property_read_bool(pmic_np, "s5m8767,pmic-buck2-ramp-enable"); in s5m8767_pmic_dt_parse_pdata()
616 pdata->buck3_ramp_enable = of_property_read_bool(pmic_np, "s5m8767,pmic-buck3-ramp-enable"); in s5m8767_pmic_dt_parse_pdata()
617 pdata->buck4_ramp_enable = of_property_read_bool(pmic_np, "s5m8767,pmic-buck4-ramp-enable"); in s5m8767_pmic_dt_parse_pdata()
619 if (pdata->buck2_ramp_enable || pdata->buck3_ramp_enable in s5m8767_pmic_dt_parse_pdata()
620 || pdata->buck4_ramp_enable) { in s5m8767_pmic_dt_parse_pdata()
621 if (of_property_read_u32(pmic_np, "s5m8767,pmic-buck-ramp-delay", in s5m8767_pmic_dt_parse_pdata()
622 &pdata->buck_ramp_delay)) in s5m8767_pmic_dt_parse_pdata()
623 pdata->buck_ramp_delay = 0; in s5m8767_pmic_dt_parse_pdata()
638 struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent); in s5m8767_pmic_probe()
639 struct sec_platform_data *pdata = iodev->pdata; in s5m8767_pmic_probe()
647 dev_err(pdev->dev.parent, "Platform data not supplied\n"); in s5m8767_pmic_probe()
648 return -ENODEV; in s5m8767_pmic_probe()
651 if (iodev->dev->of_node) { in s5m8767_pmic_probe()
657 if (pdata->buck2_gpiodvs) { in s5m8767_pmic_probe()
658 if (pdata->buck3_gpiodvs || pdata->buck4_gpiodvs) { in s5m8767_pmic_probe()
659 dev_err(&pdev->dev, "S5M8767 GPIO DVS NOT VALID\n"); in s5m8767_pmic_probe()
660 return -EINVAL; in s5m8767_pmic_probe()
664 if (pdata->buck3_gpiodvs) { in s5m8767_pmic_probe()
665 if (pdata->buck2_gpiodvs || pdata->buck4_gpiodvs) { in s5m8767_pmic_probe()
666 dev_err(&pdev->dev, "S5M8767 GPIO DVS NOT VALID\n"); in s5m8767_pmic_probe()
667 return -EINVAL; in s5m8767_pmic_probe()
671 if (pdata->buck4_gpiodvs) { in s5m8767_pmic_probe()
672 if (pdata->buck2_gpiodvs || pdata->buck3_gpiodvs) { in s5m8767_pmic_probe()
673 dev_err(&pdev->dev, "S5M8767 GPIO DVS NOT VALID\n"); in s5m8767_pmic_probe()
674 return -EINVAL; in s5m8767_pmic_probe()
678 s5m8767 = devm_kzalloc(&pdev->dev, sizeof(struct s5m8767_info), in s5m8767_pmic_probe()
681 return -ENOMEM; in s5m8767_pmic_probe()
683 s5m8767->dev = &pdev->dev; in s5m8767_pmic_probe()
684 s5m8767->iodev = iodev; in s5m8767_pmic_probe()
685 s5m8767->num_regulators = pdata->num_regulators; in s5m8767_pmic_probe()
688 s5m8767->buck_gpioindex = pdata->buck_default_idx; in s5m8767_pmic_probe()
689 s5m8767->buck2_gpiodvs = pdata->buck2_gpiodvs; in s5m8767_pmic_probe()
690 s5m8767->buck3_gpiodvs = pdata->buck3_gpiodvs; in s5m8767_pmic_probe()
691 s5m8767->buck4_gpiodvs = pdata->buck4_gpiodvs; in s5m8767_pmic_probe()
693 s5m8767->ramp_delay = pdata->buck_ramp_delay; in s5m8767_pmic_probe()
694 s5m8767->buck2_ramp = pdata->buck2_ramp_enable; in s5m8767_pmic_probe()
695 s5m8767->buck3_ramp = pdata->buck3_ramp_enable; in s5m8767_pmic_probe()
696 s5m8767->buck4_ramp = pdata->buck4_ramp_enable; in s5m8767_pmic_probe()
697 s5m8767->opmode = pdata->opmode; in s5m8767_pmic_probe()
700 pdata->buck2_init); in s5m8767_pmic_probe()
702 regmap_write(s5m8767->iodev->regmap_pmic, S5M8767_REG_BUCK2DVS2, in s5m8767_pmic_probe()
706 pdata->buck3_init); in s5m8767_pmic_probe()
708 regmap_write(s5m8767->iodev->regmap_pmic, S5M8767_REG_BUCK3DVS2, in s5m8767_pmic_probe()
712 pdata->buck4_init); in s5m8767_pmic_probe()
714 regmap_write(s5m8767->iodev->regmap_pmic, S5M8767_REG_BUCK4DVS2, in s5m8767_pmic_probe()
718 if (s5m8767->buck2_gpiodvs) { in s5m8767_pmic_probe()
719 s5m8767->buck2_vol[i] = in s5m8767_pmic_probe()
722 pdata->buck2_voltage[i]); in s5m8767_pmic_probe()
725 if (s5m8767->buck3_gpiodvs) { in s5m8767_pmic_probe()
726 s5m8767->buck3_vol[i] = in s5m8767_pmic_probe()
729 pdata->buck3_voltage[i]); in s5m8767_pmic_probe()
732 if (s5m8767->buck4_gpiodvs) { in s5m8767_pmic_probe()
733 s5m8767->buck4_vol[i] = in s5m8767_pmic_probe()
736 pdata->buck4_voltage[i]); in s5m8767_pmic_probe()
740 if (pdata->buck2_gpiodvs || pdata->buck3_gpiodvs || in s5m8767_pmic_probe()
741 pdata->buck4_gpiodvs) { in s5m8767_pmic_probe()
745 if (s5m8767->buck_gpioindex & BIT(2 - i)) in s5m8767_pmic_probe()
750 s5m8767->buck_gpios[i] = devm_gpiod_get_index(iodev->dev, in s5m8767_pmic_probe()
751 "s5m8767,pmic-buck-dvs", i, in s5m8767_pmic_probe()
753 if (IS_ERR(s5m8767->buck_gpios[i])) { in s5m8767_pmic_probe()
754 return dev_err_probe(iodev->dev, PTR_ERR(s5m8767->buck_gpios[i]), in s5m8767_pmic_probe()
755 "invalid gpio[%d]\n", i); in s5m8767_pmic_probe()
758 gpiod_set_consumer_name(s5m8767->buck_gpios[i], gpiodvs_names[i]); in s5m8767_pmic_probe()
763 s5m8767->buck_ds[i] = devm_gpiod_get_index(iodev->dev, in s5m8767_pmic_probe()
764 "s5m8767,pmic-buck-ds", i, in s5m8767_pmic_probe()
766 if (IS_ERR(s5m8767->buck_ds[i])) { in s5m8767_pmic_probe()
767 return dev_err_probe(iodev->dev, PTR_ERR(s5m8767->buck_ds[i]), in s5m8767_pmic_probe()
768 "can't get GPIO %d\n", i); in s5m8767_pmic_probe()
770 gpiod_set_consumer_name(s5m8767->buck_ds[i], gpiods_names[i]); in s5m8767_pmic_probe()
773 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
775 (pdata->buck2_gpiodvs) ? (1 << 1) : (0 << 1)); in s5m8767_pmic_probe()
776 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
778 (pdata->buck3_gpiodvs) ? (1 << 1) : (0 << 1)); in s5m8767_pmic_probe()
779 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
781 (pdata->buck4_gpiodvs) ? (1 << 1) : (0 << 1)); in s5m8767_pmic_probe()
783 /* Initialize GPIO DVS registers */ in s5m8767_pmic_probe()
785 if (s5m8767->buck2_gpiodvs) { in s5m8767_pmic_probe()
786 regmap_write(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
788 s5m8767->buck2_vol[i]); in s5m8767_pmic_probe()
791 if (s5m8767->buck3_gpiodvs) { in s5m8767_pmic_probe()
792 regmap_write(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
794 s5m8767->buck3_vol[i]); in s5m8767_pmic_probe()
797 if (s5m8767->buck4_gpiodvs) { in s5m8767_pmic_probe()
798 regmap_write(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
800 s5m8767->buck4_vol[i]); in s5m8767_pmic_probe()
804 if (s5m8767->buck2_ramp) in s5m8767_pmic_probe()
805 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
808 if (s5m8767->buck3_ramp) in s5m8767_pmic_probe()
809 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
812 if (s5m8767->buck4_ramp) in s5m8767_pmic_probe()
813 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
816 if (s5m8767->buck2_ramp || s5m8767->buck3_ramp in s5m8767_pmic_probe()
817 || s5m8767->buck4_ramp) { in s5m8767_pmic_probe()
819 switch (s5m8767->ramp_delay) { in s5m8767_pmic_probe()
838 regmap_update_bits(s5m8767->iodev->regmap_pmic, in s5m8767_pmic_probe()
844 for (i = 0; i < pdata->num_regulators; i++) { in s5m8767_pmic_probe()
846 unsigned int id = pdata->regulators[i].id; in s5m8767_pmic_probe()
857 (desc->max - desc->min) / desc->step + 1; in s5m8767_pmic_probe()
858 regulators[id].min_uV = desc->min; in s5m8767_pmic_probe()
859 regulators[id].uV_step = desc->step; in s5m8767_pmic_probe()
870 dev_err(s5m8767->dev, "error reading registers\n"); in s5m8767_pmic_probe()
878 config.dev = s5m8767->dev; in s5m8767_pmic_probe()
879 config.init_data = pdata->regulators[i].initdata; in s5m8767_pmic_probe()
881 config.regmap = iodev->regmap_pmic; in s5m8767_pmic_probe()
882 config.of_node = pdata->regulators[i].reg_node; in s5m8767_pmic_probe()
884 if (pdata->regulators[i].ext_control_gpiod) { in s5m8767_pmic_probe()
887 &pdata->regulators[i], &config); in s5m8767_pmic_probe()
890 * Hand the GPIO descriptor management over to the in s5m8767_pmic_probe()
893 devm_gpiod_unhinge(s5m8767->dev, config.ena_gpiod); in s5m8767_pmic_probe()
895 rdev = devm_regulator_register(&pdev->dev, &regulators[id], in s5m8767_pmic_probe()
899 dev_err(s5m8767->dev, "regulator init failed for %d\n", in s5m8767_pmic_probe()
904 if (pdata->regulators[i].ext_control_gpiod) { in s5m8767_pmic_probe()
907 dev_err(s5m8767->dev, in s5m8767_pmic_probe()
908 "failed to enable gpio control over %s: %d\n", in s5m8767_pmic_probe()
909 rdev->desc->name, ret); in s5m8767_pmic_probe()
919 { "s5m8767-pmic", 0},
926 .name = "s5m8767-pmic",