Browse Source

board: ti: am43: Fix DCDC3 voltage for epos-evm

A common voltage of 1.35V was being programmed for all am43 board
versions. EPOS-EVM Needs 1.20V for LPDDR2.

Fixes: fc69d472621b5 (“board: ti: AM43XX: Add ddr voltage rail configuration”)
Reported-by: James Doublesin <doublesin@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Keerthy 6 years ago
parent
commit
ebf48500df
2 changed files with 8 additions and 3 deletions
  1. 7 3
      board/ti/am43xx/board.c
  2. 1 0
      include/power/tps65218.h

+ 7 - 3
board/ti/am43xx/board.c

@@ -385,7 +385,7 @@ const struct dpll_params *get_dpll_per_params(void)
 
 void scale_vcores_generic(u32 m)
 {
-	int mpu_vdd;
+	int mpu_vdd, ddr_volt;
 
 	if (i2c_probe(TPS65218_CHIP_PM))
 		return;
@@ -424,9 +424,13 @@ void scale_vcores_generic(u32 m)
 		return;
 	}
 
+	if (board_is_eposevm())
+		ddr_volt = TPS65218_DCDC3_VOLT_SEL_1200MV;
+	else
+		ddr_volt = TPS65218_DCDC3_VOLT_SEL_1350MV;
+
 	/* Set DCDC3 (DDR) voltage */
-	if (tps65218_voltage_update(TPS65218_DCDC3,
-	    TPS65218_DCDC3_VOLT_SEL_1350MV)) {
+	if (tps65218_voltage_update(TPS65218_DCDC3, ddr_volt)) {
 		printf("%s failure\n", __func__);
 		return;
 	}

+ 1 - 0
include/power/tps65218.h

@@ -64,6 +64,7 @@ enum {
 #define TPS65218_DCDC_VOLT_SEL_1260MV		0x29
 #define TPS65218_DCDC_VOLT_SEL_1330MV		0x30
 #define TPS65218_DCDC3_VOLT_SEL_1350MV		0x12
+#define TPS65218_DCDC3_VOLT_SEL_1200MV		0xC
 
 #define TPS65218_CC_STAT	(BIT(0) | BIT(1))
 #define TPS65218_STATE		(BIT(2) | BIT(3))