Skip to content

Commit

Permalink
rockchip: rk3328: add spl board file support
Browse files Browse the repository at this point in the history
rk3328 spl is locate at dram, so do not have strict size limit,
suppose to enable storage media controller driver, load ATF and
U-Boot, then boot into ATF.

Change-Id: I60d0e2b278dc09b04bd098f682c06bd5fb6cecf7
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
  • Loading branch information
keveryang committed Nov 6, 2017
1 parent 6b5409b commit 6592d3d
Show file tree
Hide file tree
Showing 2 changed files with 65 additions and 0 deletions.
1 change: 1 addition & 0 deletions arch/arm/mach-rockchip/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ obj-spl-$(CONFIG_ROCKCHIP_RK3036) += rk3036-board-spl.o
obj-spl-$(CONFIG_ROCKCHIP_RK3188) += rk3188-board-spl.o
obj-spl-$(CONFIG_ROCKCHIP_RK322X) += rk322x-board-spl.o spl-boot-order.o
obj-spl-$(CONFIG_ROCKCHIP_RK3288) += rk3288-board-spl.o
obj-spl-$(CONFIG_ROCKCHIP_RK3328) += rk3328-board-spl.o
obj-spl-$(CONFIG_ROCKCHIP_RK3368) += rk3368-board-spl.o spl-boot-order.o
obj-spl-$(CONFIG_ROCKCHIP_RK3399) += rk3399-board-spl.o spl-boot-order.o

Expand Down
64 changes: 64 additions & 0 deletions arch/arm/mach-rockchip/rk3328-board-spl.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
/*
* (C) Copyright 2016 Rockchip Electronics Co., Ltd
*
* SPDX-License-Identifier: GPL-2.0+
*/

#include <common.h>
#include <debug_uart.h>
#include <dm.h>
#include <dm/pinctrl.h>
#include <ram.h>
#include <spl.h>
#include <asm/io.h>
#include <asm/arch/cru_rk3328.h>
#include <asm/arch/grf_rk3328.h>
#include <asm/arch/hardware.h>
#include <asm/arch/periph.h>
#include <asm/arch/timer.h>

DECLARE_GLOBAL_DATA_PTR;

void board_debug_uart_init(void)
{
}

void board_init_f(ulong dummy)
{
struct udevice *dev;
int ret;

ret = spl_early_init();
if (ret) {
debug("spl_early_init() failed: %d\n", ret);
hang();
}

preloader_console_init();

ret = uclass_get_device(UCLASS_RAM, 0, &dev);
if (ret) {
debug("DRAM init failed: %d\n", ret);
return;
}
}

u32 spl_boot_mode(const u32 boot_device)
{
return MMCSD_MODE_RAW;
}

u32 spl_boot_device(void)
{
return BOOT_DEVICE_MMC1;
}

#ifdef CONFIG_SPL_LOAD_FIT
int board_fit_config_name_match(const char *name)
{
/* Just empty function now - can't decide what to choose */
debug("%s: %s\n", __func__, name);

return 0;
}
#endif

0 comments on commit 6592d3d

Please sign in to comment.