Update sdhc support on efika to make use of the latest mmc fixes. Signed-off-by: Arnaud Patard Index: linux-2.6-submit/arch/arm/mach-mx5/board-mx51_efikamx.c =================================================================== --- linux-2.6-submit.orig/arch/arm/mach-mx5/board-mx51_efikamx.c 2011-06-20 20:37:40.000000000 +0200 +++ linux-2.6-submit/arch/arm/mach-mx5/board-mx51_efikamx.c 2011-06-21 01:13:10.000000000 +0200 @@ -163,6 +163,11 @@ static const struct gpio_led_platform_da .num_leds = ARRAY_SIZE(mx51_efikamx_leds), }; +static struct esdhc_platform_data sd_pdata = { + .cd_type = ESDHC_CD_CONTROLLER, + .wp_type = ESDHC_WP_CONTROLLER, +}; + static struct gpio_keys_button mx51_efikamx_powerkey[] = { { .code = KEY_POWER, @@ -239,9 +244,11 @@ static void __init mx51_efikamx_init(voi /* on < 1.2 boards both SD controllers are used */ if (system_rev < 0x12) { - imx51_add_sdhci_esdhc_imx(1, NULL); + imx51_add_sdhci_esdhc_imx(0, NULL); + imx51_add_sdhci_esdhc_imx(1, &sd_pdata); mx51_efikamx_leds[2].default_trigger = "mmc1"; - } + } else + imx51_add_sdhci_esdhc_imx(0, &sd_pdata); gpio_led_register_device(-1, &mx51_efikamx_leds_data); imx_add_gpio_keys(&mx51_efikamx_powerkey_data); Index: linux-2.6-submit/arch/arm/mach-mx5/board-mx51_efikasb.c =================================================================== --- linux-2.6-submit.orig/arch/arm/mach-mx5/board-mx51_efikasb.c 2011-06-20 20:43:49.000000000 +0200 +++ linux-2.6-submit/arch/arm/mach-mx5/board-mx51_efikasb.c 2011-06-21 00:04:03.000000000 +0200 @@ -147,6 +147,8 @@ static iomux_v3_cfg_t mx51efikasb_pads[] MX51_PAD_DISPB2_SER_DIO__GPIO3_6, /* ac in */ EFIKASB_AC_IN, + + _MX51_PAD_EIM_CS2__GPIO2_27 | MUX_PAD_CTRL(MX51_ESDHC_PAD_CTRL), }; static int initialize_usbh2_port(struct platform_device *pdev) @@ -233,6 +235,18 @@ static const struct gpio_keys_platform_d .nbuttons = ARRAY_SIZE(mx51_efikasb_keys), }; +static struct esdhc_platform_data sd0_pdata = { +#define EFIKASB_SD1_CD IMX_GPIO_NR(2, 27) + .cd_gpio = EFIKASB_SD1_CD, + .cd_type = ESDHC_CD_GPIO, + .wp_type = ESDHC_WP_CONTROLLER, +}; + +static struct esdhc_platform_data sd1_pdata = { + .cd_type = ESDHC_CD_CONTROLLER, + .wp_type = ESDHC_WP_CONTROLLER, +}; + static struct mtl017_pdata mx51_efikasb_mtl017 = { .disp_i2c_bus_id = 1, .lvds_reset_gpio = EFIKASB_LVDS_RESET, @@ -451,7 +465,8 @@ static void __init efikasb_board_init(vo mx51_efikasb_board_id(); mx51_efikasb_usb(); - imx51_add_sdhci_esdhc_imx(1, NULL); + imx51_add_sdhci_esdhc_imx(0, &sd0_pdata); + imx51_add_sdhci_esdhc_imx(1, &sd1_pdata); mx51_efikasb_display(); platform_device_register(&mx51_efikasb_rfkill_device); Index: linux-2.6-submit/arch/arm/mach-mx5/mx51_efika.c =================================================================== --- linux-2.6-submit.orig/arch/arm/mach-mx5/mx51_efika.c 2011-06-20 20:36:15.000000000 +0200 +++ linux-2.6-submit/arch/arm/mach-mx5/mx51_efika.c 2011-06-21 01:13:07.000000000 +0200 @@ -704,7 +704,6 @@ void __init efika_board_common_init(void mx51_efika_usb(); imx51_add_imx2_wdt(0, NULL); mx51_efika_i2c(); - imx51_add_sdhci_esdhc_imx(0, NULL); /* FIXME: comes from original code. check this. */ if (mx51_revision() < IMX_CHIP_REVISION_2_0)