]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
tegra2: Add UARTB support
authorSimon Glass <sjg@chromium.org>
Sat, 5 Nov 2011 04:46:45 +0000 (04:46 +0000)
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>
Sat, 24 Dec 2011 09:23:30 +0000 (10:23 +0100)
UARTB is used on some boards, so support it here.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
board/nvidia/common/board.c

index 5313c76990d1f8d23cb6c5156df8ecd0937e8f61..4c291673168428d16b1f0a0a6a671a8bab920d95 100644 (file)
@@ -38,6 +38,7 @@ DECLARE_GLOBAL_DATA_PTR;
 enum {
        /* UARTs which we can enable */
        UARTA   = 1 << 0,
+       UARTB   = 1 << 1,
        UARTD   = 1 << 3,
 };
 
@@ -76,6 +77,8 @@ static void clock_init_uart(int uart_ids)
 {
        if (uart_ids & UARTA)
                enable_uart(PERIPH_ID_UART1);
+       if (uart_ids & UARTB)
+               enable_uart(PERIPH_ID_UART2);
        if (uart_ids & UARTD)
                enable_uart(PERIPH_ID_UART4);
 }
@@ -92,6 +95,10 @@ static void pin_mux_uart(int uart_ids)
                pinmux_tristate_disable(PINGRP_IRRX);
                pinmux_tristate_disable(PINGRP_IRTX);
        }
+       if (uart_ids & UARTB) {
+               pinmux_set_func(PINGRP_UAD, PMUX_FUNC_IRDA);
+               pinmux_tristate_disable(PINGRP_UAD);
+       }
        if (uart_ids & UARTD) {
                pinmux_set_func(PINGRP_GMC, PMUX_FUNC_UARTD);
                pinmux_tristate_disable(PINGRP_GMC);
@@ -121,6 +128,9 @@ int board_early_init_f(void)
 #ifdef CONFIG_TEGRA2_ENABLE_UARTA
        uart_ids |= UARTA;
 #endif
+#ifdef CONFIG_TEGRA2_ENABLE_UARTB
+       uart_ids |= UARTB;
+#endif
 #ifdef CONFIG_TEGRA2_ENABLE_UARTD
        uart_ids |= UARTD;
 #endif