223 lines
5.6 KiB
Diff
223 lines
5.6 KiB
Diff
|
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
|
||
|
index 20dbc2ff..e6aa0b07 100644
|
||
|
--- a/arch/arm/dts/Makefile
|
||
|
+++ b/arch/arm/dts/Makefile
|
||
|
@@ -75,7 +75,8 @@ dtb-$(CONFIG_ROCKCHIP_RK3188) += \
|
||
|
rk3188-radxarock.dtb
|
||
|
|
||
|
dtb-$(CONFIG_ROCKCHIP_RK322X) += \
|
||
|
- rk3229-evb.dtb
|
||
|
+ rk3229-evb.dtb \
|
||
|
+ rk322x-box.dtb
|
||
|
|
||
|
dtb-$(CONFIG_ROCKCHIP_RK3288) += \
|
||
|
rk3288-evb.dtb \
|
||
|
diff --git a/arch/arm/mach-rockchip/rk322x/Kconfig b/arch/arm/mach-rockchip/rk322x/Kconfig
|
||
|
index 8a1f95f7..249add9b 100644
|
||
|
--- a/arch/arm/mach-rockchip/rk322x/Kconfig
|
||
|
+++ b/arch/arm/mach-rockchip/rk322x/Kconfig
|
||
|
@@ -4,6 +4,10 @@ config TARGET_EVB_RK3229
|
||
|
bool "EVB_RK3229"
|
||
|
select BOARD_LATE_INIT
|
||
|
|
||
|
+config TARGET_RK322X_BOX
|
||
|
+ bool "RK322X-BOX"
|
||
|
+ select BOARD_LATE_INIT
|
||
|
+
|
||
|
config SYS_SOC
|
||
|
default "rk322x"
|
||
|
|
||
|
@@ -14,5 +18,6 @@ config SPL_SERIAL_SUPPORT
|
||
|
default y
|
||
|
|
||
|
source "board/rockchip/evb_rk3229/Kconfig"
|
||
|
+source "board/rockchip/rk322x-box/Kconfig"
|
||
|
|
||
|
endif
|
||
|
diff --git a/board/rockchip/rk322x-box/Kconfig b/board/rockchip/rk322x-box/Kconfig
|
||
|
new file mode 100644
|
||
|
index 00000000..9ec0227e
|
||
|
--- /dev/null
|
||
|
+++ b/board/rockchip/rk322x-box/Kconfig
|
||
|
@@ -0,0 +1,15 @@
|
||
|
+if TARGET_RK322X_BOX
|
||
|
+
|
||
|
+config SYS_BOARD
|
||
|
+ default "rk322x-box"
|
||
|
+
|
||
|
+config SYS_VENDOR
|
||
|
+ default "rockchip"
|
||
|
+
|
||
|
+config SYS_CONFIG_NAME
|
||
|
+ default "rk322x-box"
|
||
|
+
|
||
|
+config BOARD_SPECIFIC_OPTIONS # dummy
|
||
|
+ def_bool y
|
||
|
+
|
||
|
+endif
|
||
|
diff --git a/board/rockchip/rk322x-box/MAINTAINERS b/board/rockchip/rk322x-box/MAINTAINERS
|
||
|
new file mode 100644
|
||
|
index 00000000..dddc7865
|
||
|
--- /dev/null
|
||
|
+++ b/board/rockchip/rk322x-box/MAINTAINERS
|
||
|
@@ -0,0 +1,6 @@
|
||
|
+XT-MX4VR-V10
|
||
|
+M: Paolo Sabatino <paolo.sabatino@gmail.com>
|
||
|
+S: Out of tree
|
||
|
+F: board/rockchip/rk322x-box
|
||
|
+F: include/configs/rk322x-box.h
|
||
|
+F: configs/rk322x-box_defconfig
|
||
|
diff --git a/board/rockchip/rk322x-box/Makefile b/board/rockchip/rk322x-box/Makefile
|
||
|
new file mode 100644
|
||
|
index 00000000..965ff42c
|
||
|
--- /dev/null
|
||
|
+++ b/board/rockchip/rk322x-box/Makefile
|
||
|
@@ -0,0 +1,7 @@
|
||
|
+#
|
||
|
+# (C) Copyright 2015 Google, Inc
|
||
|
+#
|
||
|
+# SPDX-License-Identifier: GPL-2.0+
|
||
|
+#
|
||
|
+
|
||
|
+obj-y += rk322x-box.o
|
||
|
diff --git a/board/rockchip/rk322x-box/README b/board/rockchip/rk322x-box/README
|
||
|
new file mode 100644
|
||
|
index 00000000..9c047470
|
||
|
--- /dev/null
|
||
|
+++ b/board/rockchip/rk322x-box/README
|
||
|
@@ -0,0 +1,72 @@
|
||
|
+Get the Source and prebuild binary
|
||
|
+==================================
|
||
|
+
|
||
|
+ > mkdir ~/rk322x-box
|
||
|
+ > cd ~/rk322x-box
|
||
|
+ > git clone git://git.denx.de/u-boot.git
|
||
|
+ > git clone https://github.com/OP-TEE/optee_os.git
|
||
|
+ > git clone https://github.com/rockchip-linux/rkbin.git
|
||
|
+ > git clone https://github.com/rockchip-linux/rkdeveloptool.git
|
||
|
+
|
||
|
+Compile the OP-TEE
|
||
|
+===============
|
||
|
+
|
||
|
+ > cd optee_os
|
||
|
+ > make clean
|
||
|
+ > make CROSS_COMPILE_ta_arm32=arm-none-eabi- PLATFORM=rockchip-rk322x
|
||
|
+ Get tee.bin in this step, copy it to U-Boot root dir:
|
||
|
+ > cp out/arm-plat-rockchip/core/tee-pager.bin ../u-boot/tee.bin
|
||
|
+
|
||
|
+Compile the U-Boot
|
||
|
+==================
|
||
|
+
|
||
|
+ > cd ../u-boot
|
||
|
+ > export CROSS_COMPILE=arm-linux-gnueabihf-
|
||
|
+ > export ARCH=arm
|
||
|
+ > make rk322x-box_defconfig
|
||
|
+ > make
|
||
|
+ > make u-boot.itb
|
||
|
+
|
||
|
+ Get tpl/u-boot-tpl.bin, spl/u-boot-spl.bin and u-boot.itb in this step.
|
||
|
+
|
||
|
+Compile the rkdeveloptool
|
||
|
+=======================
|
||
|
+ Follow instructions in latest README
|
||
|
+ > cd ../rkflashtool
|
||
|
+ > autoreconf -i
|
||
|
+ > ./configure
|
||
|
+ > make
|
||
|
+ > sudo make install
|
||
|
+
|
||
|
+ Get rkdeveloptool in you Host in this step.
|
||
|
+
|
||
|
+Both origin binaries and Tool are ready now, choose either option 1 or
|
||
|
+option 2 to deploy U-Boot.
|
||
|
+
|
||
|
+Package the image
|
||
|
+=================
|
||
|
+
|
||
|
+ > cd ../u-boot
|
||
|
+ > tools/mkimage -n rk322x -T rksd -d tpl/u-boot-spl.bin idbloader.img
|
||
|
+ > cat spl/u-boot-spl.bin >> idbloader.img
|
||
|
+
|
||
|
+ Get idbloader.img in this step.
|
||
|
+
|
||
|
+Flash the image to eMMC
|
||
|
+=======================
|
||
|
+Power on(or reset with RESET KEY) with MASKROM KEY preesed, and then:
|
||
|
+ > cd ..
|
||
|
+ > rkdeveloptool db rkbin/rk32/rk322x_loader_v1.04.232.bin
|
||
|
+ > rkdeveloptool wl 64 u-boot/idbloader.img
|
||
|
+ > rkdeveloptool wl 0x4000 u-boot/u-boot.itb
|
||
|
+ > rkdeveloptool rd
|
||
|
+
|
||
|
+Flash the image to SD card
|
||
|
+==========================
|
||
|
+ > dd if=u-boot/idbloader.img of=/dev/sdb seek=64
|
||
|
+ > dd if=u-boot/u-boot.itb of=/dev/sdb seek=16384
|
||
|
+
|
||
|
+You should be able to get U-Boot log message with OP-TEE boot info.
|
||
|
+
|
||
|
+For more detail, please reference to:
|
||
|
+http://opensource.rock-chips.com/wiki_Boot_option
|
||
|
diff --git a/include/configs/rk322x-box.h b/include/configs/rk322x-box.h
|
||
|
new file mode 100644
|
||
|
index 00000000..a909aa19
|
||
|
--- /dev/null
|
||
|
+++ b/include/configs/rk322x-box.h
|
||
|
@@ -0,0 +1,29 @@
|
||
|
+/* SPDX-License-Identifier: GPL-2.0+ */
|
||
|
+/*
|
||
|
+ * (C) Copyright 2017 Rockchip Electronics Co., Ltd
|
||
|
+ */
|
||
|
+
|
||
|
+#ifndef __CONFIG_H
|
||
|
+#define __CONFIG_H
|
||
|
+
|
||
|
+#define ROCKCHIP_DEVICE_SETTINGS \
|
||
|
+ "stdin=serial,usbkbd\0" \
|
||
|
+ "stdout=serial,vidconsole\0" \
|
||
|
+ "stderr=serial,vidconsole\0" \
|
||
|
+ "fdt_high=0xffffffff\0" \
|
||
|
+ "initrd_high=0xffffffff\0"
|
||
|
+
|
||
|
+#include <configs/rk322x_common.h>
|
||
|
+
|
||
|
+#undef BOOT_TARGET_DEVICES
|
||
|
+
|
||
|
+#define BOOT_TARGET_DEVICES(func) \
|
||
|
+ func(MMC, mmc, 1) \
|
||
|
+ func(USB, usb, 0) \
|
||
|
+ func(MMC, mmc, 0) \
|
||
|
+ func(PXE, pxe, na) \
|
||
|
+ func(DHCP, dchp, na)
|
||
|
+
|
||
|
+#define CONFIG_SYS_MMC_ENV_DEV 0
|
||
|
+
|
||
|
+#endif
|
||
|
diff --git a/board/rockchip/rk322x-box/rk322x-box.c b/board/rockchip/rk322x-box/rk322x-box.c
|
||
|
new file mode 100644
|
||
|
index 00000000..ff7d8c98
|
||
|
--- /dev/null
|
||
|
+++ b/board/rockchip/rk322x-box/rk322x-box.c
|
||
|
@@ -0,0 +1,21 @@
|
||
|
+// SPDX-License-Identifier: GPL-2.0+
|
||
|
+/*
|
||
|
+ * (C) Copyright 2017 Rockchip Electronics Co., Ltd
|
||
|
+ */
|
||
|
+
|
||
|
+#include <common.h>
|
||
|
+#include <dm.h>
|
||
|
+#include <asm/io.h>
|
||
|
+#include <asm/arch-rockchip/uart.h>
|
||
|
+#include <led.h>
|
||
|
+
|
||
|
+int board_early_init_r(void) {
|
||
|
+
|
||
|
+ /* LED setup */
|
||
|
+ if (IS_ENABLED(CONFIG_LED))
|
||
|
+ led_default_state();
|
||
|
+
|
||
|
+ return 0;
|
||
|
+
|
||
|
+}
|
||
|
+
|