summaryrefslogtreecommitdiff
path: root/cpu/mpc8260/i2c.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpu/mpc8260/i2c.c')
-rw-r--r--cpu/mpc8260/i2c.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/cpu/mpc8260/i2c.c b/cpu/mpc8260/i2c.c
index 8bfa2e8..2d65e32 100644
--- a/cpu/mpc8260/i2c.c
+++ b/cpu/mpc8260/i2c.c
@@ -221,6 +221,13 @@ void i2c_init(int speed, int slaveadd)
volatile I2C_BD *rxbd, *txbd;
uint dpaddr;
+#ifdef CFG_I2C_INIT_BOARD
+ /* call board specific i2c bus reset routine before accessing the */
+ /* environment, which might be in a chip on that bus. For details */
+ /* about this problem see doc/I2C_Edge_Conditions. */
+ i2c_init_board();
+#endif
+
dpaddr = *((unsigned short*)(&immap->im_dprambase[PROFF_I2C_BASE]));
if (dpaddr == 0) {
/* need to allocate dual port ram */