]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
cpuimx51: update board support
authorEric Bénard <eric@eukrea.com>
Tue, 12 Oct 2010 14:29:20 +0000 (16:29 +0200)
committerSascha Hauer <s.hauer@pengutronix.de>
Tue, 19 Oct 2010 16:45:01 +0000 (18:45 +0200)
add NAND, SDHC

Signed-off-by: Eric Bénard <eric@eukrea.com>
arch/arm/mach-mx5/Kconfig
arch/arm/mach-mx5/board-cpuimx51.c
arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c

index 254b89199dfa2331f68e804bae843328a6ae757f..a2df9ac379964944ca12cd8e81d750d6f2073ddd 100644 (file)
@@ -31,6 +31,8 @@ config MACH_EUKREA_CPUIMX51
        bool "Support Eukrea CPUIMX51 module"
        select IMX_HAVE_PLATFORM_IMX_I2C
        select IMX_HAVE_PLATFORM_IMX_UART
        bool "Support Eukrea CPUIMX51 module"
        select IMX_HAVE_PLATFORM_IMX_I2C
        select IMX_HAVE_PLATFORM_IMX_UART
+       select IMX_HAVE_PLATFORM_MXC_NAND
+       select IMX_HAVE_PLATFORM_SPI_IMX
        help
          Include support for Eukrea CPUIMX51 platform. This includes
          specific configurations for the module and its peripherals.
        help
          Include support for Eukrea CPUIMX51 platform. This includes
          specific configurations for the module and its peripherals.
@@ -43,6 +45,7 @@ choice
 config MACH_EUKREA_MBIMX51_BASEBOARD
        prompt "Eukrea MBIMX51 development board"
        bool
 config MACH_EUKREA_MBIMX51_BASEBOARD
        prompt "Eukrea MBIMX51 development board"
        bool
+       select IMX_HAVE_PLATFORM_ESDHC
        help
          This adds board specific devices that can be found on Eukrea's
          MBIMX51 evaluation board.
        help
          This adds board specific devices that can be found on Eukrea's
          MBIMX51 evaluation board.
index 61f051043bbc3d3b3443188e4be4755c2885f7d4..378f5327ae77e8ba966136ad81551c3d7a20d990 100644 (file)
@@ -146,6 +146,13 @@ static struct pad_desc eukrea_cpuimx51_pads[] = {
        MX51_PAD_USBH1_STP__USBH1_STP,
 };
 
        MX51_PAD_USBH1_STP__USBH1_STP,
 };
 
+static const struct mxc_nand_platform_data
+               eukrea_cpuimx51_nand_board_info __initconst = {
+       .width          = 1,
+       .hw_ecc         = 1,
+       .flash_bbt      = 1,
+};
+
 static const struct imxuart_platform_data uart_pdata __initconst = {
        .flags = IMXUART_HAVE_RTSCTS,
 };
 static const struct imxuart_platform_data uart_pdata __initconst = {
        .flags = IMXUART_HAVE_RTSCTS,
 };
@@ -239,6 +246,8 @@ static void __init eukrea_cpuimx51_init(void)
                                        ARRAY_SIZE(eukrea_cpuimx51_pads));
 
        imx51_add_imx_uart(0, &uart_pdata);
                                        ARRAY_SIZE(eukrea_cpuimx51_pads));
 
        imx51_add_imx_uart(0, &uart_pdata);
+       imx51_add_mxc_nand(&eukrea_cpuimx51_nand_board_info);
+
        gpio_request(CPUIMX51_QUARTA_GPIO, "quarta_irq");
        gpio_direction_input(CPUIMX51_QUARTA_GPIO);
        gpio_free(CPUIMX51_QUARTA_GPIO);
        gpio_request(CPUIMX51_QUARTA_GPIO, "quarta_irq");
        gpio_direction_input(CPUIMX51_QUARTA_GPIO);
        gpio_free(CPUIMX51_QUARTA_GPIO);
index d0e417ce2c08cb21318bf9e19115378ec4c875ae..a2e6e8c39d257da751549f67f110979c29fdde29 100644 (file)
@@ -113,6 +113,22 @@ static struct pad_desc mbimx51_pads[] = {
        MX51_PAD_KEY_COL1__KEY_COL1,
        MX51_PAD_KEY_COL2__KEY_COL2,
        MX51_PAD_KEY_COL3__KEY_COL3,
        MX51_PAD_KEY_COL1__KEY_COL1,
        MX51_PAD_KEY_COL2__KEY_COL2,
        MX51_PAD_KEY_COL3__KEY_COL3,
+
+       /* SD 1 */
+       MX51_PAD_SD1_CMD__SD1_CMD,
+       MX51_PAD_SD1_CLK__SD1_CLK,
+       MX51_PAD_SD1_DATA0__SD1_DATA0,
+       MX51_PAD_SD1_DATA1__SD1_DATA1,
+       MX51_PAD_SD1_DATA2__SD1_DATA2,
+       MX51_PAD_SD1_DATA3__SD1_DATA3,
+
+       /* SD 2 */
+       MX51_PAD_SD2_CMD__SD2_CMD,
+       MX51_PAD_SD2_CLK__SD2_CLK,
+       MX51_PAD_SD2_DATA0__SD2_DATA0,
+       MX51_PAD_SD2_DATA1__SD2_DATA1,
+       MX51_PAD_SD2_DATA2__SD2_DATA2,
+       MX51_PAD_SD2_DATA3__SD2_DATA3,
 };
 
 static const struct imxuart_platform_data uart_pdata __initconst = {
 };
 
 static const struct imxuart_platform_data uart_pdata __initconst = {
@@ -159,9 +175,11 @@ struct tsc2007_platform_data tsc2007_data = {
 
 static struct i2c_board_info mbimx51_i2c_devices[] = {
        {
 
 static struct i2c_board_info mbimx51_i2c_devices[] = {
        {
-               I2C_BOARD_INFO("tsc2007", 0x48),
+               I2C_BOARD_INFO("tsc2007", 0x49),
                .irq  = MBIMX51_TSC2007_IRQ,
                .platform_data = &tsc2007_data,
                .irq  = MBIMX51_TSC2007_IRQ,
                .platform_data = &tsc2007_data,
+       }, {
+               I2C_BOARD_INFO("tlv320aic23", 0x1a),
        },
 };
 
        },
 };
 
@@ -198,4 +216,7 @@ void __init eukrea_mbimx51_baseboard_init(void)
        set_irq_type(MBIMX51_TSC2007_IRQ, IRQF_TRIGGER_FALLING);
        i2c_register_board_info(1, mbimx51_i2c_devices,
                                ARRAY_SIZE(mbimx51_i2c_devices));
        set_irq_type(MBIMX51_TSC2007_IRQ, IRQF_TRIGGER_FALLING);
        i2c_register_board_info(1, mbimx51_i2c_devices,
                                ARRAY_SIZE(mbimx51_i2c_devices));
+
+       imx51_add_esdhc(0, NULL);
+       imx51_add_esdhc(1, NULL);
 }
 }