summaryrefslogtreecommitdiff
path: root/board/freescale
diff options
context:
space:
mode:
authorWayne Zou <b36644@freescale.com>2011-08-11 18:24:59 +0800
committerWayne Zou <b36644@freescale.com>2011-08-12 09:23:48 +0800
commit2e0022e32ae5c99c3abc7646ed1663c28495ec89 (patch)
tree7273994108d65e3b3c4e2505134cb619d2e95b7b /board/freescale
parent2921bf50ea3e0eb3dfaac0895613feb14e52600c (diff)
downloadu-boot-imx-2e0022e32ae5c99c3abc7646ed1663c28495ec89.zip
u-boot-imx-2e0022e32ae5c99c3abc7646ed1663c28495ec89.tar.gz
u-boot-imx-2e0022e32ae5c99c3abc7646ed1663c28495ec89.tar.bz2
ENGR00154762 mx53_pcba: update Ripley/mc34708 USB/AUX charger settings
update Ripley USB and AUX/DC charger settings for pcba revB board Signed-off-by: Wayne Zou <b36644@freescale.com>
Diffstat (limited to 'board/freescale')
-rw-r--r--board/freescale/mx53_pcba/mx53_pcba.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/board/freescale/mx53_pcba/mx53_pcba.c b/board/freescale/mx53_pcba/mx53_pcba.c
index 011460a..78e45f7 100644
--- a/board/freescale/mx53_pcba/mx53_pcba.c
+++ b/board/freescale/mx53_pcba/mx53_pcba.c
@@ -330,19 +330,28 @@ void setup_pmic_voltages(void)
printf("%s:i2c_write:error\n", __func__);
}
+ /* Charger Source: set VBUS threshold low to 4.25V,
+ * set Weak VBUS threshold to 4.275V */
+ if (i2c_read(0x8, 53, 1, &buf[0], 3))
+ printf("%s:i2c_read 53:error\n", __func__);
+ buf[2] = (buf[2] & 0x38) | 0x47;
+ buf[1] = (buf[1] & 0x70) | 0x8e;
+ buf[0] = buf[0] & 0xfc;
+ if (i2c_write(0x8, 53, 1, buf, 3))
+ printf("%s:i2c_write 53:error\n", __func__);
+
/* set both AUX&USB current limit to 1.5A for Ripley 2.1 only */
if (i2c_read(0x8, 52, 1, &buf[0], 3))
printf("%s:i2c_read 52:error\n", __func__);
- buf[0] = (buf[1] & 0xef) | 0x1;
+ buf[0] = (buf[0] & 0xef) | 0x10;
if (i2c_write(0x8, 52, 1, buf, 3))
printf("%s:i2c_write 52:error\n", __func__);
- /* Change CC current to 950mA */
+ /* Change CC current to 1550mA */
/* Change CV voltage as 4.2v */
if (i2c_read(0x8, 51, 1, &buf[0], 3))
printf("%s:i2c_read 51:error\n", __func__);
-
- buf[1] = (buf[1] & 0x0) | 0x78;
+ buf[1] = (buf[1] & 0x0) | 0xd8;
buf[2] = (buf[2] & 0x3f) | 0xc0;
if (i2c_write(0x8, 51, 1, buf, 3))
printf("%s:i2c_write 51:error\n", __func__);