Merge branch 'master' of git://git.denx.de/u-boot-rockchip
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
if TARGET_APF27
|
||||
|
||||
config SPL_LDSCRIPT
|
||||
default "arch/$(ARCH)/cpu/u-boot-spl.lds"
|
||||
|
||||
config SYS_BOARD
|
||||
default "apf27"
|
||||
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
if TARGET_MX31PDK
|
||||
|
||||
config SPL_LDSCRIPT
|
||||
default "arch/$(ARCH)/cpu/u-boot-spl.lds"
|
||||
|
||||
config SYS_BOARD
|
||||
default "mx31pdk"
|
||||
|
||||
|
||||
@@ -4,30 +4,6 @@
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
#include <common.h>
|
||||
#include <asm/io.h>
|
||||
#include <fdtdec.h>
|
||||
#include <asm/arch/clock.h>
|
||||
#include <asm/arch/grf_rk3368.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int mach_cpu_init(void)
|
||||
{
|
||||
struct rk3368_pmu_grf *pmugrf;
|
||||
int node;
|
||||
|
||||
node = fdt_node_offset_by_compatible(gd->fdt_blob, -1, "rockchip,rk3368-pmugrf");
|
||||
pmugrf = (struct rk3368_pmu_grf *)fdtdec_get_addr(gd->fdt_blob, node, "reg");
|
||||
|
||||
rk_clrsetreg(&pmugrf->gpio0d_iomux,
|
||||
GPIO0D0_MASK | GPIO0D1_MASK |
|
||||
GPIO0D2_MASK | GPIO0D3_MASK,
|
||||
GPIO0D0_GPIO << GPIO0D0_SHIFT |
|
||||
GPIO0D1_GPIO << GPIO0D1_SHIFT |
|
||||
GPIO0D2_UART4_SOUT << GPIO0D2_SHIFT |
|
||||
GPIO0D3_UART4_SIN << GPIO0D3_SHIFT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
if TARGET_X600
|
||||
|
||||
config SPL_LDSCRIPT
|
||||
default "arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds"
|
||||
|
||||
config SYS_BOARD
|
||||
default "x600"
|
||||
|
||||
|
||||
15
board/theobroma-systems/lion_rk3368/Kconfig
Normal file
15
board/theobroma-systems/lion_rk3368/Kconfig
Normal file
@@ -0,0 +1,15 @@
|
||||
if TARGET_LION_RK3368
|
||||
|
||||
config SYS_BOARD
|
||||
default "lion_rk3368"
|
||||
|
||||
config SYS_VENDOR
|
||||
default "theobroma-systems"
|
||||
|
||||
config SYS_CONFIG_NAME
|
||||
default "lion_rk3368"
|
||||
|
||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||
def_bool y
|
||||
|
||||
endif
|
||||
10
board/theobroma-systems/lion_rk3368/MAINTAINERS
Normal file
10
board/theobroma-systems/lion_rk3368/MAINTAINERS
Normal file
@@ -0,0 +1,10 @@
|
||||
LION-RK3368 (RK3368-uQ7 system-on-module)
|
||||
M: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
|
||||
M: Klaus Goger <klaus.goger@theobroma-systems.com>
|
||||
S: Maintained
|
||||
F: board/theobroma-systems/lion_rk3368
|
||||
F: include/configs/lion_rk3368.h
|
||||
F: arch/arm/dts/rk3368-lion.dts
|
||||
F: configs/lion-rk3368_defconfig
|
||||
W: https://www.theobroma-systems.com/rk3368-uq7/tech-specs
|
||||
T: git git://git.theobroma-systems.com/lion-u-boot.git
|
||||
7
board/theobroma-systems/lion_rk3368/Makefile
Normal file
7
board/theobroma-systems/lion_rk3368/Makefile
Normal file
@@ -0,0 +1,7 @@
|
||||
#
|
||||
# Copyright (c) 2017 Theobroma Systems Design und Consulting GmbH
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0+
|
||||
#
|
||||
|
||||
obj-y += lion_rk3368.o
|
||||
60
board/theobroma-systems/lion_rk3368/README
Normal file
60
board/theobroma-systems/lion_rk3368/README
Normal file
@@ -0,0 +1,60 @@
|
||||
Here is the step-by-step to boot to U-Boot on RK3368-uQ7
|
||||
|
||||
Get the Source and build ATF
|
||||
============================
|
||||
|
||||
> git clone git://git.theobroma-systems.com/arm-trusted-firmware.git
|
||||
> cd arm-trusted-firmware
|
||||
> make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3368 bl31
|
||||
> cp build/rk3368/release/bl31.bin ../u-boot/bl31-rk3368.bin
|
||||
|
||||
Configure U-Boot
|
||||
================
|
||||
|
||||
> cd ../u-boot
|
||||
> make lion-rk3368_defconfig
|
||||
|
||||
Build the TPL/SPL stage
|
||||
=======================
|
||||
|
||||
> make CROSS_COMPILE=aarch64-unknown-elf- ARCH=arm
|
||||
> tools/mkimage -n rk3368 -T rksd -d tpl/u-boot-tpl.bin spl-3368.img
|
||||
> cat spl/u-boot-spl-dtb.bin >> spl-3368.img
|
||||
|
||||
Build the full U-Boot and a FIT image including the ATF
|
||||
=======================================================
|
||||
|
||||
> make CROSS_COMPILE=aarch64-unknown-elf- ARCH=arm u-boot.itb
|
||||
|
||||
Write to a SD-card
|
||||
==================
|
||||
|
||||
> dd if=spl-3368.img of=/dev/sdb seek=64
|
||||
> dd if=u-boot.itb of=/dev/sdb seek=512
|
||||
|
||||
|
||||
If everything went according to plan, you should see the following
|
||||
output on UART0:
|
||||
|
||||
<debug_uart> U-Boot TPL board init
|
||||
Trying to boot from BOOTROM
|
||||
Returning to boot ROM...
|
||||
Trying to boot from MMC1
|
||||
NOTICE: BL31: v1.3(release):v1.2-1320-gbf43a443
|
||||
NOTICE: BL31: Built : 18:04:47, Jul 5 2017
|
||||
|
||||
|
||||
U-Boot 2017.07-00158-g2395e99858 (Jul 18 2017 - 21:03:31 +0200)
|
||||
|
||||
Model: Theobroma Systems RK3368-uQ7 SoM
|
||||
DRAM: 2 GiB
|
||||
MMC: dwmmc@ff0c0000: 1, dwmmc@ff0f0000: 0
|
||||
Using default environment
|
||||
|
||||
In: serial@ff180000
|
||||
Out: serial@ff180000
|
||||
Err: serial@ff180000
|
||||
Net:
|
||||
Warning: ethernet@ff290000 (eth0) using random MAC address - d2:69:35:7e:d0:1e
|
||||
eth0: ethernet@ff290000
|
||||
Hit any key to stop autoboot: 2
|
||||
51
board/theobroma-systems/lion_rk3368/fit_spl_atf.its
Normal file
51
board/theobroma-systems/lion_rk3368/fit_spl_atf.its
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (C) 2017 Theobroma Systems Design und Consulting GmbH
|
||||
*
|
||||
* Minimal dts for a SPL FIT image payload.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+ X11
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
description = "FIT image with U-Boot proper, ATF bl31, DTB";
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
uboot {
|
||||
description = "U-Boot (64-bit)";
|
||||
data = /incbin/("../../../u-boot-nodtb.bin");
|
||||
type = "standalone";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
load = <0x00200000>;
|
||||
};
|
||||
atf {
|
||||
description = "ARM Trusted Firmware";
|
||||
data = /incbin/("../../../bl31-rk3368.bin");
|
||||
type = "firmware";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
load = <0x00010000>;
|
||||
entry = <0x00010000>;
|
||||
};
|
||||
|
||||
fdt {
|
||||
description = "RK3368-uQ7 (Lion) flat device-tree";
|
||||
data = /incbin/("../../../u-boot.dtb");
|
||||
type = "flat_dt";
|
||||
compression = "none";
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf";
|
||||
conf {
|
||||
description = "Theobroma Systems RK3368-uQ7 (Puma) SoM";
|
||||
firmware = "uboot";
|
||||
loadables = "atf";
|
||||
fdt = "fdt";
|
||||
};
|
||||
};
|
||||
};
|
||||
25
board/theobroma-systems/lion_rk3368/lion_rk3368.c
Normal file
25
board/theobroma-systems/lion_rk3368/lion_rk3368.c
Normal file
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* Copyright (c) 2017 Theobroma Systems Design und Consulting GmbH
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*/
|
||||
#include <common.h>
|
||||
#include <dm.h>
|
||||
#include <ram.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/clock.h>
|
||||
#include <asm/arch/grf_rk3368.h>
|
||||
#include <asm/arch/timer.h>
|
||||
#include <syscon.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int mach_cpu_init(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
@@ -37,7 +37,7 @@ Compile the ATF
|
||||
|
||||
> cd arm-trusted-firmware
|
||||
> make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl31
|
||||
> cp build/rk3399/release/bl31.bin ../u-boot
|
||||
> cp build/rk3399/release/bl31.bin ../u-boot/bl31-rk3399.bin
|
||||
|
||||
Compile the M0 firmware
|
||||
=======================
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
uboot@1 {
|
||||
uboot {
|
||||
description = "U-Boot (64-bit)";
|
||||
data = /incbin/("../../../u-boot-nodtb.bin");
|
||||
type = "standalone";
|
||||
@@ -21,23 +21,23 @@
|
||||
compression = "none";
|
||||
load = <0x00200000>;
|
||||
};
|
||||
atf@1 {
|
||||
atf {
|
||||
description = "ARM Trusted Firmware";
|
||||
data = /incbin/("../../../bl31.bin");
|
||||
data = /incbin/("../../../bl31-rk3399.bin");
|
||||
type = "firmware";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
load = <0x00001000>;
|
||||
entry = <0x00001000>;
|
||||
};
|
||||
pmu@1 {
|
||||
pmu {
|
||||
description = "Cortex-M0 firmware";
|
||||
data = /incbin/("../../../rk3399m0.bin");
|
||||
type = "pmu-firmware";
|
||||
compression = "none";
|
||||
load = <0xff8c0000>;
|
||||
};
|
||||
fdt@1 {
|
||||
fdt {
|
||||
description = "RK3399-Q7 (Puma) flat device-tree";
|
||||
data = /incbin/("../../../u-boot.dtb");
|
||||
type = "flat_dt";
|
||||
@@ -46,12 +46,12 @@
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf@1";
|
||||
conf@1 {
|
||||
default = "conf";
|
||||
conf {
|
||||
description = "Theobroma Systems RK3399-Q7 (Puma) SoM";
|
||||
firmware = "uboot@1";
|
||||
loadables = "atf@1";
|
||||
fdt = "fdt@1";
|
||||
firmware = "uboot";
|
||||
loadables = "atf";
|
||||
fdt = "fdt";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user