diff options
author | Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> | 2008-09-09 10:19:41 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2008-09-09 10:19:41 +0200 |
commit | 0741794c0d4192c45193d5e7f8e87a7bfb79ae0a (patch) | |
tree | 7bab1d001254d99542955352f1d581b3c5068874 /arch/arm | |
parent | cfc135632a17b57cc6f97a7dea474a5abcfac36a (diff) | |
download | blackbird-op-linux-0741794c0d4192c45193d5e7f8e87a7bfb79ae0a.tar.gz blackbird-op-linux-0741794c0d4192c45193d5e7f8e87a7bfb79ae0a.zip |
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')
-rw-r--r-- | arch/arm/mach-mx3/mx31ads.c | 23 |
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 @@ #include <asm/mach/map.h> #include <mach/common.h> #include <mach/board-mx31ads.h> +#include <mach/imx-uart.h> +#include <mach/iomux-mx3.h> /*! * @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) |