plat: marvell: armada: Add new target mrvl_bootimage
This new target builds boot-image.bin binary as described in documentation. This image does not contain WTMI image and therefore WTP repository is not required for building. Having ability to build just this boot-image.bin binary without full flash-image.bin is useful for A3720 Turris MOX board which does not use Marvell's WTP and a3700_utils. To reduce duplicity between a8k and a3k code, define this new target and also definitions for $(BUILD_PLAT)/$(BOOT_IMAGE) in common include file marvell_common.mk. For this purpose it is needed to include plat/marvell/marvell.mk file from a3700_common.mk unconditionally (and not only when WTP is defined). Now when common file plat/marvell/marvell.mk does not contain definition for building $(DOIMAGETOOL), it is possible to move its inclusion at the top of the a3700_common.mk file. Signed-off-by: Pali Rohár <pali@kernel.org> Change-Id: Ic58303b37a1601be9a06ff83b7a279cb7cfc8280
This commit is contained in:
parent
c6a7ab7787
commit
91bc2da73c
|
@ -15,6 +15,8 @@ MARVELL_DRV_BASE := drivers/marvell
|
|||
MARVELL_COMMON_BASE := $(MARVELL_PLAT_BASE)/common
|
||||
HANDLE_EA_EL3_FIRST := 1
|
||||
|
||||
include plat/marvell/marvell.mk
|
||||
|
||||
#*********** A3700 *************
|
||||
|
||||
# GICV3
|
||||
|
@ -67,8 +69,6 @@ ifneq (${WTP},)
|
|||
DOIMAGEPATH := $(WTP)
|
||||
DOIMAGETOOL := $(DOIMAGEPATH)/wtptp/src/TBB_Linux/release/TBB_linux
|
||||
|
||||
include plat/marvell/marvell.mk
|
||||
|
||||
ifeq ($(MARVELL_SECURE_BOOT),1)
|
||||
DOIMAGE_CFG := $(DOIMAGEPATH)/atf-tim.txt
|
||||
IMAGESPATH := $(DOIMAGEPATH)/tim/trusted
|
||||
|
@ -125,10 +125,7 @@ $(DOIMAGETOOL):
|
|||
$(Q)$(MAKE) --no-print-directory -C $(CRYPTOPP_PATH) -f GNUmakefile
|
||||
$(Q)$(MAKE) --no-print-directory -C $(DOIMAGEPATH)/wtptp/src/TBB_Linux -f TBB_linux.mak LIBDIR=$(CRYPTOPP_PATH)
|
||||
|
||||
mrvl_flash: ${BUILD_PLAT}/${FIP_NAME} ${DOIMAGETOOL}
|
||||
$(shell truncate -s %128K ${BUILD_PLAT}/bl1.bin)
|
||||
$(shell cat ${BUILD_PLAT}/bl1.bin ${BUILD_PLAT}/${FIP_NAME} > ${BUILD_PLAT}/${BOOT_IMAGE})
|
||||
$(shell truncate -s %4 ${BUILD_PLAT}/${BOOT_IMAGE})
|
||||
mrvl_flash: ${BUILD_PLAT}/${BOOT_IMAGE} ${DOIMAGETOOL}
|
||||
$(if $(value MV_DDR_PATH),,$(error "Platform '${PLAT}' for target '$@' requires MV_DDR_PATH. Please set MV_DDR_PATH to point to the right directory"))
|
||||
${Q}${MAKE} --no-print-directory -C ${DOIMAGEPATH} WTMI_IMG=$(WTMI_IMG) MV_DDR_PATH=$(MV_DDR_PATH)
|
||||
$(shell truncate -s %4 $(WTMI_IMG))
|
||||
|
|
|
@ -160,8 +160,6 @@ ${DOIMAGETOOL}: mrvl_clean
|
|||
@$(DOIMAGE_LIBS_CHECK)
|
||||
${Q}${MAKE} --no-print-directory -C ${DOIMAGEPATH}
|
||||
|
||||
mrvl_flash: ${BUILD_PLAT}/${FIP_NAME} ${DOIMAGETOOL} ${BUILD_PLAT}/ble.bin
|
||||
$(shell truncate -s %128K ${BUILD_PLAT}/bl1.bin)
|
||||
$(shell cat ${BUILD_PLAT}/bl1.bin ${BUILD_PLAT}/${FIP_NAME} > ${BUILD_PLAT}/${BOOT_IMAGE})
|
||||
mrvl_flash: ${BUILD_PLAT}/${BOOT_IMAGE} ${DOIMAGETOOL}
|
||||
${DOIMAGETOOL} ${DOIMAGE_FLAGS} ${BUILD_PLAT}/${BOOT_IMAGE} ${BUILD_PLAT}/${FLASH_IMAGE}
|
||||
|
||||
|
|
|
@ -85,3 +85,12 @@ endif
|
|||
ifeq (${MSS_SUPPORT}, 1)
|
||||
include $(MARVELL_PLAT_BASE)/common/mss/mss_common.mk
|
||||
endif
|
||||
|
||||
$(BUILD_PLAT)/$(BOOT_IMAGE): $(BUILD_PLAT)/bl1.bin $(BUILD_PLAT)/$(FIP_NAME)
|
||||
@cp $(BUILD_PLAT)/bl1.bin $(BUILD_PLAT)/$(BOOT_IMAGE) || { rm -f $(BUILD_PLAT)/$(BOOT_IMAGE); false; }
|
||||
@truncate -s %128K $(BUILD_PLAT)/$(BOOT_IMAGE) || { rm -f $(BUILD_PLAT)/$(BOOT_IMAGE); false; }
|
||||
@cat $(BUILD_PLAT)/$(FIP_NAME) >> $(BUILD_PLAT)/$(BOOT_IMAGE) || { rm -f $(BUILD_PLAT)/$(BOOT_IMAGE); false; }
|
||||
@truncate -s %4 $(BUILD_PLAT)/$(BOOT_IMAGE) || { rm -f $(BUILD_PLAT)/$(BOOT_IMAGE); false; }
|
||||
@echo "Built $@ successfully"
|
||||
|
||||
mrvl_bootimage: $(BUILD_PLAT)/$(BOOT_IMAGE)
|
||||
|
|
Loading…
Reference in New Issue