layerscape: add u-boot environment support for OpenWrt boot

This patch is to implement u-boot environment txt files
to support OpenWrt boot for all layerscape devices.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
This commit is contained in:
Yangbo Lu 2018-07-17 17:42:47 +08:00 committed by Hauke Mehrtens
parent dcf57c766a
commit ad1dbc0ca3
9 changed files with 86 additions and 7 deletions

View file

@ -29,27 +29,32 @@ define Package/uboot-layerscape-armv8_32b/Config
TITLE:=$(2)
DEPENDS:=@TARGET_layerscape_armv8_32b
CONFIG:=$(3)
ENV_SIZE:=$(4)
endef
endef
define Package/uboot-layerscape-armv8_32b/ls1012ardb
TITLE:=U-Boot image for NXP LS1012ARDB
CONFIG:=ls1012ardb-uboot.bin
ENV_SIZE:=0x40000
endef
define Package/uboot-layerscape-armv8_32b/ls1012afrdm
TITLE:=U-Boot image for NXP LS1012FRDM
CONFIG:=ls1012afrdm-uboot.bin
ENV_SIZE:=0x40000
endef
define Package/uboot-layerscape-armv8_32b/ls1043ardb
TITLE:=U-Boot image for NXP LS1043ARDB
CONFIG:=ls1043ardb-uboot.bin
ENV_SIZE:=0x20000
endef
define Package/uboot-layerscape-armv8_32b/ls1046ardb
TITLE:=U-Boot image for NXP LS1046ARDB
CONFIG:=ls1046ardb-uboot.bin
ENV_SIZE:=0x2000
endef
define Build/Compile
@ -59,6 +64,9 @@ define Package/uboot-layerscape-armv8_32b/Install
define Package/u-boot-$(1)-image/install
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/$(CONFIG) $(STAGING_DIR_IMAGE)/
$(PKG_BUILD_DIR)/tools/mkenvimage -s $(ENV_SIZE) \
-o $(STAGING_DIR_IMAGE)/$(1)-uboot-env.bin \
../uboot-layerscape/files/$(1)-uEnv.txt
endef
endef
@ -70,7 +78,7 @@ UBOOTS := \
$(foreach u,$(UBOOTS), \
$(eval $(Package/uboot-layerscape-armv8_32b/$(u))) \
$(eval $(call Package/uboot-layerscape-armv8_32b/Config,$(u),$(TITLE),$(CONFIG))) \
$(eval $(call Package/uboot-layerscape-armv8_32b/Config,$(u),$(TITLE),$(CONFIG),$(ENV_SIZE))) \
$(eval $(call Package/uboot-layerscape-armv8_32b/Install,$(u))) \
$(eval $(call BuildPackage,u-boot-$(u)-image)) \
)

View file

@ -24,20 +24,24 @@ define U-Boot/Default
BUILD_SUBTARGET:=armv8_64b
BUILD_DEVICES:=$(1)
UBOOT_IMAGE:=u-boot-dtb.bin
ENV_SIZE:=0x2000
endef
define U-Boot/ls1012ardb
NAME:=NXP LS1012ARDB
UBOOT_CONFIG:=ls1012ardb_qspi
ENV_SIZE:=0x40000
endef
define U-Boot/ls1012afrdm
NAME:=NXP LS1012AFRDM
UBOOT_CONFIG:=ls1012afrdm_qspi
ENV_SIZE:=0x40000
endef
define U-Boot/ls1043ardb
NAME:=NXP LS1043ARDB
ENV_SIZE:=0x20000
endef
define U-Boot/ls1046ardb
@ -67,6 +71,9 @@ define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(INSTALL_DATA) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) \
$(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-uboot.bin
$(PKG_BUILD_DIR)/tools/mkenvimage -s $(ENV_SIZE) \
-o $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-uboot-env.bin \
files/$(BUILD_VARIANT)-uEnv.txt
endef
define Package/u-boot/install/default

View file

@ -0,0 +1,8 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
bootargs=ubi.mtd=9 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;pfe stop;run qspi_boot
bootdelay=3

View file

@ -0,0 +1,8 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
bootargs=ubi.mtd=9 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;pfe stop;run qspi_boot
bootdelay=3

View file

@ -0,0 +1,9 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
nor_boot=cp.b 60f00000 $fdtaddr 100000;cp.b 61000000 $loadaddr 1000000;bootm $loadaddr - $fdtaddr
bootargs=root=/dev/mtdblock9 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=60000000.nor:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(rootfs)
bootcmd=echo starting openwrt ...;run nor_boot
bootdelay=3

View file

@ -0,0 +1,9 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
bootargs=ubi.mtd=10 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;run qspi_boot
bootdelay=3

View file

@ -0,0 +1,10 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xa0000000
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
mc_init=sf probe 0:0;sf read 80000000 a00000 300000;sf read 80300000 e00000 100000;fsl_mc start mc 80000000 80300000;sf read 80400000 d00000 100000;fsl_mc apply dpl 80400000
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
bootargs=ubi.mtd=11 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=20c0000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;run mc_init;run qspi_boot
bootdelay=3

View file

@ -0,0 +1,10 @@
fdtaddr=0x8f000000
loadaddr=0x81000000
fdt_high=0xa0000000
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
mc_init=fsl_mc start mc 580a00000 580e00000;fsl_mc apply dpl 580d00000
nor_boot=cp.b 580f00000 $fdtaddr 100000;cp.b 581000000 $loadaddr 1000000;bootm $loadaddr - $fdtaddr
bootargs=root=/dev/mtdblock10 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS1,115200 mtdparts=580000000.nor:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(rootfs)
bootcmd=echo starting openwrt ...;run mc_init;run nor_boot
bootdelay=3

View file

@ -18,6 +18,10 @@ define Build/append-ls-uboot
dd if=$(STAGING_DIR_IMAGE)/$(1)-uboot.bin >> $@
endef
define Build/append-ls-uboot-env
dd if=$(STAGING_DIR_IMAGE)/$(1)-uboot-env.bin >> $@
endef
define Build/append-ls-ppa
dd if=$(STAGING_DIR_IMAGE)/$(1)-ppa.itb >> $@
endef
@ -86,7 +90,8 @@ define Device/ls1043ardb
endif
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 9M | \
append-ls-fman $(1) | pad-to 15M | \
append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
@ -109,7 +114,8 @@ define Device/ls1046ardb
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 9M | \
append-ls-fman $(1) | pad-to 15M | \
append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
@ -132,7 +138,8 @@ define Device/ls1012ardb
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 10M | \
append-ls-ppfe | pad-to 15M | \
append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
@ -155,7 +162,8 @@ define Device/ls1012afrdm
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 10M | \
append-ls-ppfe | pad-to 15M | \
append-ls-dtb $$(DEVICE_DTS) | pad-to 16M | \
@ -177,7 +185,8 @@ define Device/ls1088ardb
BLOCKSIZE := 256KiB
PAGESIZE := 1
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 10M | \
append-ls-mc $(1) | pad-to 13M | \
append-ls-dpl $(1) | pad-to 14M | \
@ -195,7 +204,8 @@ define Device/ls2088ardb
layerscape-ppa-ls2088ardb
DEVICE_DTS = ../../../arm64/boot/dts/freescale/fsl-ls2088a-rdb
IMAGE/firmware.bin = append-ls-rcw $(1) | pad-to 1M | \
append-ls-uboot $(1) | pad-to 4M | \
append-ls-uboot $(1) | pad-to 3M | \
append-ls-uboot-env $(1) | pad-to 4M | \
append-ls-ppa $(1) | pad-to 10M | \
append-ls-mc $(1) | pad-to 13M | \
append-ls-dpl $(1) | pad-to 14M | \