1. 29 Jan, 2018 2 commits
  2. 27 Jan, 2018 1 commit
  3. 26 Jan, 2018 1 commit
  4. 24 Jan, 2018 8 commits
  5. 22 Jan, 2018 4 commits
  6. 19 Jan, 2018 3 commits
    • Julius Werner's avatar
      rockchip: Move to MULTI_CONSOLE_API · 890abc33
      Julius Werner authored
      
      
      This patch changes all Rockchip platforms to use the new
      MULTI_CONSOLE_API. The platform-specific plat_crash_console
      implementations are removed so that the platform can use the ones from
      the common platform code instead.
      
      Also change the registers used in plat_crash_print_regs. The existing
      use of x16 and x17 has always been illegal, since those registers are
      reserved for use by the linker as a temporary scratch registers in
      intra-procedure-call veneers and can never be expected to maintain their
      values across a function call.
      
      Change-Id: I8249424150be8d5543ed4af93b56756795a5288f
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      890abc33
    • Julius Werner's avatar
      rockchip: Use coreboot-supplied serial console on coreboot systems · 3c250b9a
      Julius Werner authored
      
      
      This patch changes all Rockchip platforms to initialize the serial
      console with information supplied by coreboot rather than hardcoded
      base address and divisor values if BL31 is run on top of coreboot.
      Moving the BL2-to-BL31 parameter parsing as early as possible to ensure
      that the console is available for all following code.
      
      Also update the Rockchip platform to use MULTI_CONSOLE_API.
      
      Change-Id: I670d350fa2f8b8133539f91ac14977ab47db60d9
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      3c250b9a
    • Julius Werner's avatar
      Add default crash console code to hook up to new console API · 17cd67d2
      Julius Werner authored
      
      
      This patch expands the weak stubs for the plat_crash_console_xxx
      functions in common platform code to use the new console API for crash
      output. This should make crash console output "just work" for most cases
      without the need for the platform to explicitly set up a crash console.
      For cases where the normal console framework doesn't work (e.g. very
      early crashes, before the platform can register any consoles), platforms
      are still able to override the functions just like before.
      
      This feature requires the MULTI_CONSOLE_API compile-time flag to work.
      For builds which don't have it set, this patch has no practical effect.
      
      Change-Id: I80dd161cb43f9db59a0bad2dae33c6560cfac584
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      17cd67d2
  7. 18 Jan, 2018 3 commits
    • Roberto Vargas's avatar
      bl2-el3: Don't compile BL1 when BL2_AT_EL3 is defined in FVP · 76d26733
      Roberto Vargas authored
      
      
      This patch modifies the makefiles to avoid the definition
      of BL1_SOURCES and BL2_SOURCES in the tbbr makefiles, and
      it lets to the platform makefiles to define them if they
      actually need these images. In the case of BL2_AT_EL3
      BL1 will not be needed usually because the Boot ROM will
      jump directly to BL2.
      
      Change-Id: Ib6845a260633a22a646088629bcd7387fe35dcf9
      Signed-off-by: default avatarRoberto Vargas <roberto.vargas@arm.com>
      76d26733
    • Roberto Vargas's avatar
      bl2-el3: Add BL2 at EL3 support in FVP · 81528dbc
      Roberto Vargas authored
      
      
      This patch add supports for the new API added for BL2 at EL3 for
      FVP. We don't have a non-TF Boot ROM for FVP, but this option can be
      tested setting specific parameters in the model.
      
      The bl2 image is loaded directly in memory instead of being loaded
      by a non-TF Boot ROM and the reset address is changed:
      
      	--data cluster0.cpu0=bl2.bin@0x4001000
      	-C cluster0.cpu0.RVBAR=0x4001000
      
      These parameters mean that in the cold boot path the processor will
      jump to BL2 again. For this reason, BL2 is loaded in dram in this
      case, to avoid other images reclaiming BL2 memory.
      
      Change-Id: Ieb2ff8535a9e67ccebcd8c2212cad366e7776422
      Signed-off-by: default avatarRoberto Vargas <roberto.vargas@arm.com>
      81528dbc
    • Roberto Vargas's avatar
      bl2-el3: Add BL2_EL3 image · b1d27b48
      Roberto Vargas authored
      
      
      This patch enables BL2 to execute at the highest exception level
      without any dependancy on TF BL1. This enables platforms which already
      have a non-TF Boot ROM to directly load and execute BL2 and subsequent BL
      stages without need for BL1.  This is not currently possible because
      BL2 executes at S-EL1 and cannot jump straight to EL3.
      
      Change-Id: Ief1efca4598560b1b8c8e61fbe26d1f44e929d69
      Signed-off-by: default avatarRoberto Vargas <roberto.vargas@arm.com>
      b1d27b48
  8. 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
  9. 11 Jan, 2018 1 commit
  10. 09 Jan, 2018 4 commits
  11. 04 Jan, 2018 1 commit
  12. 03 Jan, 2018 1 commit
  13. 20 Dec, 2017 2 commits
  14. 19 Dec, 2017 1 commit
  15. 18 Dec, 2017 1 commit
  16. 12 Dec, 2017 5 commits
    • Julius Werner's avatar
      Add new function-pointer-based console API · 9536bae6
      Julius Werner authored
      
      
      This patch overhauls the console API to allow for multiple console
      instances of different drivers that are active at the same time. Instead
      of binding to well-known function names (like console_core_init),
      consoles now provide a register function (e.g. console_16550_register())
      that will hook them into the list of active consoles. All console
      operations will be dispatched to all consoles currently in the list.
      
      The new API will be selected by the build-time option MULTI_CONSOLE_API,
      which defaults to ${ERROR_DEPRECATED} for now. The old console API code
      will be retained to stay backwards-compatible to older platforms, but
      should no longer be used for any newly added platforms and can hopefully
      be removed at some point in the future.
      
      The new console API is intended to be used for both normal (bootup) and
      crash use cases, freeing platforms of the need to set up the crash
      console separately. Consoles can be individually configured to be active
      active at boot (until first handoff to EL2), at runtime (after first
      handoff to EL2), and/or after a crash. Console drivers should set a sane
      default upon registration that can be overridden with the
      console_set_scope() call. Code to hook up the crash reporting mechanism
      to this framework will be added with a later patch.
      
      This patch only affects AArch64, but the new API could easily be ported
      to AArch32 as well if desired.
      
      Change-Id: I35c5aa2cb3f719cfddd15565eb13c7cde4162549
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      9536bae6
    • Julius Werner's avatar
      rockchip: Implement a panic handler that will reboot the system · a33e763c
      Julius Werner authored
      
      
      The current Rockchip platform code retains the "common" default panic
      handler which simply hangs the system (until the watchdog kicks in, if
      enabled). This is usually not a great user experience.
      
      This patch implements a Rockchip-specific panic handler that calls the
      platform's reboot implementation to reset the system.
      
      Change-Id: I4cbe09c48f1b3f86ebdfc0108c186565f9ffc119
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      a33e763c
    • Victor Chong's avatar
      poplar: Add BL32 (OP-TEE) support · f336774b
      Victor Chong authored
      
      Signed-off-by: default avatarVictor Chong <victor.chong@linaro.org>
      f336774b
    • Jiancheng Xue's avatar
      Poplar: Initialize security properties of IP blocks. · d45a1c30
      Jiancheng Xue authored
      
      
      The security properties of some IP blocks are configured to secure mode
      after reset. This means these IP blocks can only be accessed by cpus
      in secure state by default. These should be configured correclty as needed.
      Signed-off-by: default avatary00241285 <yyangwei.yangwei@hisilicon.com>
      Signed-off-by: default avatarJiancheng Xue <xuejiancheng@hisilicon.com>
      d45a1c30
    • Victor Chong's avatar
      poplar: Increase FIP_SIZE · 94725a26
      Victor Chong authored
      
      
      This is currently the maximum allowed without affecting bootup.
      Signed-off-by: default avatarVictor Chong <victor.chong@linaro.org>
      94725a26