Lines Matching full:buck

21 /* rk806 buck*/
49 #define RK806_RAMP_RATE_4LSB_PER_1CLK 0x00/* LDO 100mV/uS buck 50mV/us */
50 #define RK806_RAMP_RATE_2LSB_PER_1CLK 0x01/* LDO 50mV/uS buck 25mV/us */
51 #define RK806_RAMP_RATE_1LSB_PER_1CLK 0x02/* LDO 25mV/uS buck 12.5mV/us */
52 #define RK806_RAMP_RATE_1LSB_PER_2CLK 0x03/* LDO 12.5mV/uS buck 6.25mV/us */
54 #define RK806_RAMP_RATE_1LSB_PER_4CLK 0x04/* LDO 6.28/2mV/uS buck 3.125mV/us */
55 #define RK806_RAMP_RATE_1LSB_PER_8CLK 0x05/* LDO 3.12mV/uS buck 1.56mV/us */
56 #define RK806_RAMP_RATE_1LSB_PER_13CLK 0x06/* LDO 1.9mV/uS buck 961mV/us */
57 #define RK806_RAMP_RATE_1LSB_PER_32CLK 0x07/* LDO 0.78mV/uS buck 0.39mV/us */
71 /* only for buck now */
77 /* buck 1 */
81 /* buck 2 */
85 /* buck 3 */
89 /* buck 4 */
93 /* buck 5 */
97 /* buck 6 */
101 /* buck 7 */
105 /* buck 8 */
109 /* buck 9 */
113 /* buck 10 */
180 static int _buck_set_value(struct udevice *pmic, int buck, int uvolt) in _buck_set_value() argument
182 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, uvolt); in _buck_set_value()
194 debug("%s: volt=%d, buck=%d, reg=0x%x, mask=0x%x, val=0x%x\n", in _buck_set_value()
195 __func__, uvolt, buck + 1, info->vsel_reg, mask, val); in _buck_set_value()
200 static int _buck_set_enable(struct udevice *pmic, int buck, bool enable) in _buck_set_enable() argument
208 en_reg = RK806_POWER_EN(buck / 4); in _buck_set_enable()
210 value = ((1 << buck % 4) | (1 << (buck % 4 + 4))); in _buck_set_enable()
212 value = ((0 << buck % 4) | (1 << (buck % 4 + 4))); in _buck_set_enable()
224 static int _buck_set_suspend_value(struct udevice *pmic, int buck, int uvolt) in _buck_set_suspend_value() argument
226 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, uvolt); in _buck_set_suspend_value()
238 debug("%s: volt=%d, buck=%d, reg=0x%x, mask=0x%x, val=0x%x\n", in _buck_set_suspend_value()
239 __func__, uvolt, buck + 1, info->vsel_sleep_reg, mask, val); in _buck_set_suspend_value()
244 static int _buck_get_enable(struct udevice *pmic, int buck) in _buck_get_enable() argument
252 mask = 1 << buck % 4; in _buck_get_enable()
253 ret = pmic_reg_read(pmic, RK806_POWER_EN(buck / 4)); in _buck_get_enable()
265 static int _buck_set_ramp_delay(struct udevice *pmic, int buck, u32 ramp_delay) in _buck_set_ramp_delay() argument
267 const struct rk8xx_reg_info *info = get_buck_reg(pmic, buck, 0); in _buck_set_ramp_delay()
304 printf("buck%d ramp_delay: %d not supported\n", in _buck_set_ramp_delay()
305 buck, ramp_delay); in _buck_set_ramp_delay()
314 ramp_reg1 = RK806_RAMP_RATE_REG1(buck); in _buck_set_ramp_delay()
315 if (buck < 8) in _buck_set_ramp_delay()
322 printf("buck%d read ramp reg(0x%x) error: %d", buck, ramp_reg1, reg_value); in _buck_set_ramp_delay()
333 printf("buck%d read ramp reg(0x%x) error: %d", buck, ramp_reg2, reg_value); in _buck_set_ramp_delay()
339 reg_value | (ramp_value & 0x04) << (buck % 8)); in _buck_set_ramp_delay()
342 static int _buck_set_suspend_enable(struct udevice *pmic, int buck, bool enable) in _buck_set_suspend_enable() argument
347 if (buck <= 7) { in _buck_set_suspend_enable()
348 mask = 1 << buck; in _buck_set_suspend_enable()
352 if (buck == 8) in _buck_set_suspend_enable()
363 static int _buck_get_suspend_enable(struct udevice *pmic, int buck) in _buck_get_suspend_enable() argument
368 if (buck <= 7) { in _buck_get_suspend_enable()
369 mask = 1 << buck % 7; in _buck_get_suspend_enable()
372 mask = 1 << ((buck - 7) + 6); in _buck_get_suspend_enable()
581 int buck = dev->driver_data - 1; in buck_get_value() local
582 const struct rk8xx_reg_info *info = get_buck_reg(dev->parent, buck, 0); in buck_get_value()
610 int buck = dev->driver_data - 1; in buck_set_value() local
612 return _buck_set_value(dev->parent, buck, uvolt); in buck_set_value()
617 int buck = dev->driver_data - 1; in buck_get_suspend_value() local
618 const struct rk8xx_reg_info *info = get_buck_reg(dev->parent, buck, 0); in buck_get_suspend_value()
646 int buck = dev->driver_data - 1; in buck_set_suspend_value() local
648 return _buck_set_suspend_value(dev->parent, buck, uvolt); in buck_set_suspend_value()
653 int buck = dev->driver_data - 1; in buck_set_enable() local
655 return _buck_set_enable(dev->parent, buck, enable); in buck_set_enable()
660 int buck = dev->driver_data - 1; in buck_set_suspend_enable() local
662 return _buck_set_suspend_enable(dev->parent, buck, enable); in buck_set_suspend_enable()
667 int buck = dev->driver_data - 1; in buck_get_suspend_enable() local
669 return _buck_get_suspend_enable(dev->parent, buck); in buck_get_suspend_enable()
674 int buck = dev->driver_data - 1; in buck_set_ramp_delay() local
676 return _buck_set_ramp_delay(dev->parent, buck, ramp_delay); in buck_set_ramp_delay()
681 int buck = dev->driver_data - 1; in buck_get_enable() local
683 return _buck_get_enable(dev->parent, buck); in buck_get_enable()