From ffb06671e66b123739d624d7291e535cd95608d6 Mon Sep 17 00:00:00 2001 From: Kever Yang Date: Sat, 20 Jan 2018 21:51:51 +0800 Subject: [PATCH] rockchip: rk3066: enable early back to bootrom like rk3188 We don't need tpl for rk3066 after we enable this option. NOTE: need to update code for clock init in boot0 later Change-Id: I253e6a0fd3633d982ebabaa045a0d4839570bc6a Signed-off-by: Kever Yang --- arch/arm/mach-rockchip/Kconfig | 1 + arch/arm/mach-rockchip/rk3066-board-tpl.c | 90 ----------------------- 2 files changed, 1 insertion(+), 90 deletions(-) delete mode 100644 arch/arm/mach-rockchip/rk3066-board-tpl.c diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig index 2ffef77e8c..e0f1b663e6 100644 --- a/arch/arm/mach-rockchip/Kconfig +++ b/arch/arm/mach-rockchip/Kconfig @@ -41,6 +41,7 @@ config ROCKCHIP_RK3066 select TPL select BOARD_LATE_INIT select ROCKCHIP_BROM_HELPER + select SPL_ROCKCHIP_EARLYRETURN_TO_BROM help The Rockchip RK3066 is a ARM-based SoC with a dual-core Cortex-A9 including NEON and GPU, Mali-400 graphics, several DDR3 options diff --git a/arch/arm/mach-rockchip/rk3066-board-tpl.c b/arch/arm/mach-rockchip/rk3066-board-tpl.c deleted file mode 100644 index 03efe399e5..0000000000 --- a/arch/arm/mach-rockchip/rk3066-board-tpl.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * (C) Copyright 2015 Google, Inc - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -DECLARE_GLOBAL_DATA_PTR; - -#define RK3066_TIMER_CONTROL 0x8 -#define GRF_BASE 0x20008000 - -static int setup_arm_clock(void) -{ - struct udevice *dev; - struct clk clk; - int ret; - - ret = rockchip_get_clk(&dev); - if (ret) - return ret; - - clk.id = CLK_ARM; - ret = clk_request(dev, &clk); - if (ret < 0) - return ret; - - ret = clk_set_rate(&clk, 600000000); - - clk_free(&clk); - return ret; -} - -void board_init_f(ulong dummy) -{ - struct rk3066_grf * const grf = (void *)GRF_BASE; - struct udevice *dev; - int ret; - - /* Enable early UART on the RK3066 */ - rk_clrsetreg(&grf->gpio1b_iomux, - GPIO1B1_MASK | GPIO1B0_MASK, - GPIO1B1_UART2_SOUT << GPIO1B1_SHIFT | - GPIO1B0_UART2_SIN << GPIO1B0_SHIFT); - - debug_uart_init(); - - printascii("U-Boot TPL board init\n"); - - ret = spl_early_init(); - if (ret) { - debug("spl_early_init() failed: %d\n", ret); - hang(); - } - - /* Reset and enable Timer0 */ - writel(0, CONFIG_SYS_TIMER_BASE); - rk_clrsetreg(CONFIG_SYS_TIMER_BASE + RK3066_TIMER_CONTROL, 0x1, 0x1); - - ret = uclass_get_device(UCLASS_RAM, 0, &dev); - if (ret) { - debug("DRAM init failed: %d\n", ret); - return; - } - - setup_arm_clock(); -} - -void board_return_to_bootrom(void) -{ - back_to_bootrom(BROM_BOOT_NEXTSTAGE); -} - -u32 spl_boot_device(void) -{ - return BOOT_DEVICE_BOOTROM; -}