aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx3/mx31ads.c
diff options
context:
space:
mode:
authorGilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>2008-09-09 04:19:41 -0400
committerSascha Hauer <s.hauer@pengutronix.de>2008-09-09 04:19:41 -0400
commit0741794c0d4192c45193d5e7f8e87a7bfb79ae0a (patch)
tree7bab1d001254d99542955352f1d581b3c5068874 /arch/arm/mach-mx3/mx31ads.c
parentcfc135632a17b57cc6f97a7dea474a5abcfac36a (diff)
i.MX31ADS: Enable the first IMX serial port. (take 3)
Signed-off-by: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx3/mx31ads.c')
-rw-r--r--arch/arm/mach-mx3/mx31ads.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/arch/arm/mach-mx3/mx31ads.c b/arch/arm/mach-mx3/mx31ads.c
index 60fb4e0d5acd..3b48d1ae3a87 100644
--- a/arch/arm/mach-mx3/mx31ads.c
+++ b/arch/arm/mach-mx3/mx31ads.c
@@ -31,6 +31,8 @@
31#include <asm/mach/map.h> 31#include <asm/mach/map.h>
32#include <mach/common.h> 32#include <mach/common.h>
33#include <mach/board-mx31ads.h> 33#include <mach/board-mx31ads.h>
34#include <mach/imx-uart.h>
35#include <mach/iomux-mx3.h>
34 36
35/*! 37/*!
36 * @file mx31ads.c 38 * @file mx31ads.c
@@ -84,6 +86,26 @@ static inline int mxc_init_extuart(void)
84} 86}
85#endif 87#endif
86 88
89#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE)
90static struct imxuart_platform_data uart_pdata = {
91 .flags = IMXUART_HAVE_RTSCTS,
92};
93
94static inline void mxc_init_imx_uart(void)
95{
96 mxc_iomux_mode(MX31_PIN_CTS1__CTS1);
97 mxc_iomux_mode(MX31_PIN_RTS1__RTS1);
98 mxc_iomux_mode(MX31_PIN_TXD1__TXD1);
99 mxc_iomux_mode(MX31_PIN_RXD1__RXD1);
100
101 mxc_register_device(&mxc_uart_device0, &uart_pdata);
102}
103#else /* !SERIAL_IMX */
104static inline void mxc_init_imx_uart(void)
105{
106}
107#endif /* !SERIAL_IMX */
108
87/*! 109/*!
88 * This structure defines static mappings for the i.MX31ADS board. 110 * This structure defines static mappings for the i.MX31ADS board.
89 */ 111 */
@@ -126,6 +148,7 @@ void __init mx31ads_map_io(void)
126static void __init mxc_board_init(void) 148static void __init mxc_board_init(void)
127{ 149{
128 mxc_init_extuart(); 150 mxc_init_extuart();
151 mxc_init_imx_uart();
129} 152}
130 153
131static void __init mx31ads_timer_init(void) 154static void __init mx31ads_timer_init(void)