aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/serial/mcfserial.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/serial/mcfserial.c b/drivers/serial/mcfserial.c
index 08430961a895..4e2eb351f74e 100644
--- a/drivers/serial/mcfserial.c
+++ b/drivers/serial/mcfserial.c
@@ -1541,8 +1541,8 @@ static void mcfrs_irqinit(struct mcf_serial *info)
1541 * External Pin Mask Setting & Enable External Pin for Interface 1541 * External Pin Mask Setting & Enable External Pin for Interface
1542 * mrcbis@aliceposta.it 1542 * mrcbis@aliceposta.it
1543 */ 1543 */
1544 unsigned short *serpin_enable_mask; 1544 u16 *serpin_enable_mask;
1545 serpin_enable_mask = (MCF_IPSBAR + MCF_GPIO_PAR_UART); 1545 serpin_enable_mask = (u16 *) (MCF_IPSBAR + MCF_GPIO_PAR_UART);
1546 if (info->line == 0) 1546 if (info->line == 0)
1547 *serpin_enable_mask |= UART0_ENABLE_MASK; 1547 *serpin_enable_mask |= UART0_ENABLE_MASK;
1548 else if (info->line == 1) 1548 else if (info->line == 1)
@@ -1551,6 +1551,13 @@ static void mcfrs_irqinit(struct mcf_serial *info)
1551 *serpin_enable_mask |= UART2_ENABLE_MASK; 1551 *serpin_enable_mask |= UART2_ENABLE_MASK;
1552 } 1552 }
1553#endif 1553#endif
1554#if defined(CONFIG_M528x)
1555 /* make sure PUAPAR is set for UART0 and UART1 */
1556 if (info->line < 2) {
1557 volatile unsigned char *portp = (volatile unsigned char *) (MCF_MBAR + MCF5282_GPIO_PUAPAR);
1558 *portp |= (0x03 << (info->line * 2));
1559 }
1560#endif
1554#elif defined(CONFIG_M520x) 1561#elif defined(CONFIG_M520x)
1555 volatile unsigned char *icrp, *uartp; 1562 volatile unsigned char *icrp, *uartp;
1556 volatile unsigned long *imrp; 1563 volatile unsigned long *imrp;