Move SoC spec setting into rk3188.c

Signed-off-by: Kever Yang <kever.y...@rock-chips.com>
---

 arch/arm/mach-rockchip/rk3188-board-spl.c | 226 ------------------------------
 arch/arm/mach-rockchip/rk3188-board.c     |  82 -----------
 arch/arm/mach-rockchip/rk3188/Makefile    |   1 +
 arch/arm/mach-rockchip/rk3188/rk3188.c    |  23 +++
 4 files changed, 24 insertions(+), 308 deletions(-)
 delete mode 100644 arch/arm/mach-rockchip/rk3188-board-spl.c
 delete mode 100644 arch/arm/mach-rockchip/rk3188-board.c
 create mode 100644 arch/arm/mach-rockchip/rk3188/rk3188.c

diff --git a/arch/arm/mach-rockchip/rk3188-board-spl.c 
b/arch/arm/mach-rockchip/rk3188-board-spl.c
deleted file mode 100644
index 74771d3..0000000
--- a/arch/arm/mach-rockchip/rk3188-board-spl.c
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
- * (C) Copyright 2015 Google, Inc
- *
- * SPDX-License-Identifier:     GPL-2.0+
- */
-
-#include <clk.h>
-#include <common.h>
-#include <debug_uart.h>
-#include <dm.h>
-#include <fdtdec.h>
-#include <led.h>
-#include <malloc.h>
-#include <ram.h>
-#include <spl.h>
-#include <asm/gpio.h>
-#include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3188.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/timer.h>
-#include <dm/pinctrl.h>
-#include <dm/root.h>
-#include <dm/test.h>
-#include <dm/util.h>
-#include <power/regulator.h>
-#include <syscon.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-u32 spl_boot_device(void)
-{
-#if !CONFIG_IS_ENABLED(OF_PLATDATA)
-       const void *blob = gd->fdt_blob;
-       struct udevice *dev;
-       const char *bootdev;
-       int node;
-       int ret;
-
-       bootdev = fdtdec_get_config_string(blob, "u-boot,boot0");
-       debug("Boot device %s\n", bootdev);
-       if (!bootdev)
-               goto fallback;
-
-       node = fdt_path_offset(blob, bootdev);
-       if (node < 0) {
-               debug("node=%d\n", node);
-               goto fallback;
-       }
-       ret = device_get_global_by_of_offset(node, &dev);
-       if (ret) {
-               debug("device at node %s/%d not found: %d\n", bootdev, node,
-                     ret);
-               goto fallback;
-       }
-       debug("Found device %s\n", dev->name);
-       switch (device_get_uclass_id(dev)) {
-       case UCLASS_SPI_FLASH:
-               return BOOT_DEVICE_SPI;
-       case UCLASS_MMC:
-               return BOOT_DEVICE_MMC1;
-       default:
-               debug("Booting from device uclass '%s' not supported\n",
-                     dev_get_uclass_name(dev));
-       }
-
-fallback:
-#endif
-       return BOOT_DEVICE_MMC1;
-}
-
-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 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;
-
-       rk_clrsetreg(&grf->gpio1b_iomux,
-                    GPIO1B1_MASK << GPIO1B1_SHIFT |
-                    GPIO1B0_MASK << GPIO1B0_SHIFT,
-                    GPIO1B1_UART2_SOUT << GPIO1B1_SHIFT |
-                    GPIO1B0_UART2_SIN << GPIO1B0_SHIFT);
-       /*
-        * Debug UART can be used from here if required:
-        *
-        * debug_uart_init();
-        * printch('a');
-        * printhex8(0x1234);
-        * printascii("string");
-        */
-       debug_uart_init();
-       printch('s');
-       printch('p');
-       printch('l');
-       printch('\n');
-#endif
-
-       ret = spl_early_init();
-       if (ret) {
-               debug("spl_early_init() failed: %d\n", ret);
-               hang();
-       }
-
-       rockchip_timer_init();
-
-       ret = rockchip_get_clk(&dev);
-       if (ret) {
-               debug("CLK init failed: %d\n", ret);
-               return;
-       }
-
-       ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl);
-       if (ret) {
-               debug("Pinctrl init failed: %d\n", ret);
-               return;
-       }
-
-       ret = uclass_get_device(UCLASS_RAM, 0, &dev);
-       if (ret) {
-               debug("DRAM init failed: %d\n", ret);
-               return;
-       }
-
-       setup_arm_clock();
-#if CONFIG_IS_ENABLED(ROCKCHIP_BACK_TO_BROM) && !defined(CONFIG_SPL_BOARD_INIT)
-       back_to_bootrom(BROM_BOOT_NEXTSTAGE);
-#endif
-}
-
-static int setup_led(void)
-{
-#ifdef CONFIG_SPL_LED
-       struct udevice *dev;
-       char *led_name;
-       int ret;
-
-       led_name = fdtdec_get_config_string(gd->fdt_blob, "u-boot,boot-led");
-       if (!led_name)
-               return 0;
-       ret = led_get_by_label(led_name, &dev);
-       if (ret) {
-               debug("%s: get=%d\n", __func__, ret);
-               return ret;
-       }
-       ret = led_set_on(dev, 1);
-       if (ret)
-               return ret;
-#endif
-
-       return 0;
-}
-
-void spl_board_init(void)
-{
-       struct udevice *pinctrl;
-       int ret;
-
-       ret = setup_led();
-       if (ret) {
-               debug("LED ret=%d\n", ret);
-               hang();
-       }
-
-       ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl);
-       if (ret) {
-               debug("%s: Cannot find pinctrl device\n", __func__);
-               goto err;
-       }
-
-#ifdef CONFIG_SPL_MMC_SUPPORT
-       ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_SDCARD);
-       if (ret) {
-               debug("%s: Failed to set up SD card\n", __func__);
-               goto err;
-       }
-#endif
-
-       /* Enable debug UART */
-       ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_UART_DBG);
-       if (ret) {
-               debug("%s: Failed to set up console UART\n", __func__);
-               goto err;
-       }
-
-       preloader_console_init();
-#if CONFIG_IS_ENABLED(ROCKCHIP_BACK_TO_BROM)
-       back_to_bootrom(BROM_BOOT_NEXTSTAGE);
-#endif
-       return;
-
-err:
-       printf("spl_board_init: Error %d\n", ret);
-
-       /* No way to report error here */
-       hang();
-}
diff --git a/arch/arm/mach-rockchip/rk3188-board.c 
b/arch/arm/mach-rockchip/rk3188-board.c
deleted file mode 100644
index 916d18f..0000000
--- a/arch/arm/mach-rockchip/rk3188-board.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * (C) Copyright 2015 Google, Inc
- *
- * SPDX-License-Identifier:     GPL-2.0+
- */
-
-#include <common.h>
-#include <clk.h>
-#include <dm.h>
-#include <ram.h>
-#include <syscon.h>
-#include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3188.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/boot_mode.h>
-#include <asm/gpio.h>
-#include <dm/pinctrl.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-int board_late_init(void)
-{
-       struct rk3188_grf *grf;
-
-       setup_boot_mode();
-       grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
-       if (IS_ERR(grf)) {
-               pr_err("grf syscon returned %ld\n", PTR_ERR(grf));
-       } else {
-               /* enable noc remap to mimic legacy loaders */
-               rk_clrsetreg(&grf->soc_con0,
-                       NOC_REMAP_MASK << NOC_REMAP_SHIFT,
-                       NOC_REMAP_MASK << NOC_REMAP_SHIFT);
-       }
-
-       return 0;
-}
-
-int board_init(void)
-{
-#if CONFIG_IS_ENABLED(ROCKCHIP_BACK_TO_BROM)
-       struct udevice *pinctrl;
-       int ret;
-
-       /*
-        * We need to implement sdcard iomux here for the further
-        * initialization, otherwise, it'll hit sdcard command sending
-        * timeout exception.
-        */
-       ret = uclass_get_device(UCLASS_PINCTRL, 0, &pinctrl);
-       if (ret) {
-               debug("%s: Cannot find pinctrl device\n", __func__);
-               goto err;
-       }
-       ret = pinctrl_request_noflags(pinctrl, PERIPH_ID_SDCARD);
-       if (ret) {
-               debug("%s: Failed to set up SD card\n", __func__);
-               goto err;
-       }
-
-       return 0;
-err:
-       printf("board_init: Error %d\n", ret);
-
-       /* No way to report error here */
-       hang();
-
-       return -1;
-#else
-       return 0;
-#endif
-}
-
-#ifndef CONFIG_SYS_DCACHE_OFF
-void enable_caches(void)
-{
-       /* Enable D-cache. I-cache is already enabled in start.S */
-       dcache_enable();
-}
-#endif
diff --git a/arch/arm/mach-rockchip/rk3188/Makefile 
b/arch/arm/mach-rockchip/rk3188/Makefile
index 7fa0104..b3b2315 100644
--- a/arch/arm/mach-rockchip/rk3188/Makefile
+++ b/arch/arm/mach-rockchip/rk3188/Makefile
@@ -5,6 +5,7 @@
 #
 
 ifndef CONFIG_TPL_BUILD
+obj-y += rk3188.o
 obj-y += clk_rk3188.o
 obj-y += syscon_rk3188.o
 endif
diff --git a/arch/arm/mach-rockchip/rk3188/rk3188.c 
b/arch/arm/mach-rockchip/rk3188/rk3188.c
new file mode 100644
index 0000000..57d2abf
--- /dev/null
+++ b/arch/arm/mach-rockchip/rk3188/rk3188.c
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2016 Rockchip Electronics Co., Ltd
+ *
+ * SPDX-License-Identifier:     GPL-2.0+
+ */
+
+#include <common.h>
+#include <asm/io.h>
+#include <asm/arch/hardware.h>
+#include <asm/arch/periph.h>
+#include <asm/arch/grf_rk3188.h>
+
+#define GRF_BASE       0x20008000
+void board_debug_uart_init(void)
+{
+       struct rk3188_grf * const grf = (void *)GRF_BASE;
+
+       rk_clrsetreg(&grf->gpio1b_iomux,
+                    GPIO1B1_MASK << GPIO1B1_SHIFT |
+                    GPIO1B0_MASK << GPIO1B0_SHIFT,
+                    GPIO1B1_UART2_SOUT << GPIO1B1_SHIFT |
+                    GPIO1B0_UART2_SIN << GPIO1B0_SHIFT);
+}
-- 
1.9.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to