aboutsummaryrefslogtreecommitdiff
path: root/board/gateworks/gw_ventana/common.c
diff options
context:
space:
mode:
authorTim Harvey <tharvey@gateworks.com>2021-06-11 12:46:22 -0700
committerStefano Babic <sbabic@denx.de>2021-07-10 16:53:33 +0200
commita32be88da0b2908f464ba6263ef82630b851df59 (patch)
treed9197579c44435e58ebc18461d58f7b9004ea941 /board/gateworks/gw_ventana/common.c
parent6a4c67859cbea8be251720fe8d99729f63b1ff13 (diff)
downloadu-boot-a32be88da0b2908f464ba6263ef82630b851df59.zip
u-boot-a32be88da0b2908f464ba6263ef82630b851df59.tar.gz
u-boot-a32be88da0b2908f464ba6263ef82630b851df59.tar.bz2
imx: ventana: add PMIC fix for GW54xx-G
Substitutions in EOL parts changes the VDD_2P5 voltage rail such that the previously unused VGEN6 LDO is needed in place of the lower power VGEN5 for the GW54xx-G. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Diffstat (limited to 'board/gateworks/gw_ventana/common.c')
-rw-r--r--board/gateworks/gw_ventana/common.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/board/gateworks/gw_ventana/common.c b/board/gateworks/gw_ventana/common.c
index 4627a15..9f5f20f 100644
--- a/board/gateworks/gw_ventana/common.c
+++ b/board/gateworks/gw_ventana/common.c
@@ -1550,6 +1550,17 @@ void setup_pmic(void)
int board = read_eeprom(CONFIG_I2C_GSC, &ventana_info);
const int i2c_pmic = 1;
u32 reg;
+ char rev;
+ int i;
+
+ /* determine board revision */
+ rev = 'A';
+ for (i = sizeof(ventana_info.model) - 1; i > 0; i--) {
+ if (ventana_info.model[i] >= 'A') {
+ rev = ventana_info.model[i];
+ break;
+ }
+ }
i2c_set_bus_num(i2c_pmic);
@@ -1573,6 +1584,17 @@ void setup_pmic(void)
reg &= ~(SWBST_MODE_MASK | SWBST_VOL_MASK);
reg |= (SWBST_5_00V | (SWBST_MODE_AUTO << SWBST_MODE_SHIFT));
pmic_reg_write(p, PFUZE100_SWBSTCON1, reg);
+
+ if (board == GW54xx && (rev == 'G')) {
+ /* Disable VGEN5 */
+ pmic_reg_write(p, PFUZE100_VGEN5VOL, 0);
+
+ /* Set VGEN6 to 2.5V and enable */
+ pmic_reg_read(p, PFUZE100_VGEN6VOL, &reg);
+ reg &= ~(LDO_VOL_MASK);
+ reg |= (LDOB_2_50V | LDO_EN);
+ pmic_reg_write(p, PFUZE100_VGEN6VOL, reg);
+ }
}
}