1. 18 Sep, 2019 1 commit
  2. 01 Aug, 2019 2 commits
    • Julius Werner's avatar
      Switch AARCH32/AARCH64 to __aarch64__ · 402b3cf8
      Julius Werner authored
      
      
      NOTE: AARCH32/AARCH64 macros are now deprecated in favor of __aarch64__.
      
      All common C compilers pre-define the same macros to signal which
      architecture the code is being compiled for: __arm__ for AArch32 (or
      earlier versions) and __aarch64__ for AArch64. There's no need for TF-A
      to define its own custom macros for this. In order to unify code with
      the export headers (which use __aarch64__ to avoid another dependency),
      let's deprecate the AARCH32 and AARCH64 macros and switch the code base
      over to the pre-defined standard macro. (Since it is somewhat
      unintuitive that __arm__ only means AArch32, let's standardize on only
      using __aarch64__.)
      
      Change-Id: Ic77de4b052297d77f38fc95f95f65a8ee70cf200
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      402b3cf8
    • Julius Werner's avatar
      Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ · d5dfdeb6
      Julius Werner authored
      
      
      NOTE: __ASSEMBLY__ macro is now deprecated in favor of __ASSEMBLER__.
      
      All common C compilers predefine a macro called __ASSEMBLER__ when
      preprocessing a .S file. There is no reason for TF-A to define it's own
      __ASSEMBLY__ macro for this purpose instead. To unify code with the
      export headers (which use __ASSEMBLER__ to avoid one extra dependency),
      let's deprecate __ASSEMBLY__ and switch the code base over to the
      predefined standard.
      
      Change-Id: Id7d0ec8cf330195da80499c68562b65cb5ab7417
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      d5dfdeb6
  3. 12 Jul, 2019 1 commit
  4. 26 Apr, 2019 1 commit
  5. 04 Jan, 2019 1 commit
    • 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
  6. 10 Dec, 2018 1 commit
  7. 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
  8. 28 Sep, 2018 1 commit
  9. 26 Sep, 2018 1 commit
    • Haojian Zhuang's avatar
      hikey: fix build issue for clang · 00a64624
      Haojian Zhuang authored
      
      
      plat/hisilicon/hikey/include/plat_macros.S:19:55: error: unexpected token in '.asciz' directive
       .asciz "gicd_ispendr regs (Offsets 0x200 - 0x278)\n" " Offset:\t\t\tvalue\n"
                                                            ^
      Makefile:720: recipe for target 'build/hikey/debug/bl1/cortex_a53.o' failed
      make: *** [build/hikey/debug/bl1/cortex_a53.o] Error 1
      
      Merge two lines into one line.
      Signed-off-by: default avatarHaojian Zhuang <haojian.zhuang@linaro.org>
      00a64624
  10. 22 Jul, 2018 1 commit
  11. 20 Jul, 2018 1 commit
  12. 06 Jul, 2018 1 commit
    • Teddy Reed's avatar
      hikey: Add development TBB support · e59a3bff
      Teddy Reed authored
      
      
      This patch adds experimental support for TRUSTED_BOARD_BOOT to the
      Hikey. This is adapted from the RPi3 and QEMU implementations.
      
      Since the Hikey starts from BL2 the TRUSTED_BOARD_BOOT ROT begins there
      too. When TRUSTED_BOARD_BOOT is defined, the BL1 build is skipped.
      
      See the following example:
      
      make \
       PLAT=hikey \
       BL33=u-boot.bin \
       SCP_BL2=mcuimage.bin \
       TRUSTED_BOARD_BOOT=1 \
       MBEDTLS_DIR=../../mbedtls \
       GENERATE_COT=1 \
       all fip
      Signed-off-by: default avatarTeddy Reed <teddy.reed@gmail.com>
      e59a3bff
  13. 12 Mar, 2018 1 commit
    • Michael Brandl's avatar
      plat/hikey: boot memory layout to dedicated file · 4368ae07
      Michael Brandl authored
      
      
      Boot memory layout is specific for a platform, but should not be
      mixed up with other platform specific attributes. A separate file is
      much cleaner and better to compare with other platforms. Take a look
      at plat/poplar where it is done the same way.
      
      Moved hikey_def.h to system include folder and moved includes from
      hikey_def.h to more general platform_def.h.
      Signed-off-by: default avatarMichael Brandl <git@fineon.pw>
      4368ae07
  14. 05 Mar, 2018 2 commits
  15. 27 Feb, 2018 1 commit
  16. 01 Nov, 2017 1 commit
  17. 18 Oct, 2017 1 commit
  18. 13 Sep, 2017 1 commit
  19. 07 Sep, 2017 1 commit
    • Leo Yan's avatar
      Hikey: enable CPU debug module · e246617b
      Leo Yan authored
      
      
      Every CPU has its own debug module and this module is used by JTAG
      debugging and coresight tracing. If without enabling it, it's easily to
      introduce lockup issue when we enable debugging features.
      
      This patch is to enable CPU debug module when power on CPU; this allows
      connecting to all cores through JTAG and used by kernel coresight
      driver.
      Signed-off-by: default avatarMatthias Welwarsky <maw@sysgo.com>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      e246617b
  20. 01 Sep, 2017 2 commits
  21. 26 Jul, 2017 1 commit
    • Leo Yan's avatar
      hikey: Disable VBUS_DET interrupt for PMIC · c9e8774c
      Leo Yan authored
      
      
      After disconnect Jumper pin 1-2 in J15 header, the signal VBUS_DET is to
      be pulled down to low level. This will assert the interrupt signal in
      PMIC and trigger IRQ in GIC; the asserted signal from VBUS_DET is level
      triggered and kernel reports the warning for unhooked interrupt handling;
      and VBUS_DET stays with low level, this triggers IRQ storm in kernel.
      
      This patch is to disable interrupt for VBUS_DET in PMIC, this can
      dismiss the verbose log and IRQ storm after kernel booting.
      
      [   40.835279] irq 57: nobody cared (try booting with the "irqpoll" option)
      [   40.842075] CPU: 0 PID: 980 Comm: irq/57-hi655x-p Not tainted 4.4.77-568944-g576a0114dec8-dirty #667
      [   40.851303] Hardware name: HiKey Development Board (DT)
      [   40.856580] Call trace:
      [   40.859060] [<ffffff800808c4cc>] dump_backtrace+0x0/0x1e0
      [   40.864516] [<ffffff800808c8ac>] show_stack+0x20/0x28
      [   40.869622] [<ffffff80084b9688>] dump_stack+0xa8/0xe0
      [   40.874729] [<ffffff800812dd5c>] __report_bad_irq+0x40/0xec
      [   40.880360] [<ffffff800812e0bc>] note_interrupt+0x1e4/0x2d8
      [   40.885992] [<ffffff800812b11c>] handle_irq_event_percpu+0xd8/0x268
      [   40.892324] [<ffffff800812b2f8>] handle_irq_event+0x4c/0x7c
      [   40.897955] [<ffffff800812ecbc>] handle_level_irq+0xcc/0x178
      [   40.903672] [<ffffff800812a778>] generic_handle_irq+0x34/0x4c
      [   40.909481] [<ffffff80085074c8>] pl061_irq_handler+0xa8/0x124
      [   40.915286] [<ffffff800812a778>] generic_handle_irq+0x34/0x4c
      [   40.921092] [<ffffff800812a820>] __handle_domain_irq+0x90/0xf8
      [   40.926985] [<ffffff8008082620>] gic_handle_irq+0x58/0xa8
      Signed-off-by: default avatarDmitry Shmidt <dimitrysh@google.com>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      c9e8774c
  22. 12 Jul, 2017 2 commits
    • Victor Chong's avatar
      hikey: Add BL32 (OP-TEE) support · 3b6e88a2
      Victor Chong authored
      
      Signed-off-by: default avatarVictor Chong <victor.chong@linaro.org>
      3b6e88a2
    • Victor Chong's avatar
      hikey: Remove unnecessary code · c0cde364
      Victor Chong authored
      
      
      PLATFORM_LINKER_FORMAT
      and
      PLATFORM_LINKER_ARCH
      defines are removed from
      plat/hisilicon/hikey/include/platform_def.h
      since there are already defined in
      include/plat/common/common_def.h
      which is included by
      plat/hisilicon/hikey/hikey_def.h
      which is included by
      plat/hisilicon/hikey/include/platform_def.h
      
      The line
      $(eval $(call FIP_ADD_IMG,SCP_BL2,--scp-fw))
      is removed from
      plat/hisilicon/hikey/platform.mk
      to clear the warning below:
      
      Makefile:544: warning: overriding commands for target `check_SCP_BL2'
      plat/hisilicon/hikey/platform.mk:19: warning: ignoring old commands for target `check_SCP_BL2'
      
      $(eval $(call FIP_ADD_IMG,SCP_BL2,--scp-fw))
      already exists in
      Makefile
      and applies to plat hikey so is redundant in
      plat/hisilicon/hikey/platform.mk
      Signed-off-by: default avatarVictor Chong <victor.chong@linaro.org>
      c0cde364
  23. 07 Jun, 2017 1 commit
  24. 24 May, 2017 3 commits