unsigned char mmc_board_init(mmc_controller_data *mmc_cont_cur) { unsigned char ret = 1; unsigned int value = 0; unsigned char data = 0; unsigned char tmp = 0; #if CONFIG_DRIVER_OMAP34XX_I2C /* don't compile for x-loader */ twl4030_mmc_config(mmc_cont_cur->slot); #endif if (mmc_cont_cur->slot == 0) { value = CONTROL_PBIAS_LITE; CONTROL_PBIAS_LITE = value | (1 << 2) | (1 << 1) | (1 << 9); value = CONTROL_DEV_CONF0; CONTROL_DEV_CONF0 = value | (1 << 24); } else if (mmc_cont_cur->slot == 1) { value = CONTROL_DEV_CONF1; CONTROL_DEV_CONF1 = value | (1 << 6); value = (*(volatile unsigned int *)CM_FCLKEN1_CORE); (*(volatile unsigned int *)CM_FCLKEN1_CORE) = value | (1 << 25); value = (*(volatile unsigned int *)CM_ICLKEN1_CORE); (*(volatile unsigned int *)CM_ICLKEN1_CORE) = value | (1 << 25); } return ret; }
unsigned char mmc_board_init(void) { unsigned int value = 0; twl4030_mmc_config(); value = CONTROL_PBIAS_LITE; CONTROL_PBIAS_LITE = value | (1 << 2) | (1 << 1) | (1 << 9); value = CONTROL_DEV_CONF0; CONTROL_DEV_CONF0 = value | (1 << 24); return 1; }