1. 26 Aug, 2021 1 commit
    • Marcin Wojtas's avatar
      feat(plat/marvell/a8k): allow overriding default paths · 0b702afc
      Marcin Wojtas authored
      
      
      The common makefile used by every a8k/cn913x platform
      (a8k_common.mk) assumed default paths in PLAT_INCLUDES,
      BLE/BL31_PORTING_SOURCES. Allow overriding those
      variables, in order to avoid code duplication.
      
      It can be helpful in case using multiple board variants
      or sharing common settings between different platforms.
      
      Change-Id: Idce603e44ed04d99fb1e3e11a2bb395d552e2bf7
      Signed-off-by: default avatarMarcin Wojtas <mw@semihalf.com>
      0b702afc
  2. 10 Jul, 2021 3 commits
    • Pali Rohár's avatar
      fix(plat/marvell/a8k): Add missing build dependency for BLE target · 04738e69
      Pali Rohár authored
      
      
      BLE source files depend on external Marvell mv-ddr-marvell tree
      (specified in $(MV_DDR_PATH) variable) and its header files. Add
      dependency on $(MV_DDR_LIB) target which checks that variable
      $(MV_DDR_PATH) is correctly set and ensures that make completes
      compilation of mv-ddr-marvell tree.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I73968b24c45d9af1e3500b8db7a24bb4eb2bfa47
      04738e69
    • Pali Rohár's avatar
      fix(plat/marvell/a8k): Correctly set include directories for individual targets · 559ab2df
      Pali Rohár authored
      
      
      Do not set all include directories, including those for external targets
      in one PLAT_INCLUDES variable.
      
      Instead split them into variables:
      * $(PLAT_INCLUDES) for all TF-A BL images
      * BLE target specific $(PLAT_INCLUDES) only for Marvell BLE image
      * $(MV_DDR_INCLUDES) for targets in external Marvell mv-ddr-marvell tree
      
      Include directory $(CURDIR)/drivers/marvell is required by TF-A BL
      images, so move it from ble.mk to a8k_common.mk.
      
      Include directory $(MV_DDR_PATH) is needed only by Marvell BLE image, so
      move it into BLE target specific $(PLAT_INCLUDES) variable.
      
      And remaining include directories specified in ble.mk are needed only
      for building external dependences from Marvell mv-ddr tree, so move them
      into $(MV_DDR_INCLUDES) variable and correctly use it in $(MV_DDR_LIB)
      target.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I331f7de675dca2bc70733d56b768f00d56ae4a67
      559ab2df
    • Pali Rohár's avatar
      fix(plat/marvell/a8k): Require that MV_DDR_PATH is correctly set · 528dafc3
      Pali Rohár authored
      
      
      Target mrvl_flash depends on external mv_ddr source code which is not
      part of TF-A project. Do not expect that it is pre-downloaded at some
      specific location and require user to specify correct path to mv_ddr
      source code via MV_DDR_PATH build option.
      
      TF-A code for Armada 37x0 platform also depends on mv_ddr source code
      and already requires passing correct MV_DDR_PATH build option.
      
      So for A8K implement same checks for validity of MV_DDR_PATH option as
      are already used by TF-A code for Armada 37x0 platform.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I792f2bfeab0cec89b1b64e88d7b2c456e22de43a
      528dafc3
  3. 01 Jun, 2021 2 commits
  4. 20 Apr, 2021 7 commits
  5. 25 Feb, 2021 1 commit
  6. 24 Feb, 2021 1 commit
  7. 11 Feb, 2021 1 commit
  8. 29 Jan, 2021 2 commits
  9. 07 Jan, 2021 1 commit
    • Pali Rohár's avatar
      Makefile: Do not mark file targets as .PHONY target · a9812206
      Pali Rohár authored
      
      
      Only non-file targets should be set a .PHONY. Otherwise if file target is
      set as .PHONY then targets which depends on those file .PHONY targets would
      be always rebuilt even when their prerequisites are not changed.
      
      File target which needs to be always rebuilt can be specified in Make
      system via having a prerequisite on some .PHONY target, instead of marking
      whole target as .PHONY. In Makefile projects it is common to create empty
      .PHONY target named FORCE for this purpose.
      
      This patch changes all file targets which are set as .PHONY to depends on
      new .PHONY target FORCE, to ensure that these file targets are always
      rebuilt (as before). Basically they are those targets which calls external
      make subprocess.
      
      After FORCE target is specified in main Makefile, remove it from other
      Makefile files to prevent duplicate definitions.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: Iee3b4e0de93879b95eb29a1745a041538412e69e
      a9812206
  10. 07 Dec, 2020 1 commit
    • Pali Rohár's avatar
      plat: marvell: armada: Add missing FORCE, .PHONY and clean targets · e4bbd39c
      Pali Rohár authored
      
      
      FORCE target is used as a dependency for other file targets which needs to
      be always rebuilt. .PHONY target is standard Makefile target which specify
      non-file targets and therefore needs to be always rebuilt.
      
      Targets clean, realclean and distclean are .PHONY targets used to remove
      built files. Correctly set that mrvl_clean target is prerequisite for these
      clean targets to ensure that built files are removed.
      
      Finally this change with usage of FORCE target allows to remove mrvl_clean
      hack from the prerequisites of a8k ${DOIMAGETOOL} target which was used
      just to ensure that ${DOIMAGETOOL} is always rebuilt via make subprocess.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I2fa8971244b43f101d846fc433ef7b0b6f139c92
      e4bbd39c
  11. 19 Nov, 2020 1 commit
    • Pali Rohár's avatar
      plat: marvell: armada: Add new target mrvl_bootimage · 91bc2da7
      Pali Rohár authored
      
      
      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: default avatarPali Rohár <pali@kernel.org>
      Change-Id: Ic58303b37a1601be9a06ff83b7a279cb7cfc8280
      91bc2da7
  12. 21 Oct, 2020 1 commit
    • Pali Rohár's avatar
      plat: marvell: armada: Building ${DOIMAGETOOL} is only for a8k · b5e3d540
      Pali Rohár authored
      
      
      Currently a3k target is misusing ${DOIMAGETOOL} target for building flash
      and UART images. It is not used for building image tool.
      
      So move ${DOIMAGETOOL} target from common marvell include file into a8k
      include file and add correct invocation of ${MAKE} into a3k for building
      flash and UART images.
      
      Part of this change is also checks that MV_DDR_PATH for a3k was specified
      by user as this option is required for building a3k flash and UART images.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I5ae9d08b8505460933f17836c9b6435fd6e51bb6
      b5e3d540
  13. 19 Oct, 2020 1 commit
    • Pali Rohár's avatar
      plat: marvell: armada: Fix including plat/marvell/marvell.mk file · 0412b732
      Pali Rohár authored
      
      
      Include file plat/marvell/marvell.mk for platform A3700 was included two
      times. Once from file plat/marvell/armada/a3k/common/a3700_common.mk and
      second time from common file plat/marvell/armada/common/marvell_common.mk.
      
      It caused following warning every time was make called:
      
          plat/marvell/marvell.mk:51: warning: overriding recipe for target 'mrvl_clean'
          plat/marvell/marvell.mk:51: warning: ignoring old recipe for target 'mrvl_clean'
      
      Change in this commit removes inclusion of plat/marvell/marvell.mk file in
      common file plat/marvell/armada/common/marvell_common.mk. As a80x0 platform
      needs this include file, add it also into a80x0 platform specific include
      file lat/marvell/armada/a8k/common/a8k_common.mk.
      
      Also moves inclusion of plat/marvell/marvell.mk file in a3700 platform file
      plat/marvell/armada/a3k/common/a3700_common.mk at correct place. Global
      plat/marvell/marvell.mk expects that variables DOIMAGEPATH and DOIMAGETOOL
      are already defined, but it defines MARVELL_SECURE_BOOT variable which is
      needed by plat/marvell/armada/a3k/common/a3700_common.mk.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I5cbbd7eb8a3376924419f9850516b2a4924be5aa
      0412b732
  14. 04 Oct, 2020 1 commit
  15. 04 Aug, 2020 1 commit
    • Grant Likely's avatar
      Use abspath to dereference $BUILD_BASE · 29214e95
      Grant Likely authored
      
      
      If the user tries to change BUILD_BASE to put the build products outside
      the build tree the compile will fail due to hard coded assumptions that
      $BUILD_BASE is a relative path. Fix by using $(abspath $(BUILD_BASE))
      to rationalize to an absolute path every time and remove the relative
      path assumptions.
      
      This patch also adds documentation that BUILD_BASE can be specified by
      the user.
      Signed-off-by: default avatarGrant Likely <grant.likely@arm.com>
      Signed-off-by: default avatarManish Pandey <manish.pandey2@arm.com>
      Change-Id: Ib1af874de658484aaffc672f30029b852d2489c8
      29214e95
  16. 30 Jul, 2020 4 commits
  17. 10 Jul, 2020 3 commits
  18. 03 Jul, 2020 1 commit
  19. 19 Jun, 2020 7 commits