sunxi: axp209: fix incorrect limits on ldo3
PATCH 1/1 sunxi: axp209: fix incorrect limits on ldo3
board/sunxi/board.c tries to set ldo3 to 2.8v however drivers/power/axp209.c contains an incorrect limit on ldo3 of 2.275v
The origin of the incorrect limit seems likely due to some inconsistencies in the axp209 datasheet. ldo3 is described with different limits in different sections. register 0x29 uses 7 bits for voltage configuration while the 2.275v limit would apply if only 6 bits were used. Probably this is a cut&paste error from register 0x23
The linux kernel driver has the correct limit and operation up to the 2.8v required by my board has been physically verified with a multimeter.
--- drivers/power/axp209.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/power/axp209.c +1 -1
@@ -119,7 +119,7 @@ int axp209_set_ldo3(int mvolt)if (mvolt ==-1 ) cfg =0x80 ;/* determined by LDO3IN pin */ else - cfg =axp209_mvolt_to_cfg (mvolt,700 ,2275 ,25 ); + cfg =axp209_mvolt_to_cfg (mvolt,700 ,3500 ,25 );return axp209_write (AXP209_LDO3_VOLTAGE , cfg); }
Signature · 1 line
2.1.3
PATCH 1/1 sunxi: axp209: fix incorrect limits on ldo3
Hi,
Quoted 9 lines · Iain Paton
board/sunxi/board.ctries to set ldo3 to 2.8v howeverdrivers/power/axp209.ccontains an incorrect limit on ldo3 of 2.275vThe origin of the incorrect limit seems likely due to some inconsistencies in the axp209 datasheet. ldo3 is described with different limits in different sections. register
0x29uses 7 bits for voltage configuration while the 2.275v limit would apply if only 6 bits were used. Probably this is a cut&paste error from register0x23
Quoted 4 lines
The linux kernel driver has the correct limit and operation up to the 2.8v required by my board has been physically verified with a multimeter.
Signed-off-by Iain Paton <[email protected]>
Thanks, I've merged this into u-boot-sunxi/master and added this in a small fixed pull-req which I've just send.
Regards,
Hans
Quoted 18 lines
--- drivers/power/axp209.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/power/axp209.c +1
-1@@ -119,7 +119,7 @@ int axp209_set_ldo3(int mvolt)if (mvolt ==-1 ) cfg =0x80 ;/* determined by LDO3IN pin */ else - cfg =axp209_mvolt_to_cfg (mvolt,700 ,2275 ,25 ); + cfg =axp209_mvolt_to_cfg (mvolt,700 ,3500 ,25 );return axp209_write (AXP209_LDO3_VOLTAGE , cfg); }