1. 14 Aug, 2020 11 commits
    • Mark Dykes's avatar
      Merge changes from topic "tegra-downstream-07092020" into integration · 01096cac
      Mark Dykes authored
      * changes:
        Tegra: memctrl: remove unused TZRAM setup function
        Tegra: reorganize drivers and lib folders
      01096cac
    • Manish Pandey's avatar
      Merge changes from topic "sp_dual_signing" into integration · b693fbf4
      Manish Pandey authored
      * changes:
        SPM: Add owner field to cactus secure partitions
        SPM: Alter sp_gen.mk entry depending on owner of partition
        plat/arm: enable support for Plat owned SPs
      b693fbf4
    • Ruari Phipps's avatar
      SPM: Add owner field to cactus secure partitions · ad86d35a
      Ruari Phipps authored
      
      
      For supporting dualroot CoT for Secure Partitions a new optional field
      "owner" is introduced which will be used to sign the SP with
      corresponding signing domain. To demonstrate its usage, this patch adds
      owners to cactus Secure Partitions.
      Signed-off-by: default avatarRuari Phipps <ruari.phipps@arm.com>
      Change-Id: I7b760580355fc92edf5402cecc38c38125dc1cae
      ad86d35a
    • Ruari Phipps's avatar
      SPM: Alter sp_gen.mk entry depending on owner of partition · 1e7528ec
      Ruari Phipps authored
      
      
      With recently introduced dualroot CoT for SPs where they are owned
      either by SiP or by Platform. SiP owned SPs index starts at SP_PKG1_ID
      while Plat owned SPs index starts at SP_PKG5_ID.
      
      This patch modifies SP makefile generator script to take CoT as an
      argument and if it is "dualroot" then generates SP_PKG in order
      mentioned above, otherwise generates it sequentially.
      Signed-off-by: default avatarRuari Phipps <ruari.phipps@arm.com>
      Change-Id: Iffad1131787be650a9462f6f8cc09b603cddb3b8
      1e7528ec
    • Manish Pandey's avatar
      plat/arm: enable support for Plat owned SPs · 990d972f
      Manish Pandey authored
      
      
      For Arm platforms SPs are loaded by parsing tb_fw_config.dts and
      adding them to SP structure sequentially, which in-turn is appended to
      loadable image list.
      
      With recently introduced dualroot CoT for SPs where they are owned
      either by SiP or by Platform. SiP owned SPs index starts at SP_PKG1_ID
      and Plat owned SPs index starts at SP_PKG5_ID. As the start index of SP
      depends on the owner, there should be a mechanism to parse owner of a SP
      and put it at the correct index in SP structure.
      
      This patch adds support for parsing a new optional field "owner" and
      based on it put SP details(UUID & Load-address) at the correct index in
      SP structure.
      
      Change-Id: Ibd255b60d5c45023cc7fdb10971bef6626cb560b
      Signed-off-by: default avatarManish Pandey <manish.pandey2@arm.com>
      990d972f
    • Sandrine Bailleux's avatar
      Merge changes from topic "sp_dual_signing" into integration · 007be5ec
      Sandrine Bailleux authored
      * changes:
        dualroot: add chain of trust for Platform owned SPs
        cert_create: add Platform owned secure partitions support
      007be5ec
    • Sandrine Bailleux's avatar
    • Sandrine Bailleux's avatar
      Merge changes from topic "bl1-misra" into integration · fb6a9ed6
      Sandrine Bailleux authored
      * changes:
        Specify signed-ness of constants
        Prevent colliding identifiers
      fb6a9ed6
    • Jimmy Brisson's avatar
      Use true instead of 1 in while · 92069086
      Jimmy Brisson authored
      
      
      This resolves MISRA defects such as:
      
          plat/common/plat_bl1_common.c:63:[MISRA C-2012 Rule 14.4 (required)]
          The condition expression "1" does not have an essentially boolean type.
      
      Change-Id: I679411980ad661191fbc834a44a5eca5494fd0e2
      Signed-off-by: default avatarJimmy Brisson <jimmy.brisson@arm.com>
      92069086
    • Jimmy Brisson's avatar
      Specify signed-ness of constants · e1d5be56
      Jimmy Brisson authored
      
      
      We relyed on the default signed-ness of constants, which is usually
      signed. This can create MISRA violations, such as:
      
           bl1/bl1_main.c:257:[MISRA C-2012 10.8 (required)] Cast of composite
           expression off essential type signed to essential type unsigned
      
      These constants were only used as unsigned, so this patch makes them
      explicitly unsigned.
      
      Change-Id: I5f1310c881e936077035fbb1d5ffb449b45de3ad
      Signed-off-by: default avatarJimmy Brisson <jimmy.brisson@arm.com>
      e1d5be56
    • Jimmy Brisson's avatar
      Prevent colliding identifiers · d74c6b83
      Jimmy Brisson authored
      
      
      There was a collision between the name of the typedef in the CASSERT and
      something else, so we make the name of the typedef unique to the
      invocation of DEFFINE_SVC_UUID2 by appending the name that's passed into
      the macro. This eliminates the following MISRA violation:
      
          bl1/bl1_main.c:233:[MISRA C-2012 Rule 5.6 (required)] Identifier
          "invalid_svc_uuid" is already used to represent a typedef.
      
      This also resolves MISRA rule 5.9.
      
      These renamings are as follows:
        * tzram -> secram. This matches the function call name as it has
        sec_mem in it's  name
        * fw_config_base -> config_base. This file does not mess with
        hw_conig, so there's little chance of confusion
      
      Change-Id: I8734ba0956140c8e29b89d0596d10d61a6ef351e
      Signed-off-by: default avatarJimmy Brisson <jimmy.brisson@arm.com>
      d74c6b83
  2. 13 Aug, 2020 5 commits
  3. 12 Aug, 2020 2 commits
    • Manish Pandey's avatar
      dualroot: add chain of trust for Platform owned SPs · 2947412d
      Manish Pandey authored
      
      
      For dualroot CoT there are two sets of SP certificates, one owned by
      Silicon Provider(SiP) and other owned by Platform. Each certificate can
      have a maximum of 4 SPs.
      
      This patch reduces the number of SiP owned SPs from 8 to 4 and adds
      the remaining 4 to Plat owned SP.
      Plat owned SP certificate is signed using Platform RoT key and
      protected against anti-rollback using the Non-trusted Non-volatile
      counter.
      
      Change-Id: Idc3ddd87d6d85a5506a7435f45a6ec17c4c50425
      Signed-off-by: default avatarManish Pandey <manish.pandey2@arm.com>
      2947412d
    • Manish Pandey's avatar
      cert_create: add Platform owned secure partitions support · 23d5f03a
      Manish Pandey authored
      
      
      Add support to generate a certificate named "plat-sp-cert" for Secure
      Partitions(SP) owned by Platform.
      Earlier a single certificate file "sip-sp-cert" was generated which
      contained hash of all 8 SPs, with this change SPs are divided into
      two categories viz "SiP owned" and "Plat owned" containing 4 SPs each.
      
      Platform RoT key pair is used for signing.
      Signed-off-by: default avatarManish Pandey <manish.pandey2@arm.com>
      Change-Id: I5bd493cfce4cf3fc14b87c8ed1045f633d0c92b6
      23d5f03a
  4. 11 Aug, 2020 2 commits
  5. 10 Aug, 2020 5 commits
    • Manish Pandey's avatar
      Merge changes from topic "release/14.0" into integration · 8f09da46
      Manish Pandey authored
      * changes:
        docs: marvell: update PHY porting layer description
        docs: marvell: update path in marvell documentation
        docs: marvell: update build instructions with CN913x
        plat: marvell: octeontx: add support for t9130
        plat: marvell: t9130: add SVC support
        plat: marvell: t9130: update AVS settings
        plat: marvell: t9130: pass actual CP count for load_image
        plat: marvell: armada: a7k: add support to SVC validation mode
        plat: marvell: armada: add support for twin-die combined memory device
      8f09da46
    • Julius Werner's avatar
      37a12f04
    • Alexei Fedorov's avatar
      TF-A AMU extension: fix detection of group 1 counters. · f3ccf036
      Alexei Fedorov authored
      
      
      This patch fixes the bug when AMUv1 group1 counters was
      always assumed being implemented without checking for its
      presence which was causing exception otherwise.
      The AMU extension code was also modified as listed below:
      - Added detection of AMUv1 for ARMv8.6
      - 'PLAT_AMU_GROUP1_NR_COUNTERS' build option is removed and
      number of group1 counters 'AMU_GROUP1_NR_COUNTERS' is now
      calculated based on 'AMU_GROUP1_COUNTERS_MASK' value
      - Added bit fields definitions and access functions for
      AMCFGR_EL0/AMCFGR and AMCGCR_EL0/AMCGCR registers
      - Unification of amu.c Aarch64 and Aarch32 source files
      - Bug fixes and TF-A coding style compliant changes.
      
      Change-Id: I14e407be62c3026ebc674ec7045e240ccb71e1fb
      Signed-off-by: default avatarAlexei Fedorov <Alexei.Fedorov@arm.com>
      f3ccf036
    • Alexei Fedorov's avatar
      plat/arm: Reduce size of BL31 binary · fa1fdb22
      Alexei Fedorov authored
      
      
      BL31 binary size is aligned to 4KB because of the
      code in include\plat\arm\common\arm_reclaim_init.ld.S:
          __INIT_CODE_UNALIGNED__ = .;
          . = ALIGN(PAGE_SIZE);
          __INIT_CODE_END__ = .;
      with all the zero data after the last instruction of
      BL31 code to the end of the page.
      This causes increase in size of BL31 binary stored in FIP
      and its loading time by BL2.
      This patch reduces the size of BL31 image by moving
      page alignment from __INIT_CODE_END__ to __STACKS_END__
      which also increases the stack size for secondary CPUs.
      
      Change-Id: Ie2ec503fc774c22c12ec506d74fd3ef2b0b183a9
      Signed-off-by: default avatarAlexei Fedorov <Alexei.Fedorov@arm.com>
      fa1fdb22
    • Saurabh Gorecha's avatar
      sc7180 platform support · 5bd9c17d
      Saurabh Gorecha authored
      
      
      Adding support for QTI CHIP SC7180 on ATF
      
      Change-Id: I0d82d3a378036003fbd0bc4784f61464bb76ea82
      Signed-off-by: default avatarSaurabh Gorecha <sgorecha@codeaurora.org>
      Co-authored-by: default avatarMaulik Shah <mkshah@codeaurora.org>
      5bd9c17d
  6. 09 Aug, 2020 4 commits
  7. 08 Aug, 2020 1 commit
    • johpow01's avatar
      MISRA cleanup in mem_region and semihosting files · 633fa4cd
      johpow01 authored
      
      
      MISRA defect cleanup and general code cleanup in mem_region.c and
      semihosting.c.  This task also called for cleanup of the ARM NOR flash
      driver but that was removed at some point since the Jira task was
      created.  This patch fixes all MISRA defects in these files except for a
      few "Calling function "console_flush()" which returns error information
      without testing the error information." errors which can't really be
      avoided.
      
      Defects Fixed
      
      File                           Line Rule
      lib/semihosting/semihosting.c  70   MISRA C-2012 Rule 14.4 (required)
      lib/semihosting/semihosting.c  197  MISRA C-2012 Rule 14.3 (required)
      lib/semihosting/semihosting.c  210  MISRA C-2012 Rule 14.4 (required)
      lib/utils/mem_region.c         128  MISRA C-2012 Rule 12.1 (advisory)
      Signed-off-by: default avatarJohn Powell <john.powell@arm.com>
      Change-Id: I21a039d1cfccd6aa4301da09daec15e373305a80
      633fa4cd
  8. 07 Aug, 2020 2 commits
  9. 06 Aug, 2020 2 commits
  10. 05 Aug, 2020 4 commits
  11. 04 Aug, 2020 2 commits