1. 25 Oct, 2018 1 commit
    • Antonio Nino Diaz's avatar
      Add plat_crash_console_flush to platforms without it · 9c675b37
      Antonio Nino Diaz authored
      
      
      Even though at this point plat_crash_console_flush is optional, it will
      stop being optional in a following patch.
      
      The console driver of warp7 doesn't support flush, so the implementation
      is a placeholder.
      
      TI had ``plat_crash_console_init`` and ``plat_crash_console_putc``, but
      they weren't global so they weren't actually used. Also, they were
      calling the wrong functions.
      
      imx8_helpers.S only has placeholders for all of the functions.
      
      Change-Id: I8d17bbf37c7dad74e134c61ceb92acb9af497718
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      9c675b37
  2. 28 Sep, 2018 1 commit
  3. 26 Sep, 2018 1 commit
    • Haojian Zhuang's avatar
      hikey960: fix build issue for clang · 492a504c
      Haojian Zhuang authored
      
      
      plat/hisilicon/hikey960/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/hikey960/debug/bl1/cortex_a53.o' failed
      make: *** [build/hikey960/debug/bl1/cortex_a53.o] Error 1
      
      Merge the two lines into one.
      Signed-off-by: default avatarHaojian Zhuang <haojian.zhuang@linaro.org>
      492a504c
  4. 09 Sep, 2018 1 commit
  5. 27 Jul, 2018 1 commit
  6. 20 Jul, 2018 1 commit
  7. 28 Mar, 2018 1 commit
  8. 27 Mar, 2018 1 commit
    • Joel Hutton's avatar
      Clean usage of void pointers to access symbols · 9f85f9e3
      Joel Hutton authored
      
      
      Void pointers have been used to access linker symbols, by declaring an
      extern pointer, then taking the address of it. This limits symbols
      values to aligned pointer values. To remove this restriction an
      IMPORT_SYM macro has been introduced, which declares it as a char
      pointer and casts it to the required type.
      
      Change-Id: I89877fc3b13ed311817bb8ba79d4872b89bfd3b0
      Signed-off-by: default avatarJoel Hutton <Joel.Hutton@Arm.com>
      9f85f9e3
  9. 26 Mar, 2018 1 commit
  10. 06 Mar, 2018 1 commit
    • Haojian Zhuang's avatar
      hikey960: fix build issue with CLANG · 056b3d49
      Haojian Zhuang authored
      
      
      plat/hisilicon/hikey960/drivers/pwrc/hisi_pwrc.c:290:20:
      error: unused function 'hisi_pdc_set_intmask' [-Werror,-Wunused-function]
      static inline void hisi_pdc_set_intmask(void *pdc_base_addr,
                         ^
      1 error generated.
      Makefile:605: recipe for target 'build/hikey960/release/bl31/hisi_pwrc.o' failed
      make: *** [build/hikey960/release/bl31/hisi_pwrc.o] Error 1
      Signed-off-by: default avatarHaojian Zhuang <haojian.zhuang@linaro.org>
      056b3d49
  11. 05 Mar, 2018 6 commits
  12. 27 Feb, 2018 1 commit
  13. 17 Feb, 2018 1 commit
  14. 07 Feb, 2018 1 commit
  15. 01 Feb, 2018 2 commits
  16. 22 Jan, 2018 1 commit
    • Leo Yan's avatar
      Hikey960: Enable invalid FIQ handling · b79f7ed0
      Leo Yan authored
      
      
      When some interrupts are configured as group 0 in GICv2, these
      interrupts trigger FIQ signal; this results in the Linux kernel panic
      by reporting log: "Bad mode in FIQ handler detected on CPU0, code
      0x00000000 -- Unknown/Uncategorized".  Unfortunately from kernel side it
      has no permission to read the GIC register for group 0 interrupts so we
      have no chance to get to know which interrupt is configured as secure
      interrupt and cause the kernel panic.
      
      For upper reason, this commit enables FIQ exception handling for
      SPD_none case.  If the system has not enabled SPD the FIQ interrupt is
      trapped into EL3 and the FIQ handler can report the interrupt number so
      we can easily narrow down which FIQ introduce unexpected interrupt.
      After enable SPD we can rely on SPD interrupt route model to handle FIQ.
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      b79f7ed0
  17. 16 Jan, 2018 2 commits
    • Leo Yan's avatar
      Hikey960: Change CPU standby state for WFI · 4c8a5787
      Leo Yan authored
      
      
      At early time, the CPU CA73 retention state has been supported on
      Hikey960.  Later we found the system has the hang issue and for
      resolving this issue Hisilicon released new MCU firmware, but
      unfortunately the new MCU firmware has side effect and results in the
      CA73 CPU cannot really enter retention state and roll back to WFI state.
      
      After discussion we cannot see the possibility to enable CA73 retention
      state anymore on Hikey960, based on this conclusion we should remove
      this state supporting from ARM-TF and roll back to WFI state only.  We
      will commit one patch to remove CA73 CPU retention state in kernel DT
      binding as well.
      
      Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
      Cc: Haojian Zhuang <haojian.zhuang@linaro.org>
      Cc: Kevin Wang <jean.wangtao@linaro.org>
      Cc: Vincent Guittot <vincent.guittot@linaro.org>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      4c8a5787
    • Leo Yan's avatar
      Revert "Hikey960: Change to use recommended power state id format" · e1b27425
      Leo Yan authored
      This reverts commit fdae60b6.
      
      The commit fdae60b6
      
       changed the
      parameter encoding for the hikey960.  However that implies a DT change
      in the kernel side.  After submitting the DT change for upstreaming,
      the backward compatibility issue and the interface change raise some
      concerns from the Linux community about the issues related to kernel <->
      ATF alignment.  There is no way to detect a mis-alignment of those
      without a deep knowledge of the ATF and the kernel.  Furthermore, the
      failing calls to PSCI in the idle path (because of bad parameters), will
      lead to busy looping, implying: thermal issues and extra energy
      consumption.
      
      In regard of the Linux community concerns, the potential issues when the
      ATF and the kernel are not aligned, it is preferable to revert the
      commit.
      
      Cc: Vincent Guittot <vincent.guittot@linaro.org>
      Cc: Haojian Zhuang <haojian.zhuang@linaro.org>
      Cc: Kevin Wang <jean.wangtao@linaro.org>
      Co-authored-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      e1b27425
  18. 09 Jan, 2018 1 commit
  19. 18 Dec, 2017 1 commit
  20. 06 Dec, 2017 1 commit
    • Leo Yan's avatar
      Hikey960: Change to use recommended power state id format · fdae60b6
      Leo Yan authored
      
      
      ARM Power State Coordination Interface (ARM DEN 0022D) chapter
      6.5 "Recommended StateID Encoding" defines the state ID which can be
      used by platforms. The recommended power states can be presented by
      below values; and it divides into three fields, every field has 4 bits
      to present power states corresponding to core level, cluster level and
      system level.
      
        0: Run
        1: Standby
        2: Retention
        3: Powerdown
      
      This commit changes to use upper recommended power states definition on
      Hikey960; and changes the power state validate function to check the
      power state passed from kernel side.
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      fdae60b6
  21. 30 Nov, 2017 1 commit
    • David Cunado's avatar
      Do not enable SVE on pre-v8.2 platforms · 3872fc2d
      David Cunado authored
      
      
      Pre-v8.2 platforms such as the Juno platform does not have
      the Scalable Vector Extensions implemented and so the build
      option ENABLE_SVE is set to zero.
      
      This has a minor performance improvement with no functional
      impact.
      
      Change-Id: Ib072735db7a0247406f8b60e325b7e28b1e04ad1
      Signed-off-by: default avatarDavid Cunado <david.cunado@arm.com>
      3872fc2d
  22. 22 Nov, 2017 1 commit
  23. 01 Nov, 2017 1 commit
  24. 13 Sep, 2017 2 commits
  25. 01 Sep, 2017 2 commits
  26. 17 Aug, 2017 1 commit
    • Tao Wang's avatar
      Hikey960: fix PSCI suspend stuck issue · 4af7fcb8
      Tao Wang authored
      
      
      Clear the cpuidle flag when resuming from idle. This flag is set
      when entering idle, and if it remains set when resuming, it can
      prevent the cluster from powering off during the next system
      suspend operation. During system suspend, all CPUs are plugged
      out except the last CPU, which is suspended. If any of the
      cpuidle flags are set at this point, the last CPU will be stuck
      in a WFI loop and will not be powered off.
      This problem only occurs during system suspend.
      Signed-off-by: default avatarTao Wang <kevin.wangtao@linaro.org>
      4af7fcb8
  27. 14 Jul, 2017 1 commit
  28. 12 Jul, 2017 2 commits
  29. 11 Jul, 2017 1 commit
  30. 20 Jun, 2017 1 commit