Commit ecc85e16 authored by Alex Roman's avatar Alex Roman Committed by Eric Miao

[ARM] pxa/colibri: add UART MFP configuration for the PXA320 module

This patch configures the MFP pads for UART1, UART2, UART3 for the
Toradex Colibri PXA320 module. Previously they were just not
configured resulting in just the first UART working because it was the
only one that was configured by the bootloader (Toradex EBOOT in our
case).

This patch is against vanilla 2.6.30 and has been tested with the
Toradex Orchid carrier board (all three UARTs were functional).
Signed-off-by: default avatarAlex Roman <alex.roman@gmail.com>
Acked-by: default avatarDaniel Mack <daniel@caiaq.de>
Signed-off-by: default avatarEric Miao <eric.y.miao@gmail.com>
parent 53740df1
...@@ -164,6 +164,37 @@ static inline void __init colibri_pxa320_init_ac97(void) ...@@ -164,6 +164,37 @@ static inline void __init colibri_pxa320_init_ac97(void)
static inline void colibri_pxa320_init_ac97(void) {} static inline void colibri_pxa320_init_ac97(void) {}
#endif #endif
/*
* The following configuration is verified to work with the Toradex Orchid
* carrier board
*/
static mfp_cfg_t colibri_pxa320_uart_pin_config[] __initdata = {
/* UART 1 configuration (may be set by bootloader) */
GPIO99_UART1_CTS,
GPIO104_UART1_RTS,
GPIO97_UART1_RXD,
GPIO98_UART1_TXD,
GPIO101_UART1_DTR,
GPIO103_UART1_DSR,
GPIO100_UART1_DCD,
GPIO102_UART1_RI,
/* UART 2 configuration */
GPIO109_UART2_CTS,
GPIO112_UART2_RTS,
GPIO110_UART2_RXD,
GPIO111_UART2_TXD,
/* UART 3 configuration */
GPIO30_UART3_RXD,
GPIO31_UART3_TXD,
};
static void __init colibri_pxa320_init_uart(void)
{
pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_uart_pin_config));
}
void __init colibri_pxa320_init(void) void __init colibri_pxa320_init(void)
{ {
colibri_pxa320_init_eth(); colibri_pxa320_init_eth();
...@@ -174,6 +205,7 @@ void __init colibri_pxa320_init(void) ...@@ -174,6 +205,7 @@ void __init colibri_pxa320_init(void)
colibri_pxa320_init_ac97(); colibri_pxa320_init_ac97();
colibri_pxa3xx_init_mmc(ARRAY_AND_SIZE(colibri_pxa320_mmc_pin_config), colibri_pxa3xx_init_mmc(ARRAY_AND_SIZE(colibri_pxa320_mmc_pin_config),
mfp_to_gpio(MFP_PIN_GPIO28)); mfp_to_gpio(MFP_PIN_GPIO28));
colibri_pxa320_init_uart();
} }
MACHINE_START(COLIBRI320, "Toradex Colibri PXA320") MACHINE_START(COLIBRI320, "Toradex Colibri PXA320")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment