1. 20 Mar, 2019 1 commit
    • Dave Martin's avatar
      arm64: Add basic SVE support · 0eb79e44
      Dave Martin authored
      
      
      This patch adds an --sve command line option to allow the Scalable
      Vector Extension to be enabled when creating a guest.
      
      This requires use of the new KVM_ARM_VCPU_FINALIZE ioctl before the
      vcpu is runnable, so a new hook kvm_cpu__configure_features() is
      added to provide an appropiate place to do this work.
      
      The kernel does not enable SVE by default, and for now kvmtool
      adopts the same policy: without --sve, SVE is not enabled for the
      guest even if the host supports it.
      Signed-off-by: default avatarDave Martin <Dave.Martin@arm.com>
      0eb79e44
  2. 22 Jan, 2019 1 commit
    • Dave Martin's avatar
      arm64: Correct ARM64_CORE_REG() size encodings for all core registers · 5ae841d1
      Dave Martin authored
      
      
      ARM64_CORE_REG() is currently only used to generate the KVM
      register IDs for registers that happen to be 64 bits in size, so
      KVM_REG_SIZE_U64 is hard-coded in the definition.
      
      To enable this macro to generate correct encodings for the FPSIMD
      registers too (which are a mix of 128-bit and 32-bit registers),
      this patch extends the macro to encode the correct size for each
      class of register in KVM_REG_ARM_CORE.
      
      The approach is crude, but because the KVM_REG_ARM_CORE ID
      arrangement is ABI, it's not expected to evolve.
      Signed-off-by: default avatarDave Martin <Dave.Martin@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      5ae841d1
  3. 01 Jun, 2015 5 commits