SPDX: Convert all of our single license tags to Linux Kernel style
[platform/kernel/u-boot.git] / arch / arm / mach-rockchip / rk3036-board-spl.c
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 }