This creates a U-Boot for the aarch64 SoC A64 on the pine64 board.

Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de>
---
 package/boot/uboot-sunxi/Makefile     | 18 +++++++++++++++++-
 package/boot/uboot-sunxi/uEnv-a64.txt |  5 +++++
 2 files changed, 22 insertions(+), 1 deletion(-)
 create mode 100644 package/boot/uboot-sunxi/uEnv-a64.txt

diff --git a/package/boot/uboot-sunxi/Makefile 
b/package/boot/uboot-sunxi/Makefile
index 27dff1074e..a144ce7042 100644
--- a/package/boot/uboot-sunxi/Makefile
+++ b/package/boot/uboot-sunxi/Makefile
@@ -126,6 +126,14 @@ define U-Boot/pangolin
   UENV:=pangolin
 endef
 
+define U-Boot/pine64_plus
+  BUILD_SUBTARGET:=cortexa53
+  NAME:=Pine64 Plus A64
+  BUILD_DEVICES:=sun50i-a64-pine64-plus
+  DEPENDS:=+PACKAGE_u-boot-pine64_plus:arm-trusted-firmware-sunxi
+  UENV:=a64
+endef
+
 UBOOT_TARGETS := \
        A10-OLinuXino-Lime \
        A13-OLinuXino \
@@ -143,13 +151,21 @@ UBOOT_TARGETS := \
        Linksprite_pcDuino3 \
        Lamobo_R1 \
        orangepi_plus \
-       pangolin
+       pangolin \
+       pine64_plus
 
 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
 
+UBOOT_MAKE_FLAGS += \
+       BL31=$(STAGING_DIR_IMAGE)/bl31.bin
+
 define Build/InstallDev
        $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
+ifeq ($(SUBTARGET),cortexa53)
+       cat $(PKG_BUILD_DIR)/spl/sunxi-spl.bin $(PKG_BUILD_DIR)/u-boot.itb > 
$(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
+else
        $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) 
$(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
+endif
        mkimage -C none -A arm -T script -d uEnv-$(UENV).txt \
                $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr
 endef
diff --git a/package/boot/uboot-sunxi/uEnv-a64.txt 
b/package/boot/uboot-sunxi/uEnv-a64.txt
new file mode 100644
index 0000000000..7a717fdc0f
--- /dev/null
+++ b/package/boot/uboot-sunxi/uEnv-a64.txt
@@ -0,0 +1,5 @@
+setenv loadkernel fatload mmc 0 \$kernel_addr_r uImage
+setenv loaddtb fatload mmc 0 \$fdt_addr_r dtb
+setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait 
earlycon=uart,mmio32,0x01c28000
+setenv uenvcmd run loadkernel \&\& run loaddtb \&\& booti \$kernel_addr_r - 
\$fdt_addr_r
+run uenvcmd
-- 
2.11.0


_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to