From 0741794c0d4192c45193d5e7f8e87a7bfb79ae0a Mon Sep 17 00:00:00 2001 From: Gilles Chanteperdrix Date: Tue, 9 Sep 2008 10:19:41 +0200 Subject: i.MX31ADS: Enable the first IMX serial port. (take 3) Signed-off-by: Gilles Chanteperdrix Signed-off-by: Sascha Hauer --- arch/arm/mach-mx3/mx31ads.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'arch/arm/mach-mx3') diff --git a/arch/arm/mach-mx3/mx31ads.c b/arch/arm/mach-mx3/mx31ads.c index 60fb4e0d5ac..3b48d1ae3a8 100644 --- a/arch/arm/mach-mx3/mx31ads.c +++ b/arch/arm/mach-mx3/mx31ads.c @@ -31,6 +31,8 @@ #include #include #include +#include +#include /*! * @file mx31ads.c @@ -84,6 +86,26 @@ static inline int mxc_init_extuart(void) } #endif +#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE) +static struct imxuart_platform_data uart_pdata = { + .flags = IMXUART_HAVE_RTSCTS, +}; + +static inline void mxc_init_imx_uart(void) +{ + mxc_iomux_mode(MX31_PIN_CTS1__CTS1); + mxc_iomux_mode(MX31_PIN_RTS1__RTS1); + mxc_iomux_mode(MX31_PIN_TXD1__TXD1); + mxc_iomux_mode(MX31_PIN_RXD1__RXD1); + + mxc_register_device(&mxc_uart_device0, &uart_pdata); +} +#else /* !SERIAL_IMX */ +static inline void mxc_init_imx_uart(void) +{ +} +#endif /* !SERIAL_IMX */ + /*! * This structure defines static mappings for the i.MX31ADS board. */ @@ -126,6 +148,7 @@ void __init mx31ads_map_io(void) static void __init mxc_board_init(void) { mxc_init_extuart(); + mxc_init_imx_uart(); } static void __init mx31ads_timer_init(void) -- cgit v1.2.3