1. 13 May, 2019 1 commit
    • Alexei Fedorov's avatar
      Remove .arch directives from spinlock.S · 02a85c11
      Alexei Fedorov authored
      
      
      This patch removes .arch "arm8.1-a" and "armv8-a"
      directives which overwrite ASFLAGS_aarch64 option based
      on ARM_ARCH_MINOR passed to Makefile and cause
      translation errors like
      "selected processor does not support `bti jc'"
      for armv8.5-a targets when BTI support is enabled.
      
      Change-Id: Idca5b66ed1e5d86e2188b0c0f16c3819990957c4
      Signed-off-by: default avatarAlexei Fedorov <Alexei.Fedorov@arm.com>
      02a85c11
  2. 24 Aug, 2017 1 commit
  3. 03 May, 2017 1 commit
  4. 14 Feb, 2017 1 commit
    • Jeenu Viswambharan's avatar
      Introduce locking primitives using CAS instruction · c877b414
      Jeenu Viswambharan authored
      
      
      The ARMv8v.1 architecture extension has introduced support for far
      atomics, which includes compare-and-swap. Compare and Swap instruction
      is only available for AArch64.
      
      Introduce build options to choose the architecture versions to target
      ARM Trusted Firmware:
      
        - ARM_ARCH_MAJOR: selects the major version of target ARM
          Architecture. Default value is 8.
      
        - ARM_ARCH_MINOR: selects the minor version of target ARM
          Architecture. Default value is 0.
      
      When:
      
        (ARM_ARCH_MAJOR > 8) || ((ARM_ARCH_MAJOR == 8) && (ARM_ARCH_MINOR >= 1)),
      
      for AArch64, Compare and Swap instruction is used to implement spin
      locks. Otherwise, the implementation falls back to using
      load-/store-exclusive instructions.
      
      Update user guide, and introduce a section in Firmware Design guide to
      summarize support for features introduced in ARMv8 Architecture
      Extensions.
      
      Change-Id: I73096a0039502f7aef9ec6ab3ae36680da033f16
      Signed-off-by: default avatarJeenu Viswambharan <jeenu.viswambharan@arm.com>
      c877b414
  5. 09 Aug, 2016 1 commit
    • Soby Mathew's avatar
      Move spinlock library code to AArch64 folder · 12ab697e
      Soby Mathew authored
      This patch moves the assembly exclusive lock library code
      `spinlock.S` into architecture specific folder `aarch64`.
      A stub file which includes the file from new location is
      retained at the original location for compatibility. The BL
      makefiles are also modified to include the file from the new
      location.
      
      Change-Id: Ide0b601b79c439e390c3a017d93220a66be73543
      12ab697e