Lines Matching refs:pmic

316 static const struct rk8xx_reg_info *get_buck_reg(struct udevice *pmic,  in get_buck_reg()  argument
319 struct rk8xx_priv *priv = dev_get_priv(pmic); in get_buck_reg()
382 static int _buck_set_value(struct udevice *pmic, int buck, int uvolt) in _buck_set_value() argument
384 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, uvolt); in _buck_set_value()
385 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_set_value()
401 pmic_clrsetbits(pmic, info->vsel_reg, mask, val); in _buck_set_value()
402 return pmic_clrsetbits(pmic, RK816_REG_DCDC_EN2, 1 << 7, 1 << 7); in _buck_set_value()
404 return pmic_clrsetbits(pmic, info->vsel_reg, mask, val); in _buck_set_value()
408 static int _buck_set_enable(struct udevice *pmic, int buck, bool enable) in _buck_set_enable() argument
412 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_set_enable()
422 ret = pmic_reg_write(pmic, en_reg, value); in _buck_set_enable()
436 ret = pmic_reg_write(pmic, en_reg, value); in _buck_set_enable()
443 ret = pmic_clrsetbits(pmic, REG_DCDC_ILMAX, in _buck_set_enable()
448 ret = pmic_clrsetbits(pmic, REG_DCDC_EN, mask, in _buck_set_enable()
458 ret = pmic_reg_write(pmic, RK817_POWER_EN(0), value); in _buck_set_enable()
465 ret = pmic_reg_write(pmic, RK817_POWER_EN(3), value); in _buck_set_enable()
476 static int _buck_set_suspend_value(struct udevice *pmic, int buck, int uvolt) in _buck_set_suspend_value() argument
478 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, uvolt); in _buck_set_suspend_value()
493 return pmic_clrsetbits(pmic, info->vsel_sleep_reg, mask, val); in _buck_set_suspend_value()
496 static int _buck_get_enable(struct udevice *pmic, int buck) in _buck_get_enable() argument
498 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_get_enable()
505 ret = pmic_reg_read(pmic, RK806_POWER_EN(buck / 4)); in _buck_get_enable()
511 ret = pmic_reg_read(pmic, RK816_REG_DCDC_EN2); in _buck_get_enable()
514 ret = pmic_reg_read(pmic, RK816_REG_DCDC_EN1); in _buck_get_enable()
520 ret = pmic_reg_read(pmic, REG_DCDC_EN); in _buck_get_enable()
528 ret = pmic_reg_read(pmic, RK817_POWER_EN(0)); in _buck_get_enable()
532 ret = pmic_reg_read(pmic, RK817_POWER_EN(3)); in _buck_get_enable()
543 static int _buck_set_ramp_delay(struct udevice *pmic, int buck, u32 ramp_delay) in _buck_set_ramp_delay() argument
545 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, 0); in _buck_set_ramp_delay()
546 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_set_ramp_delay()
613 reg_value = pmic_reg_read(pmic, ramp_reg1); in _buck_set_ramp_delay()
620 pmic_reg_write(pmic, in _buck_set_ramp_delay()
624 reg_value = pmic_reg_read(pmic, ramp_reg2); in _buck_set_ramp_delay()
630 return pmic_reg_write(pmic, in _buck_set_ramp_delay()
682 return pmic_clrsetbits(pmic, info->config_reg, ramp_mask, ramp_value); in _buck_set_ramp_delay()
685 static int _buck_set_suspend_enable(struct udevice *pmic, int buck, bool enable) in _buck_set_suspend_enable() argument
689 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_set_suspend_enable()
695 ret = pmic_clrsetbits(pmic, RK816_REG_DCDC_SLP_EN, mask, in _buck_set_suspend_enable()
701 ret = pmic_clrsetbits(pmic, RK806_BUCK_SUSPEND_EN, mask, in _buck_set_suspend_enable()
708 ret = pmic_clrsetbits(pmic, RK806_NLDO_SUSPEND_EN, mask, in _buck_set_suspend_enable()
715 ret = pmic_clrsetbits(pmic, REG_SLEEP_SET_OFF1, mask, in _buck_set_suspend_enable()
724 ret = pmic_clrsetbits(pmic, RK817_POWER_SLP_EN(0), mask, in _buck_set_suspend_enable()
734 static int _buck_get_suspend_enable(struct udevice *pmic, int buck) in _buck_get_suspend_enable() argument
736 struct rk8xx_priv *priv = dev_get_priv(pmic); in _buck_get_suspend_enable()
744 val = pmic_reg_read(pmic, RK816_REG_DCDC_SLP_EN); in _buck_get_suspend_enable()
752 val = pmic_reg_read(pmic, RK806_BUCK_SUSPEND_EN); in _buck_get_suspend_enable()
755 val = pmic_reg_read(pmic, RK806_NLDO_SUSPEND_EN); in _buck_get_suspend_enable()
765 val = pmic_reg_read(pmic, REG_SLEEP_SET_OFF1); in _buck_get_suspend_enable()
777 val = pmic_reg_read(pmic, RK817_POWER_SLP_EN(0)); in _buck_get_suspend_enable()
789 static const struct rk8xx_reg_info *get_ldo_reg(struct udevice *pmic, in get_ldo_reg() argument
792 struct rk8xx_priv *priv = dev_get_priv(pmic); in get_ldo_reg()
816 static int _ldo_get_enable(struct udevice *pmic, int ldo) in _ldo_get_enable() argument
818 struct rk8xx_priv *priv = dev_get_priv(pmic); in _ldo_get_enable()
827 ret = pmic_reg_read(pmic, RK816_REG_LDO_EN2); in _ldo_get_enable()
830 ret = pmic_reg_read(pmic, RK816_REG_LDO_EN1); in _ldo_get_enable()
836 ret = pmic_reg_read(pmic, RK806_NLDO_EN(ldo / 4)); in _ldo_get_enable()
839 ret = pmic_reg_read(pmic, RK806_NLDO_EN(2)); in _ldo_get_enable()
845 ret = pmic_reg_read(pmic, REG_LDO_EN); in _ldo_get_enable()
853 ret = pmic_reg_read(pmic, RK817_POWER_EN(1)); in _ldo_get_enable()
856 ret = pmic_reg_read(pmic, RK817_POWER_EN(2)); in _ldo_get_enable()
859 ret = pmic_reg_read(pmic, RK817_POWER_EN(3)); in _ldo_get_enable()
872 static int _ldo_set_enable(struct udevice *pmic, int ldo, bool enable) in _ldo_set_enable() argument
874 struct rk8xx_priv *priv = dev_get_priv(pmic); in _ldo_set_enable()
892 ret = pmic_reg_write(pmic, en_reg, value); in _ldo_set_enable()
901 ret = pmic_reg_write(pmic, en_reg, value); in _ldo_set_enable()
908 ret = pmic_reg_write(pmic, en_reg, value); in _ldo_set_enable()
914 ret = pmic_clrsetbits(pmic, REG_LDO_EN, mask, in _ldo_set_enable()
934 ret = pmic_reg_write(pmic, en_reg, value); in _ldo_set_enable()
944 static int _ldo_set_suspend_enable(struct udevice *pmic, int ldo, bool enable) in _ldo_set_suspend_enable() argument
946 struct rk8xx_priv *priv = dev_get_priv(pmic); in _ldo_set_suspend_enable()
954 ret = pmic_clrsetbits(pmic, RK816_REG_LDO_SLP_EN, mask, in _ldo_set_suspend_enable()
959 ret = pmic_clrsetbits(pmic, RK806_NLDO_SUSPEND_EN, mask, in _ldo_set_suspend_enable()
965 ret = pmic_clrsetbits(pmic, REG_SLEEP_SET_OFF2, mask, in _ldo_set_suspend_enable()
972 ret = pmic_clrsetbits(pmic, RK817_POWER_SLP_EN(0), mask, in _ldo_set_suspend_enable()
976 ret = pmic_clrsetbits(pmic, RK817_POWER_SLP_EN(1), mask, in _ldo_set_suspend_enable()
985 static int _ldo_get_suspend_enable(struct udevice *pmic, int ldo) in _ldo_get_suspend_enable() argument
987 struct rk8xx_priv *priv = dev_get_priv(pmic); in _ldo_get_suspend_enable()
995 val = pmic_reg_read(pmic, RK816_REG_LDO_SLP_EN); in _ldo_get_suspend_enable()
1002 val = pmic_reg_read(pmic, RK806_NLDO_SUSPEND_EN); in _ldo_get_suspend_enable()
1011 val = pmic_reg_read(pmic, REG_SLEEP_SET_OFF2); in _ldo_get_suspend_enable()
1020 val = pmic_reg_read(pmic, RK817_POWER_SLP_EN(0)); in _ldo_get_suspend_enable()
1026 val = pmic_reg_read(pmic, RK817_POWER_SLP_EN(1)); in _ldo_get_suspend_enable()
1474 static const struct rk8xx_reg_info *get_pldo_reg(struct udevice *pmic, in get_pldo_reg() argument
1477 struct rk8xx_priv *priv = dev_get_priv(pmic); in get_pldo_reg()
1490 static int _pldo_get_enable(struct udevice *pmic, int pldo) in _pldo_get_enable() argument
1492 struct rk8xx_priv *priv = dev_get_priv(pmic); in _pldo_get_enable()
1503 ret = pmic_reg_read(pmic, en_reg); in _pldo_get_enable()
1510 ret = pmic_reg_read(pmic, en_reg); in _pldo_get_enable()
1524 static int _pldo_set_enable(struct udevice *pmic, int pldo, bool enable) in _pldo_set_enable() argument
1526 struct rk8xx_priv *priv = dev_get_priv(pmic); in _pldo_set_enable()
1538 ret = pmic_reg_write(pmic, en_reg, value); in _pldo_set_enable()
1545 ret = pmic_reg_write(pmic, en_reg, value); in _pldo_set_enable()
1552 ret = pmic_reg_write(pmic, en_reg, value); in _pldo_set_enable()
1559 ret = pmic_reg_write(pmic, en_reg, value); in _pldo_set_enable()
1660 static int _pldo_set_suspend_enable(struct udevice *pmic, int ldo, bool enable) in _pldo_set_suspend_enable() argument
1669 ret = pmic_clrsetbits(pmic, RK806_PLDO_SUSPEND_EN, mask, in _pldo_set_suspend_enable()
1675 static int _pldo_get_suspend_enable(struct udevice *pmic, int ldo) in _pldo_get_suspend_enable() argument
1684 val = pmic_reg_read(pmic, RK806_PLDO_SUSPEND_EN); in _pldo_get_suspend_enable()
1706 static const struct rk8xx_reg_info *get_boost_reg(struct udevice *pmic, in get_boost_reg() argument
1710 struct rk8xx_priv *priv = dev_get_priv(pmic); in get_boost_reg()
2052 int rk8xx_spl_configure_buck(struct udevice *pmic, int buck, int uvolt) in rk8xx_spl_configure_buck() argument
2056 ret = _buck_set_value(pmic, buck, uvolt); in rk8xx_spl_configure_buck()
2060 return _buck_set_enable(pmic, buck, true); in rk8xx_spl_configure_buck()
2063 int rk818_spl_configure_usb_input_current(struct udevice *pmic, int current_ma) in rk818_spl_configure_usb_input_current() argument
2071 return pmic_clrsetbits(pmic, REG_USB_CTRL, RK818_USB_ILIM_SEL_MASK, i); in rk818_spl_configure_usb_input_current()
2074 int rk818_spl_configure_usb_chrg_shutdown(struct udevice *pmic, int uvolt) in rk818_spl_configure_usb_chrg_shutdown() argument
2082 return pmic_clrsetbits(pmic, REG_USB_CTRL, RK818_USB_CHG_SD_VSEL_MASK, in rk818_spl_configure_usb_chrg_shutdown()