Sync with other rockchip SoCs, use board_debug_uart_init() to
init default UART iomux.

Signed-off-by: Kever Yang <[email protected]>
---

 arch/arm/mach-rockchip/Kconfig            |  1 +
 arch/arm/mach-rockchip/rk3188-board-spl.c | 29 +++++++++++++++++------
 2 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 94a03e2a38..a007162b21 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -35,6 +35,7 @@ config ROCKCHIP_RK3188
        select SPL_RAM
        select SPL_DRIVERS_MISC_SUPPORT
        select SPL_ROCKCHIP_EARLYRETURN_TO_BROM
+       select DEBUG_UART_BOARD_INIT
        select BOARD_LATE_INIT
        select ROCKCHIP_BROM_HELPER
        help
diff --git a/arch/arm/mach-rockchip/rk3188-board-spl.c 
b/arch/arm/mach-rockchip/rk3188-board-spl.c
index 98ca971b88..a7f59ad856 100644
--- a/arch/arm/mach-rockchip/rk3188-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3188-board-spl.c
@@ -16,6 +16,7 @@
 #include <asm/io.h>
 #include <asm/arch/bootrom.h>
 #include <asm/arch/clock.h>
+#include <asm/arch/grf_rk3188.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/periph.h>
 #include <asm/arch/pmu_rk3188.h>
@@ -92,23 +93,37 @@ static int setup_arm_clock(void)
        return ret;
 }
 
-void board_init_f(ulong dummy)
+void board_debug_uart_init(void)
 {
-       struct udevice *pinctrl, *dev;
-       int ret;
-
-       /* Example code showing how to enable the debug UART on RK3188 */
-#ifdef EARLY_UART
-#include <asm/arch/grf_rk3188.h>
        /* Enable early UART on the RK3188 */
 #define GRF_BASE       0x20008000
        struct rk3188_grf * const grf = (void *)GRF_BASE;
+       enum {
+               GPIO1B1_SHIFT           = 2,
+               GPIO1B1_MASK            = 3,
+               GPIO1B1_GPIO            = 0,
+               GPIO1B1_UART2_SOUT,
+
+               GPIO1B0_SHIFT           = 0,
+               GPIO1B0_MASK            = 3,
+               GPIO1B0_GPIO            = 0,
+               GPIO1B0_UART2_SIN,
+       };
 
        rk_clrsetreg(&grf->gpio1b_iomux,
                     GPIO1B1_MASK << GPIO1B1_SHIFT |
                     GPIO1B0_MASK << GPIO1B0_SHIFT,
                     GPIO1B1_UART2_SOUT << GPIO1B1_SHIFT |
                     GPIO1B0_UART2_SIN << GPIO1B0_SHIFT);
+}
+
+void board_init_f(ulong dummy)
+{
+       struct udevice *pinctrl, *dev;
+       int ret;
+
+#define EARLY_UART
+#ifdef EARLY_UART
        /*
         * Debug UART can be used from here if required:
         *
-- 
2.18.0

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to