
On Thu, Nov 15, 2018 at 10:07:49AM +0800, Ryder Lee wrote:
This patch adds support for MTK boot image generation.
Signed-off-by: Weijie Gao weijie.gao@mediatek.com Signed-off-by: Ryder Lee ryder.lee@mediatek.com Reviewed-by: Simon Glass sjg@chromium.org
[snip]
diff --git a/Makefile b/Makefile index 552687d..a5d0c1b 100644 --- a/Makefile +++ b/Makefile @@ -852,6 +852,8 @@ ALL-y += u-boot-tegra.bin u-boot-nodtb-tegra.bin ALL-$(CONFIG_OF_SEPARATE) += u-boot-dtb-tegra.bin endif
+ALL-$(CONFIG_ARCH_MEDIATEK) += u-boot-mtk.bin
# Add optional build target if defined in board/cpu/soc headers ifneq ($(CONFIG_BUILD_TARGET),) ALL-y += $(CONFIG_BUILD_TARGET:"%"=%) @@ -1359,6 +1361,24 @@ u-boot.elf: u-boot.bin $(Q)$(OBJCOPY) -I binary $(PLATFORM_ELFFLAGS) $< u-boot-elf.o $(call if_changed,u-boot-elf)
+# MediaTek's ARM-based u-boot needs a header to contains its load address +# which is parsed by the BootROM. +# If the SPL build is enabled, the header will be added to the spl binary, +# and the spl binary and the u-boot.img will be combined into one file. +# Otherwise the header will be added to the u-boot.bin directly.
+ifeq ($(CONFIG_SPL),y) +u-boot-mtk.bin: u-boot.dtb u-boot.img spl/u-boot-spl-mtk.bin FORCE
- $(call if_changed,binman)
+else +MKIMAGEFLAGS_u-boot-mtk.bin = -T mtk_image \
- -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) \
- -n "$(patsubst "%",%,$(CONFIG_MTK_BROM_HEADER_INFO))"
+u-boot-mtk.bin: u-boot.bin FORCE
- $(call if_changed,mkimage)
+endif
This doesn't build for me. With the whole series applied: $ ./tools/buildman/buildman -dvel mediatek boards.cfg is up to date. Nothing to do. Building current source for 2 boards (2 threads, 8 jobs per thread) arm: + mt7629_rfb +(mt7629_rfb) make[1]: *** No rule to make target 'spl/u-boot-spl-mtk.bin', needed by 'u-boot-mtk.bin'. Stop. +(mt7629_rfb) make: *** [sub-make] Error 2 1 0 1 /2 mt7623n_bpir2