1. 28 Jun, 2019 1 commit
  2. 12 Apr, 2019 1 commit
    • Ambroise Vincent's avatar
      Mbed TLS: Remove weak heap implementation · 2374ab17
      Ambroise Vincent authored
      
      
      The implementation of the heap function plat_get_mbedtls_heap() becomes
      mandatory for platforms supporting TRUSTED_BOARD_BOOT.
      
      The shared Mbed TLS heap default weak function implementation is
      converted to a helper function get_mbedtls_heap_helper() which can be
      used by the platforms for their own function implementation.
      
      Change-Id: Ic8f2994e25e3d9fcd371a21ac459fdcafe07433e
      Signed-off-by: default avatarAmbroise Vincent <ambroise.vincent@arm.com>
      2374ab17
  3. 26 Feb, 2019 1 commit
    • Ying-Chun Liu (PaulLiu)'s avatar
      rpi3: sdhost: SDHost driver improvement · 2c8ef2ae
      Ying-Chun Liu (PaulLiu) authored
      
      
      This commit improves the SDHost driver for RPi3 as following:
       * Unblock MMC_CMD(17). Using MMC_CMD(17) is more efficient on
         block reading.
       * In some low probability that SEND_OP_COND might results CRC7
         error. We can consider that the command runs correctly. We don't
         need to retry this command so removing the code for retry.
       * Using MMC_BUS_WIDTH_1 as MMC default value to improve the stability.
       * Increase the clock to 50Mhz in data mode to speed up the io.
       * Change the pull resistors configuration to gain more stability.
      Signed-off-by: default avatarYing-Chun Liu (PaulLiu) <paulliu@debian.org>
      2c8ef2ae
  4. 01 Feb, 2019 1 commit
  5. 31 Jan, 2019 1 commit
  6. 28 Jan, 2019 2 commits
  7. 25 Jan, 2019 1 commit
  8. 16 Jan, 2019 1 commit
    • Igor Opaniuk's avatar
      rpi3: fix RPI3_PRELOADED_DTB_BASE usage · eabbdafe
      Igor Opaniuk authored
      
      
      In case if `RPI3_PRELOADED_DTB_BASE` isn't defined explicitly with
      proper pre-loaded DTB address, `add_define` macro defined in
      `make_helpers/build_macros.mk` still supplies this definition to the
      compiler like `-DRPI3_PRELOADED_DTB_BASE`, and it's obviously is set to
      default value 1.
      
      This simply leads to the wrong `MAP_NS_DTB` region definition (base_va
      is set `0x1` instead of `0x00010000`) in `plat/rpi3/rpi3_common.c`:
      
      Which causes aligment check to fail in `mmap_add_region_check()`:
      VERBOSE: base_pa: 0x00000001, base_va: 0x00000001, size: 0x00010000
      ...
      ERROR:   mmap_add_region_check() failed. error -22
      Signed-off-by: default avatarIgor Opaniuk <igor.opaniuk@linaro.org>
      eabbdafe
  9. 15 Jan, 2019 1 commit
  10. 04 Jan, 2019 2 commits
    • Antonio Nino Diaz's avatar
      rpi3: Remove unneeded include paths from Makefile · 8e7b27a4
      Antonio Nino Diaz authored
      
      
      Change-Id: I20d164f7573ebc24935e92a924472e29c8a0e3a0
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      8e7b27a4
    • Antonio Nino Diaz's avatar
      Sanitise includes across codebase · 09d40e0e
      Antonio Nino Diaz authored
      Enforce full include path for includes. Deprecate old paths.
      
      The following folders inside include/lib have been left unchanged:
      
      - include/lib/cpus/${ARCH}
      - include/lib/el3_runtime/${ARCH}
      
      The reason for this change is that having a global namespace for
      includes isn't a good idea. It defeats one of the advantages of having
      folders and it introduces problems that are sometimes subtle (because
      you may not know the header you are actually including if there are two
      of them).
      
      For example, this patch had to be created because two headers were
      called the same way: e0ea0928 ("Fix gpio includes of mt8173 platform
      to avoid collision."). More recently, this patch has had similar
      problems: 46f9b2c3 ("drivers: add tzc380 support").
      
      This problem was introduced in commit 4ecca339
      
       ("Move include and
      source files to logical locations"). At that time, there weren't too
      many headers so it wasn't a real issue. However, time has shown that
      this creates problems.
      
      Platforms that want to preserve the way they include headers may add the
      removed paths to PLAT_INCLUDES, but this is discouraged.
      
      Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8f
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      09d40e0e
  11. 07 Dec, 2018 1 commit
    • Julius Werner's avatar
      drivers/console: Link console framework code by default · 985ee0b7
      Julius Werner authored
      
      
      This patch makes the build system link the console framework code by
      default, like it already does with other common libraries (e.g. cache
      helpers). This should not make a difference in practice since TF is
      linked with --gc-sections, so the linker will garbage collect all
      functions and data that are not referenced by any other code. Thus, if a
      platform doesn't want to include console code for size reasons and
      doesn't make any references to console functions, the code will not be
      included in the final binary.
      
      To avoid compatibility issues with older platform ports, only make this
      change for the MULTI_CONSOLE_API.
      
      Change-Id: I153a9dbe680d57aadb860d1c829759ba701130d3
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      985ee0b7
  12. 19 Nov, 2018 1 commit
    • Pete Batard's avatar
      rpi3: add RPI3_USE_UEFI_MAP build option · 4dcf1fad
      Pete Batard authored
      
      
      The default Raspberry Pi 3 memory mapping for ATF is geared towards
      the use of uboot + Linux. This creates issues when trying to use
      ATF with an UEFI payload and Windows on ARM64.
      
      We therefore introduce new build option RPI3_USE_UEFI_MAP, that
      enables the build process to use an alternate memory mapping that
      is compatible with UEFI + Windows (as well as UEFI + Linux).
      
      Fixes ARM-software/tf-issues#649
      Signed-off-by: default avatarPete Batard <pete@akeo.ie>
      4dcf1fad
  13. 13 Nov, 2018 1 commit
    • Pete Batard's avatar
      rpi3: add RPI3_RUNTIME_UART build option · 6d5c61de
      Pete Batard authored
      
      
      Some OSes (e.g. Ubuntu 18.04 LTS on Raspberry Pi 3) may disable the
      runtime UART in a manner that prevents the system from rebooting if
      ATF tries to send runtime messages there.
      
      Also, we don't want the firmware to share the UART with normal
      world, as this can be a DoS attack vector into the secure world.
      
      This patch fixes these 2 issues by introducing new build option
      RPI3_RUNTIME_UART, that disables the runtime UART by default.
      
      Fixes ARM-software/tf-issues#647
      Signed-off-by: default avatarPete Batard <pete@akeo.ie>
      6d5c61de
  14. 08 Nov, 2018 1 commit
    • Antonio Nino Diaz's avatar
      Standardise header guards across codebase · c3cf06f1
      Antonio Nino Diaz authored
      
      
      All identifiers, regardless of use, that start with two underscores are
      reserved. This means they can't be used in header guards.
      
      The style that this project is now to use the full name of the file in
      capital letters followed by 'H'. For example, for a file called
      "uart_example.h", the header guard is UART_EXAMPLE_H.
      
      The exceptions are files that are imported from other projects:
      
      - CryptoCell driver
      - dt-bindings folders
      - zlib headers
      
      Change-Id: I50561bf6c88b491ec440d0c8385c74650f3c106e
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      c3cf06f1
  15. 24 Oct, 2018 1 commit
    • Antonio Nino Diaz's avatar
      rpi3: Add mem reserve region to DTB if present · 5341b42e
      Antonio Nino Diaz authored
      
      
      When a device tree blob is present at a known address, instead of, for
      example, relying on the user modifying the Linux command line to warn
      about the memory reserved for the Trusted Firmware, pass it on the DTB.
      
      The current code deletes the memory reserved for the default bootstrap
      of the Raspberry Pi and adds the region used by the Trusted Firmware.
      
      This system replaces the previous one consisting on adding
      ``memmap=16M$256M`` to the Linux command line. It's also meant to be
      used by U-Boot and any other bootloader that understands DTB files.
      
      Change-Id: I13ee528475fb043d6e8d9e9f24228e37ac3ac436
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      5341b42e
  16. 10 Oct, 2018 1 commit
  17. 28 Sep, 2018 1 commit
  18. 22 Aug, 2018 1 commit
  19. 17 Aug, 2018 1 commit
  20. 15 Aug, 2018 1 commit
  21. 30 Jul, 2018 1 commit
  22. 16 Jul, 2018 7 commits
  23. 14 Jul, 2018 2 commits
  24. 13 Jul, 2018 1 commit
  25. 12 Jul, 2018 1 commit
  26. 11 Jul, 2018 1 commit
  27. 05 Jul, 2018 1 commit
  28. 19 Jun, 2018 1 commit
  29. 27 Mar, 2018 1 commit
    • Antonio Nino Diaz's avatar
      rpi3: Use new console APIs · e0f21f62
      Antonio Nino Diaz authored
      
      
      Switch to the new console APIs enabled by setting MULTI_CONSOLE_API=1.
      
      The crash console doesn't use this API, it uses internally the core
      functions of the 16550 console.
      
      `bl31_plat_runtime_setup` is no longer needed. When this platform port
      was introduced, that function used to disable the console. It was needed
      to override that behaviour. The new behaviour is to switch to the
      runtime console. The console is registered for all scopes (boot, crash
      and runtime) in `rpi3_console_init` so it is not needed to override the
      default behaviour anymore.
      
      Update documentation.
      
      Change-Id: If2ee8f91044216183b7ef142e5c05ad6220ae92f
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      e0f21f62
  30. 26 Mar, 2018 1 commit
  31. 29 Jan, 2018 1 commit