uboot-sunxi: build A64 SoC and pine64 U-Boot

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

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
openwrt-18.06
Hauke Mehrtens 2017-07-15 22:53:35 +02:00
parent ea46d386e0
commit e080a7ce07
2 changed files with 22 additions and 1 deletions

View File

@ -126,6 +126,14 @@ define U-Boot/pangolin
UENV:=pangolin UENV:=pangolin
endef 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 := \ UBOOT_TARGETS := \
A10-OLinuXino-Lime \ A10-OLinuXino-Lime \
A13-OLinuXino \ A13-OLinuXino \
@ -143,13 +151,21 @@ UBOOT_TARGETS := \
Linksprite_pcDuino3 \ Linksprite_pcDuino3 \
Lamobo_R1 \ Lamobo_R1 \
orangepi_plus \ orangepi_plus \
pangolin pangolin \
pine64_plus
UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
UBOOT_MAKE_FLAGS += \
BL31=$(STAGING_DIR_IMAGE)/bl31.bin
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE) $(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 $(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 \ mkimage -C none -A arm -T script -d uEnv-$(UENV).txt \
$(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr
endef endef

View File

@ -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