Lines Matching +full:el3 +full:-

1 // SPDX-License-Identifier: GPL-2.0-only
7 #include <linux/irqchip/arm-gic-v3.h>
82 * - Needed by common Linux distributions (e.g., floating point)
83 * - Trivial to support, e.g., supporting the feature does not introduce or
85 * - Cannot be trapped or prevent the guest from using anyway
92 MAX_FEAT(ID_AA64PFR0_EL1, EL3, IMP),
171 * However, both have Not-Implemented values that are non-zero. Define them
200 u64 min_signed = (1UL << width) - 1UL; in get_restricted_features()
201 u64 sign_bit = 1UL << (width - 1); in get_restricted_features()
202 u64 mask = GENMASK_ULL(width + shift - 1, shift); in get_restricted_features()
206 if (vm_supported && !vm_supported(vcpu->kvm)) in get_restricted_features()
271 struct kvm *kvm = vcpu->kvm; in read_id_reg()
274 if (WARN_ON_ONCE(!test_bit(KVM_ARCH_FLAG_ID_REGS_INITIALIZED, &kvm->arch.flags))) in read_id_reg()
278 return kvm->arch.id_regs[IDREG_IDX(reg)]; in read_id_reg()
287 if (!p->is_write) in pvm_access_raz_wi()
288 p->regval = 0; in pvm_access_raz_wi()
303 if (p->is_write) { in pvm_access_id_aarch32()
322 if (p->is_write) { in pvm_access_id_aarch64()
327 p->regval = read_id_reg(vcpu, r); in pvm_access_id_aarch64()
336 if (!p->is_write) in pvm_gic_read_sre()
337 p->regval = ICC_SRE_EL1_DIB | ICC_SRE_EL1_DFB | ICC_SRE_EL1_SRE; in pvm_gic_read_sre()
358 /* Mark the specified system register as Read-As-Zero/Write-Ignored */
487 struct kvm *kvm = vcpu->kvm; in kvm_init_pvm_id_regs()
488 struct kvm_arch *ka = &kvm->arch; in kvm_init_pvm_id_regs()
493 if (test_bit(KVM_ARCH_FLAG_ID_REGS_INITIALIZED, &kvm->arch.flags)) in kvm_init_pvm_id_regs()
501 ka->id_regs[IDREG_IDX(r)] = pvm_calc_id_reg(vcpu, r); in kvm_init_pvm_id_regs()
503 set_bit(KVM_ARCH_FLAG_ID_REGS_INITIALIZED, &kvm->arch.flags); in kvm_init_pvm_id_regs()
507 * Checks that the sysreg table is unique and in-order.
516 if (cmp_sys_reg(&pvm_sys_reg_descs[i-1], &pvm_sys_reg_descs[i]) >= 0) in kvm_check_pvm_sysreg_table()
548 if (r->access == NULL) in kvm_handle_pvm_sysreg()
552 if (r->access(vcpu, &params, r)) in kvm_handle_pvm_sysreg()