Skip to content
  1. Nov 25, 2019
  2. Nov 22, 2019
  3. Nov 20, 2019
    • Edison Ai's avatar
      Core: Move tfm_spm_db files to spm folder · a8e751e0
      Edison Ai authored
      
      
      The tfm_spm_db.inc and tfm_spm_db.inc.template are used by SPM, so that
      move them from services to spm.
      
      Change-Id: I1410bb559bb2653e918f112f449f962e2f82f75b
      Signed-off-by: default avatarEdison Ai <edison.ai@arm.com>
      a8e751e0
    • Edison Ai's avatar
      Build: Align manifest service · 45b22551
      Edison Ai authored
      
      
      Align manifest service to PSA FF 1.0.0:
      - Remove "signal" from service region.
      - Change signal macro names postfix from "_SIG" to "_SIGNAL".
      
      Change-Id: Ib405f5cc8ec9b4a04e294a19957c4b425f6ccb65
      Signed-off-by: default avatarEdison Ai <edison.ai@arm.com>
      45b22551
    • Edison Ai's avatar
      Build: Use generated PID · b2134e6f
      Edison Ai authored
      
      
      Use the partition ID generated by tools:
      - Remove tfm_partition_defs.inc.
      - Change the partition name with "_LINKER" postfix in linker files and
        related files. Because the partition name is used as macro for
        partition ID.
      - Remove "id" attribute from manifest file.
      
      Change-Id: I3e60954e6d15f62fea0f1345862d2865743f8c53
      Signed-off-by: default avatarEdison Ai <edison.ai@arm.com>
      b2134e6f
    • Edison Ai's avatar
      Build: Create pid.h file · 387663fc
      Edison Ai authored
      
      
      - Create the partition ID header file by tools, which is used for macro
        definitions that map from Secure Partition names to Secure Partition
        IDs.
      - The partition ID is added to the "tfm_manifest_list.yaml" manually so
        that the values will keep the same if the build sequence of secure
        partition is changed.
      - The "short_name" in "tfm_manifest_list.yaml" should be the same as the
        "name" in the related manifest.
      
      Change-Id: I0955a700e2a0c195f97c38c3ceb29f3b8c237674
      Signed-off-by: default avatarEdison Ai <edison.ai@arm.com>
      387663fc
  4. Nov 18, 2019
  5. Nov 15, 2019
    • Mate Toth-Pal's avatar
      Build: Fix deprecated yaml.load calls · 1bad7590
      Mate Toth-Pal authored and Mate Toth-Pal's avatar Mate Toth-Pal committed
      PyYAML's yaml.load() function provides arbitrary code execution before
      PyYAML v4.1 and is therefore deprecated - as of v5.1 - with a single
      file argument as described in
      
      https://github.com/yaml/pyyaml/wiki/PyYAML-yaml.load(input)-Deprecation
      
      
      
      Use yaml.SafeLoader in TF-M generator scripts.
      
      Change-Id: I9eee8805053dd653fca946c4376be3eebd4bfd53
      Signed-off-by: Mate Toth-Pal's avatarMate Toth-Pal <mate.toth-pal@arm.com>
      1bad7590
    • Andrei Narkevitch's avatar
      Platform: Add an option to run code in SPE from RAM · 1d83d5bb
      Andrei Narkevitch authored
      
      
      Define new TFM_RAM_CODE SRAM region in gcc and clang linker
      scripts for code with .ramfunc attribute. This region is
      intended for privileged secure code running from SRAM.
      
      Signed-off-by: default avatarAndrei Narkevitch <ainh@cypress.com>
      Change-Id: I4ab72f878271f20d28dbdd1cbfb84ed814c16caf
      1d83d5bb
    • David Hu's avatar
      Platform: Specify the starting address of privileged secure data area · 557efdc4
      David Hu authored
      
      
      In multi-core topology, Armv6-M/Armv7-M MPU requires a MPU region
      base address to align with its size. Specify the starting address
      of privileged secure data area when the multi-core platform defines
      the S_DATA_PRIV_START. It can make MPU configuration more easier to
      satisfy Armv6-M/Armv7-M MPU alignment on multi-core platforms.
      
      Change-Id: I57904b772b352b1bbd1b4b9015093da258358e00
      Signed-off-by: default avatarDavid Hu <david.hu@arm.com>
      557efdc4
    • David Hu's avatar
      Platform: Adjust ARMCLANG linker script to support multi-core topology · 2c6c995a
      David Hu authored
      
      
      Adjust the secure data layout in ARMLANG linker script to support
      build in multi-core topology.
      - Armv6-M/Armv7-M MPU requires MPU region base address to align
        with MPU region size. Multi-core platforms may have to use
        multiple MPU regions to cover a data section which doesn't
        satisfy the alignment. The interleaved unprivileged/privileged
        data sections layout will run out of Armv6-M/Armv7-M MPU regions.
        To save both MPU regions and memory resource, separate the
        unprivileged and privileged secure data sections and group them
        into unprivileged/privileged data area respectively.
        Thus, multi-core platforms can just cover a whole unprivileged
        data area and a whole privileged data area, with much fewer MPU
        regions cost.
      - Put privileged data sections at the bottom of secure data area
        to align with GCC linker script layout.
      - Move BL2 shared data section and Main Stack to privileged data
        area in multi-core topology.
      - Move Process Stack to privileged data area in multi-core
        topology.
      
      Change-Id: I7e30906ce85cf325dc0ebde6711893f1a2835795
      Signed-off-by: default avatarDavid Hu <david.hu@arm.com>
      2c6c995a
    • David Hu's avatar
      Platform: Adjust GNUARM linker script to support multi-core topology · a81bef3b
      David Hu authored
      
      
      Adjust the secure data layout in GNUARM linker script to support
      build in multi-core topology.
      - Armv6-M/Armv7-M MPU requires MPU region base address to align
        with MPU region size. Multi-core platforms may have to use
        multiple MPU regions to cover a data section which doesn't
        satisfy the alignment. The interleaved unprivileged/privileged
        data sections layout will run out of Armv6-M/Armv7-M MPU regions.
        To save both MPU regions and memory resource, separate the
        unprivileged and privileged secure data sections and group them
        into unprivileged/privileged data area respectively.
        Thus multi-core platform can just cover a whole unprivileged data
        area and a whole privileged data area, with much fewer MPU regions
        cost.
      - Put privileged data sections at the bottom of secure data area to
        make sure TFM_DATA and TFM_BSS sections are at the end.
        Otherwise, the two sections will collect data/bss from other
        sections.
      - Move BL2 shared data section and Main Stack to privileged data
        area in multi-core topology.
      - Move Process Stack to privileged data area in multi-core
        topology.
      
      Change-Id: I544769542e5e65ca90b8bfb1af81f59e536fd006
      Signed-off-by: default avatarDavid Hu <david.hu@arm.com>
      a81bef3b
  6. Nov 14, 2019
  7. Nov 13, 2019
    • Andrei Narkevitch's avatar
      plat: add NSPE platform-specific hw initialization · 014e413a
      Andrei Narkevitch authored
      
      
       Adding tfm_ns_platform_init() function.
      
       Contrarily to SystemInit() intended for a high priority hw initialization
       (for example clock and power subsystems), and called on a very early boot
       stage from startup code, this function is called from C code, hence variables
       and other drivers data are protected from being cleared up by the C library
       init.
      
       This function can be used for initializing platform-specific hw resources
       (e.g. IPC, UART) thus freeing up application main() function from the platform
       details.
      
       Implemented as a "weak" functions, it can be overwritten by a platform
       specific implementation.
      
      Signed-off-by: default avatarAndrei Narkevitch <ainh@cypress.com>
      Change-Id: I16091d35a77ba3e246692cff9df7f31ea082ab27
      014e413a
    • Ashutosh Singh's avatar
      Doc: Update contribution guide · 429ceecc
      Ashutosh Singh authored
      
      
      Clarification added for the review process for design and code
      contributions.
      Steps added to explain how to create a ticket and patch.
      
      Change-Id: I1402c58f65629b2dffa159b150c1a949af29c828
      Signed-off-by: default avatarAshutosh Singh <ashutosh.singh@arm.com>
      429ceecc
  8. Nov 12, 2019
  9. Nov 11, 2019
  10. Nov 07, 2019
Loading