Create uboot.env from uboot.txt
Add support for generation of uboot.env image from txt file
Fixes: https://github.com/OP-TEE/build/issues/85
Signed-off-by: Igor Opaniuk <igor.opaniuk@linaro.org>
Tested-by: Igor Opaniuk <igor.opaniuk@linaro.org> (RPi3)
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
diff --git a/rpi3.mk b/rpi3.mk
index 328878d..8f965c4 100644
--- a/rpi3.mk
+++ b/rpi3.mk
@@ -43,7 +43,8 @@
RPI3_FIRMWARE_PATH ?= $(BUILD_PATH)/rpi3/firmware
RPI3_HEAD_BIN ?= $(ROOT)/out/head.bin
RPI3_BOOT_CONFIG ?= $(RPI3_FIRMWARE_PATH)/config.txt
-RPI3_UBOOT_ENV ?= $(RPI3_FIRMWARE_PATH)/uboot.env
+RPI3_UBOOT_ENV ?= $(ROOT)/out/uboot.env
+RPI3_UBOOT_ENV_TXT ?= $(RPI3_FIRMWARE_PATH)/uboot.env.txt
RPI3_STOCK_FW_PATH ?= $(ROOT)/rpi3_firmware
OPTEE_OS_PAGER ?= $(OPTEE_OS_PATH)/out/arm/core/tee-pager.bin
@@ -55,10 +56,10 @@
################################################################################
# Targets
################################################################################
-all: rpi3-firmware arm-tf optee-os optee-client xtest u-boot \
+all: rpi3-firmware arm-tf optee-os optee-client xtest u-boot u-boot-jtag-bin\
linux update_rootfs
-all-clean: arm-tf-clean busybox-clean u-boot-clean optee-os-clean \
- optee-client-clean rpi3-firmware-clean head-bin-clean
+all-clean: arm-tf-clean busybox-clean u-boot-clean u-boot-jtag-bin-clean \
+ optee-os-clean optee-client-clean rpi3-firmware-clean head-bin-clean
-include toolchain.mk
@@ -100,11 +101,17 @@
u-boot: $(RPI3_HEAD_BIN)
$(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) rpi_3_defconfig
$(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) all
- cd $(U-BOOT_PATH) && cat $(RPI3_HEAD_BIN) $(U-BOOT_BIN) > $(U-BOOT_JTAG_BIN)
+ $(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) tools
u-boot-clean:
$(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) clean
+u-boot-jtag-bin: $(RPI3_UBOOT_ENV) u-boot
+ cd $(U-BOOT_PATH) && cat $(RPI3_HEAD_BIN) $(U-BOOT_BIN) > $(U-BOOT_JTAG_BIN)
+
+u-boot-jtag-bin-clean:
+ rm -f $(U-BOOT_JTAG_BIN)
+
$(RPI3_HEAD_BIN): $(RPI3_FIRMWARE_PATH)/head.S
mkdir -p $(ROOT)/out/
$(AARCH64_CROSS_COMPILE)as $< -o $(ROOT)/out/head.o
@@ -113,6 +120,13 @@
head-bin-clean:
rm -f $(RPI3_HEAD_BIN) $(ROOT)/out/head.o
+$(RPI3_UBOOT_ENV): $(RPI3_UBOOT_ENV_TXT) u-boot
+ mkdir -p $(ROOT)/out
+ $(U-BOOT_PATH)/tools/mkenvimage -s 0x4000 -o $(ROOT)/out/uboot.env $(RPI3_UBOOT_ENV_TXT)
+
+u-boot-env-clean:
+ rm -f $(RPI3_UBOOT_ENV)
+
################################################################################
# Busybox
################################################################################