Home | History | Annotate | Download | only in mach-rockchip
      1 // SPDX-License-Identifier: GPL-2.0+
      2 /*
      3  * (C) Copyright 2015 Rockchip Electronics Co., Ltd
      4  */
      5 
      6 #include <common.h>
      7 #include <debug_uart.h>
      8 #include <asm/io.h>
      9 #include <asm/arch/bootrom.h>
     10 #include <asm/arch/grf_rk3036.h>
     11 #include <asm/arch/hardware.h>
     12 #include <asm/arch/sdram_rk3036.h>
     13 #include <asm/arch/timer.h>
     14 #include <asm/arch/uart.h>
     15 
     16 #define GRF_BASE	0x20008000
     17 
     18 #define DEBUG_UART_BASE	0x20068000
     19 
     20 void board_init_f(ulong dummy)
     21 {
     22 #ifdef EARLY_DEBUG
     23 	struct rk3036_grf * const grf = (void *)GRF_BASE;
     24 	/*
     25 	 * NOTE: sd card and debug uart use same iomux in rk3036,
     26 	 * so if you enable uart,
     27 	 * you can not boot from sdcard
     28 	 */
     29 	rk_clrsetreg(&grf->gpio1c_iomux,
     30 		     GPIO1C3_MASK << GPIO1C3_SHIFT |
     31 		     GPIO1C2_MASK << GPIO1C2_SHIFT,
     32 		     GPIO1C3_UART2_SOUT << GPIO1C3_SHIFT |
     33 		     GPIO1C2_UART2_SIN << GPIO1C2_SHIFT);
     34 	debug_uart_init();
     35 #endif
     36 	rockchip_timer_init();
     37 	sdram_init();
     38 
     39 	/* return to maskrom */
     40 	back_to_bootrom(BROM_BOOT_NEXTSTAGE);
     41 }
     42 
     43 /* Place Holders */
     44 void board_init_r(gd_t *id, ulong dest_addr)
     45 {
     46 	/*
     47 	 * Function attribute is no-return
     48 	 * This Function never executes
     49 	 */
     50 	while (1)
     51 		;
     52 }
     53