
Enable support for FAN controller EMC2305 for LX2160A RDB board.
Signed-off-by: Sriram Dash sriram.dash@nxp.com Signed-off-by: Meenakshi Aggarwal meenakshi.aggarwal@nxp.com --- board/freescale/lx2160a/lx2160a.c | 11 +++++++++++ include/configs/lx2160ardb.h | 6 ++++++ 2 files changed, 17 insertions(+)
diff --git a/board/freescale/lx2160a/lx2160a.c b/board/freescale/lx2160a/lx2160a.c index 530f658..07ca58e 100644 --- a/board/freescale/lx2160a/lx2160a.c +++ b/board/freescale/lx2160a/lx2160a.c @@ -26,6 +26,10 @@ #include "../common/vid.h" #include <fsl_immap.h>
+#ifdef CONFIG_EMC2305 +#include "../common/emc2305.h" +#endif + #ifdef CONFIG_TARGET_LX2160AQDS #define CFG_MUX_I2C_SDHC(reg, value) ((reg & 0x3f) | value) #define SET_CFG_MUX1_SDHC1_SDHC(reg) (reg & 0x3f) @@ -93,6 +97,13 @@ int board_early_init_f(void) /* get required clock for UART IP */ uart_get_clock();
+#ifdef CONFIG_EMC2305 + select_i2c_ch_pca9547(I2C_MUX_CH_EMC2305); + emc2305_init(); + set_fan_speed(I2C_EMC2305_PWM); + select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT); +#endif + fsl_lsch3_early_init_f(); return 0; } diff --git a/include/configs/lx2160ardb.h b/include/configs/lx2160ardb.h index 67d214d..818aa38 100644 --- a/include/configs/lx2160ardb.h +++ b/include/configs/lx2160ardb.h @@ -70,6 +70,12 @@
#endif
+/* EMC2305 */ +#define I2C_MUX_CH_EMC2305 0x09 +#define I2C_EMC2305_ADDR 0x4D +#define I2C_EMC2305_CMD 0x40 +#define I2C_EMC2305_PWM 0x80 + /* EEPROM */ #define CONFIG_ID_EEPROM #define CONFIG_SYS_I2C_EEPROM_NXID