armv8/ls1043aqds: Return i2c mux to default chennel
authorWenbin Song <wenbin.song@nxp.com>
Wed, 9 Mar 2016 05:38:24 +0000 (13:38 +0800)
committerYork Sun <york.sun@nxp.com>
Mon, 21 Mar 2016 19:42:15 +0000 (12:42 -0700)
Return i2c mux to the default channel after accessing retimer.

Signed-off-by: Wenbin Song <wenbin.song@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
board/freescale/ls1043aqds/ls1043aqds.c

index a72fe52ea01b741abd2ae6e3280e6355756c9919..fba6b8895155059737f1019815ee92a1b9642188 100644 (file)
@@ -170,8 +170,7 @@ void board_retimer_init(void)
        u8 reg;
 
        /* Retimer is connected to I2C1_CH7_CH5 */
-       reg = I2C_MUX_CH7;
-       i2c_write(I2C_MUX_PCA_ADDR_PRI, 0, 1, &reg, 1);
+       select_i2c_ch_pca9547(I2C_MUX_CH7);
        reg = I2C_MUX_CH5;
        i2c_write(I2C_MUX_PCA_ADDR_SEC, 0, 1, &reg, 1);
 
@@ -219,6 +218,9 @@ void board_retimer_init(void)
        i2c_write(I2C_RETIMER_ADDR, 0x63, 1, &reg, 1);
        reg = 0xcd;
        i2c_write(I2C_RETIMER_ADDR, 0x64, 1, &reg, 1);
+
+       /* Return the default channel */
+       select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT);
 }
 
 int board_early_init_f(void)