1. 17 Mar, 2015 7 commits
  2. 16 Mar, 2015 3 commits
    • Vikram Kanigiri's avatar
      Use ARM CCI driver on FVP and Juno platforms · 4991ecdc
      Vikram Kanigiri authored
      This patch updates the FVP and Juno platform ports to use the common
      driver for ARM Cache Coherent Interconnects.
      
      Change-Id: Ib142f456b9b673600592616a2ec99e9b230d6542
      4991ecdc
    • Vikram Kanigiri's avatar
      Common driver for ARM Cache Coherent Interconnects · 23e47ede
      Vikram Kanigiri authored
      Even though both CCI-400 and CCI-500 IPs have different configurations
      with respect to the number and types of supported interfaces, their
      register offsets and programming sequences are similar. This patch
      creates a common driver for enabling and disabling snoop transactions
      and DVMs with both the IPs.
      
      New platform ports which implement one of these IPs should use this
      common driver. Existing platform ports which implement CCI-400 should
      migrate to the common driver as the standalone CCI-400 will be
      deprecated in the future.
      
      Change-Id: I3ccd0eb7b062922d2e4a374ff8c21e79fa357556
      23e47ede
    • Vikram Kanigiri's avatar
      Add macro to calculate number of elements in an array · a7e98ad5
      Vikram Kanigiri authored
      This patch defines the ARRAY_SIZE macro for calculating number of elements
      in an array and uses it where appropriate.
      
      Change-Id: I72746a9229f0b259323972b498b9a3999731bc9b
      a7e98ad5
  3. 13 Mar, 2015 1 commit
    • Vikram Kanigiri's avatar
      Initialise cpu ops after enabling data cache · 12e7c4ab
      Vikram Kanigiri authored
      The cpu-ops pointer was initialized before enabling the data cache in the cold
      and warm boot paths. This required a DCIVAC cache maintenance operation to
      invalidate any stale cache lines resident in other cpus.
      
      This patch moves this initialization to the bl31_arch_setup() function
      which is always called after the data cache and MMU has been enabled.
      
      This change removes the need:
       1. for the DCIVAC cache maintenance operation.
       2. to initialise the CPU ops upon resumption from a PSCI CPU_SUSPEND
          call since memory contents are always preserved in this case.
      
      Change-Id: Ibb2fa2f7460d1a1f1e721242025e382734c204c6
      12e7c4ab
  4. 11 Mar, 2015 2 commits
    • Juan Castillo's avatar
      checkpatch: ignore GIT_COMMIT_ID · 9b4ee6b3
      Juan Castillo authored
      By default, the checkpatch script requires that commit references
      included in commit messages follow a predefined format. Github
      merge commits do not follow this convention, causing the code
      style test to fail when a new pull request is created.
      
      This patch adds the ignore GIT_COMMIT_ID option to the checkpatch
      parameters. This flag indicates the tool to ignore the commit
      message format.
      
      Change-Id: I37133cc5cf803f664b8ff00f62d458b39f06918c
      9b4ee6b3
    • Sandrine Bailleux's avatar
      Juno: Disable workaround for Cortex-A57 erratum #806969 · 9cda6a94
      Sandrine Bailleux authored
      Cortex-A57 erratum #806969 applies to revision r0p0 of the CPU
      but does not manifest itself on Juno r0. It is not applicable
      to Juno r1 in any case.
      
      This patch modifies the Juno platform Makefile to no longer
      compile this erratum workaround in.
      
      Change-Id: I32b16835b2ac897e639e869ab2b78b62a51a0139
      9cda6a94
  5. 10 Mar, 2015 2 commits
    • Sandrine Bailleux's avatar
      User guide: Add dependency on libssl-dev for cert_create tool · 4da85bb0
      Sandrine Bailleux authored
      The 'libssl-dev' package must be installed on the host to build the
      certificate generation tool. This patch adds it to the list of
      required tools in the User Guide.
      
      Change-Id: I018381fb14b7c2d2bd6f2b7929aaad0571f7eb2e
      4da85bb0
    • Sandrine Bailleux's avatar
      Update help message printed by the Makefile · 1b578596
      Sandrine Bailleux authored
      The message printed by 'make help' is incomplete. It doesn't
      mention all relevant supported targets. This patch updates it.
      
      The format of the first line of the help message has been changed
      so that it no longer lists all supported targets. This eases the
      maintenance as we don't need to update the list in 2 places
      anymore whenever a new target is added.
      
      Also add a reference to the user guide to get the list of
      supported options.
      
      Change-Id: I79d8b815b0ffc0c43b4c05124378fce0e938365c
      1b578596
  6. 06 Mar, 2015 2 commits
    • Sandrine Bailleux's avatar
      Enable type-checking of arguments passed to printf() et al. · dad25049
      Sandrine Bailleux authored
      This patch modifies the declarations of the functions printf() et al.
      and adds the right GCC attribute to request the compiler to check
      the type of the arguments passed to these functions against the given
      format string. This will ensure that the compiler outputs warning
      messages like the following whenever it detects an inconsistency:
      
       file.c:42: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long int’
      
      It also fixes the type mismatch inconsistencies that it revealed
      across the code base.
      
      NOTE: THIS PATCH MAY FORCE PLATFORM PORTS OR SP/SPDS THAT USE THE
      PRINTF FAMILY OF FUNCTIONS TO FIX ANY TYPE MISMATCH INCONSISTENCIES.
      
      Change-Id: If36bb54ec7d6dd2cb4791d89b02a24ac13fd2df6
      dad25049
    • danh-arm's avatar
      Merge pull request #260 from jcastillo-arm/jc/tbb_sha256 · b5b12347
      danh-arm authored
      TBB: use SHA256 to generate the certificate signatures
      b5b12347
  7. 05 Mar, 2015 5 commits
    • Juan Castillo's avatar
      TBB: use SHA256 to generate the certificate signatures · ea4ec3aa
      Juan Castillo authored
      This patch replaces SHA1 by SHA256 in the 'cert_create' tool, so
      certificate signatures are generated according to the NSA Suite B
      cryptographic algorithm requirements.
      
      Documentation updated accordingly.
      
      Change-Id: I7be79e6b2b62dac8dc78a4f4f5006e37686bccf6
      ea4ec3aa
    • Juan Castillo's avatar
      TBB: fix build target 'all' dependency on certificates · 85cdfdb2
      Juan Castillo authored
      Build target 'all' fails when GENERATE_COT=1 and no BL3-3 or
      BL3-0 (if required) images are specified. The reason is that,
      when GENERATE_COT=1, a dependency on the certificates is added
      to the target 'all', and the certificates depend on the BL3-3
      and BL3-0 images, causing the build process to fail if the
      images are not specified.
      
      This patch moves the dependency on the certificates from 'all' to
      'fip'. Target 'all' may be used to build the individual images.
      The certificates will be created by calling the target 'fip', where
      BL3-3 and BL3-0 (if required) must be specified.
      
      Change-Id: I870beb4e8f9f1bfad1d35b09c850a7ce3c9f4ec6
      85cdfdb2
    • danh-arm's avatar
      Merge pull request #261 from sandrine-bailleux/sb/coding-style · 5930eadb
      danh-arm authored
      Ignore C library files when checking coding style
      Fix violations to the coding style
      5930eadb
    • Sandrine Bailleux's avatar
      Fix violations to the coding style · ba592e28
      Sandrine Bailleux authored
      All coding style violations have been fixed in a previous patch and
      since then, each individual patch has been checked in this regard.
      However, the latest version of the checkpatch.pl script from the Linux
      kernel is more advanced and it is able to flag new errors in the
      Trusted Firmware codebase. This patch fixes them.
      
      Change-Id: I1f332f2440984be85d36b231bb83260368987077
      ba592e28
    • Sandrine Bailleux's avatar
      Ignore C library files when checking coding style · 95d5353c
      Sandrine Bailleux authored
      The C library source files embedded into the Trusted Firmware
      tree are not required to comply to the Linux Coding Style.
      Unfortunately, 'make checkpatch' does take them into account.
      
      This patch modifies the Makefile so that the C library source
      and header files are now ignored by 'make checkpatch'.
      
      It also instructs the checkpatch.pl script to not treat the
      presence of a 'Change-Id' line in the commit message as an error.
      
      Change-Id: I38196202efe518bae3a57c2affe2ed7758c9f69c
      95d5353c
  8. 25 Feb, 2015 2 commits
  9. 19 Feb, 2015 1 commit
  10. 16 Feb, 2015 1 commit
    • Robin Murphy's avatar
      Juno: clear DMA-330 SMMU security state · 75f8261c
      Robin Murphy authored
      By default the SMMU for the DMA-330 is configured to mark some stream IDs
      as always belonging to the Secure world. As a result, if EL1 software turns
      the SMMU on, certain Non-Secure accesses get rewritten as Secure, making
      them bypass translation and access Secure physical addresses directly.
      
      Since the current Juno board firmware configures the DMA-330 hardware as
      Non-Secure, rewrite the SMMU's default SSD table as well to prevent any
      unexpected behaviour in EL1.
      
      Change-Id: Iaa81d883eecf28d80eb182b9ce475684bf9c718c
      75f8261c
  11. 12 Feb, 2015 2 commits
    • Soby Mathew's avatar
      Export maximum affinity using PLATFORM_MAX_AFFLVL macro · 8c32bc26
      Soby Mathew authored
      This patch removes the plat_get_max_afflvl() platform API
      and instead replaces it with a platform macro PLATFORM_MAX_AFFLVL.
      This is done because the maximum affinity level for a platform
      is a static value and it is more efficient for it to be defined
      as a platform macro.
      
      NOTE: PLATFORM PORTS NEED TO BE UPDATED ON MERGE OF THIS COMMIT
      
      Fixes ARM-Software/tf-issues#265
      
      Change-Id: I31d89b30c2ccda30d28271154d869060d50df7bf
      8c32bc26
    • Soby Mathew's avatar
      Minimize MAX_MMAP_REGIONS for each BL stage · ce41250e
      Soby Mathew authored
      This patch defines MAX_MMAP_REGIONS separately for each BL stage
      as per its requirements. This minimizes the size of the mmap[]
      array.
      
      Fixes ARM-Software/tf-issues#201
      
      Change-Id: I19b15e1a91a8365b2ecf24e2cd71937cb73916b2
      ce41250e
  12. 04 Feb, 2015 2 commits
  13. 03 Feb, 2015 4 commits
  14. 02 Feb, 2015 4 commits
  15. 30 Jan, 2015 2 commits
    • danh-arm's avatar
      Merge pull request #251 from soby-mathew/sm/reset_handler_fix_v2 · 6a4932bd
      danh-arm authored
      Fix the Cortex-A57 reset handler register usage v2
      6a4932bd
    • Soby Mathew's avatar
      Fix the Cortex-A57 reset handler register usage · 683f788f
      Soby Mathew authored
      The CPU specific reset handlers no longer have the freedom
      of using any general purpose register because it is being invoked
      by the BL3-1 entry point in addition to BL1. The Cortex-A57 CPU
      specific reset handler was overwriting x20 register which was being
      used by the BL3-1 entry point to save the entry point information.
      This patch fixes this bug by reworking the register allocation in the
      Cortex-A57 reset handler to avoid using x20. The patch also
      explicitly mentions the register clobber list for each of the
      callee functions invoked by the reset handler
      
      Change-Id: I28fcff8e742aeed883eaec8f6c4ee2bd3fce30df
      683f788f