aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabio Estevam <fabio.estevam@freescale.com>2011-03-01 14:59:45 -0500
committerSascha Hauer <s.hauer@pengutronix.de>2011-03-07 13:29:23 -0500
commit3d94302442cce1124a0adc0402bf609d9d8d808c (patch)
treeec4c26787f928b721aa31157415d5adc4e432eda
parent352cd9a0b849494a44a46c60219b8b6ea99f1d70 (diff)
ARM: mx31_3ds: Add I2C support
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--arch/arm/mach-mx3/Kconfig1
-rw-r--r--arch/arm/mach-mx3/mach-mx31_3ds.c8
2 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/mach-mx3/Kconfig b/arch/arm/mach-mx3/Kconfig
index 8b4b097bea3e..340809a7d233 100644
--- a/arch/arm/mach-mx3/Kconfig
+++ b/arch/arm/mach-mx3/Kconfig
@@ -94,6 +94,7 @@ config MACH_MX31_3DS
94 select MXC_DEBUG_BOARD 94 select MXC_DEBUG_BOARD
95 select IMX_HAVE_PLATFORM_FSL_USB2_UDC 95 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
96 select IMX_HAVE_PLATFORM_IMX2_WDT 96 select IMX_HAVE_PLATFORM_IMX2_WDT
97 select IMX_HAVE_PLATFORM_IMX_I2C
97 select IMX_HAVE_PLATFORM_IMX_KEYPAD 98 select IMX_HAVE_PLATFORM_IMX_KEYPAD
98 select IMX_HAVE_PLATFORM_IMX_UART 99 select IMX_HAVE_PLATFORM_IMX_UART
99 select IMX_HAVE_PLATFORM_MXC_EHCI 100 select IMX_HAVE_PLATFORM_MXC_EHCI
diff --git a/arch/arm/mach-mx3/mach-mx31_3ds.c b/arch/arm/mach-mx3/mach-mx31_3ds.c
index b7d0953046e1..35fdb2aeeaa3 100644
--- a/arch/arm/mach-mx3/mach-mx31_3ds.c
+++ b/arch/arm/mach-mx3/mach-mx31_3ds.c
@@ -96,6 +96,9 @@ static int mx31_3ds_pins[] = {
96 IOMUX_MODE(MX31_PIN_PC_RW_B, IOMUX_CONFIG_ALT1), 96 IOMUX_MODE(MX31_PIN_PC_RW_B, IOMUX_CONFIG_ALT1),
97 /* USB Host2 reset */ 97 /* USB Host2 reset */
98 IOMUX_MODE(MX31_PIN_USB_BYP, IOMUX_CONFIG_GPIO), 98 IOMUX_MODE(MX31_PIN_USB_BYP, IOMUX_CONFIG_GPIO),
99 /* I2C1 */
100 MX31_PIN_I2C_CLK__I2C1_SCL,
101 MX31_PIN_I2C_DAT__I2C1_SDA,
99}; 102};
100 103
101/* 104/*
@@ -323,6 +326,10 @@ static const struct imxuart_platform_data uart_pdata __initconst = {
323 .flags = IMXUART_HAVE_RTSCTS, 326 .flags = IMXUART_HAVE_RTSCTS,
324}; 327};
325 328
329static const struct imxi2c_platform_data mx31_3ds_i2c0_data __initconst = {
330 .bitrate = 100000,
331};
332
326static void __init mx31_3ds_init(void) 333static void __init mx31_3ds_init(void)
327{ 334{
328 mxc_iomux_setup_multiple_pins(mx31_3ds_pins, ARRAY_SIZE(mx31_3ds_pins), 335 mxc_iomux_setup_multiple_pins(mx31_3ds_pins, ARRAY_SIZE(mx31_3ds_pins),
@@ -356,6 +363,7 @@ static void __init mx31_3ds_init(void)
356 printk(KERN_WARNING "Init of the debug board failed, all " 363 printk(KERN_WARNING "Init of the debug board failed, all "
357 "devices on the debug board are unusable.\n"); 364 "devices on the debug board are unusable.\n");
358 imx31_add_imx2_wdt(NULL); 365 imx31_add_imx2_wdt(NULL);
366 imx31_add_imx_i2c0(&mx31_3ds_i2c0_data);
359} 367}
360 368
361static void __init mx31_3ds_timer_init(void) 369static void __init mx31_3ds_timer_init(void)