Exemple #1
0
Fichier : mmc.c Projet : UAVXP/A10
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;
}
Exemple #2
0
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;
}