summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/olio/h1/h1.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/board/olio/h1/h1.c b/board/olio/h1/h1.c
index 3c039a65b..e69797638 100644
--- a/board/olio/h1/h1.c
+++ b/board/olio/h1/h1.c
@@ -109,7 +109,16 @@ static int tps65910_voltages_init(void)
struct vsel_map_t *p = tps65910_volt;
int i, ret;
- if (i2c_probe(TPS65910_CTRL_I2C_ADDR))
+ /*
+ * dummy i2c bus access is required to workaround tps65910 errata
+ * "Glitch on SDA-SCL not managed correctly by the I2C IP"
+ */
+ i = 2;
+ do
+ ret = i2c_probe(TPS65910_CTRL_I2C_ADDR);
+ while (ret && --i);
+
+ if (ret)
return -1;
/* Tell the TPS65910 to use i2c */