aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx5/board-mx53_ard.c
diff options
context:
space:
mode:
authorAndre Silva <andre.silva@freescale.com>2011-06-22 15:33:05 -0400
committerSascha Hauer <s.hauer@pengutronix.de>2011-07-07 04:01:11 -0400
commit8dd7b817a1135940406a3271346a4a8e39e2b87c (patch)
treef3e0095cfccf68a84e587e76bd35a54ecb9632f7 /arch/arm/mach-mx5/board-mx53_ard.c
parentb6a14477695e54da6621c6d3c72f019b8cddb89d (diff)
ARM:mach-mx5/mx53_ard: Add I2C2 and I2C3 support
Signed-off-by: Andre Silva <andre.silva@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx5/board-mx53_ard.c')
-rw-r--r--arch/arm/mach-mx5/board-mx53_ard.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/arch/arm/mach-mx5/board-mx53_ard.c b/arch/arm/mach-mx5/board-mx53_ard.c
index 7dd54b9f8682..70ae25e6830b 100644
--- a/arch/arm/mach-mx5/board-mx53_ard.c
+++ b/arch/arm/mach-mx5/board-mx53_ard.c
@@ -84,6 +84,12 @@ static iomux_v3_cfg_t mx53_ard_pads[] = {
84 MX53_PAD_PATA_DATA11__ESDHC1_DAT7, 84 MX53_PAD_PATA_DATA11__ESDHC1_DAT7,
85 MX53_PAD_GPIO_1__GPIO1_1, 85 MX53_PAD_GPIO_1__GPIO1_1,
86 MX53_PAD_GPIO_9__GPIO1_9, 86 MX53_PAD_GPIO_9__GPIO1_9,
87 /* I2C2 */
88 MX53_PAD_EIM_EB2__I2C2_SCL,
89 MX53_PAD_KEY_ROW3__I2C2_SDA,
90 /* I2C3 */
91 MX53_PAD_GPIO_3__I2C3_SCL,
92 MX53_PAD_GPIO_16__I2C3_SDA,
87}; 93};
88 94
89static struct resource ard_smsc911x_resources[] = { 95static struct resource ard_smsc911x_resources[] = {
@@ -120,6 +126,14 @@ static const struct esdhc_platform_data mx53_ard_sd1_data __initconst = {
120 .wp_gpio = ARD_SD1_WP, 126 .wp_gpio = ARD_SD1_WP,
121}; 127};
122 128
129static struct imxi2c_platform_data mx53_ard_i2c2_data = {
130 .bitrate = 50000,
131};
132
133static struct imxi2c_platform_data mx53_ard_i2c3_data = {
134 .bitrate = 400000,
135};
136
123static void __init mx53_ard_io_init(void) 137static void __init mx53_ard_io_init(void)
124{ 138{
125 mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads, 139 mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads,
@@ -127,9 +141,12 @@ static void __init mx53_ard_io_init(void)
127 141
128 gpio_request(ARD_ETHERNET_INT_B, "eth-int-b"); 142 gpio_request(ARD_ETHERNET_INT_B, "eth-int-b");
129 gpio_direction_input(ARD_ETHERNET_INT_B); 143 gpio_direction_input(ARD_ETHERNET_INT_B);
144
145 gpio_request(ARD_I2CPORTEXP_B, "i2cptexp-rst");
146 gpio_direction_output(ARD_I2CPORTEXP_B, 1);
130} 147}
131 148
132 /* Config CS1 settings for ethernet controller */ 149/* Config CS1 settings for ethernet controller */
133static int weim_cs_config(void) 150static int weim_cs_config(void)
134{ 151{
135 u32 reg; 152 u32 reg;
@@ -179,6 +196,8 @@ static void __init mx53_ard_board_init(void)
179 196
180 imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data); 197 imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data);
181 imx53_add_imx2_wdt(0, NULL); 198 imx53_add_imx2_wdt(0, NULL);
199 imx53_add_imx_i2c(1, &mx53_ard_i2c2_data);
200 imx53_add_imx_i2c(2, &mx53_ard_i2c3_data);
182} 201}
183 202
184static void __init mx53_ard_timer_init(void) 203static void __init mx53_ard_timer_init(void)