| /linux/arch/arm64/kvm/vgic/ |
| H A D | vgic.c | 32 * vgic_cpu->ap_list_lock must be taken with IRQs disabled 53 * raw_spin_lock(vcpuX->arch.vgic_cpu.ap_list_lock); 54 * raw_spin_lock(vcpuY->arch.vgic_cpu.ap_list_lock); 126 return &vcpu->arch.vgic_cpu.private_irqs[intid]; in vgic_get_vcpu_irq() 196 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_flush_pending_lpis() 201 raw_spin_lock_irqsave(&vgic_cpu->ap_list_lock, flags); in vgic_flush_pending_lpis() 203 list_for_each_entry_safe(irq, tmp, &vgic_cpu->ap_list_head, ap_list) { in vgic_flush_pending_lpis() 213 raw_spin_unlock_irqrestore(&vgic_cpu in vgic_flush_pending_lpis() 197 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; vgic_flush_pending_lpis() local 364 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; vgic_sort_ap_list() local 753 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; vgic_prune_ap_list() local 895 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; summarize_ap_list() local 1000 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; vgic_flush_lr_state() local 1227 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; kvm_vgic_vcpu_pending_irq() local [all...] |
| H A D | vgic-init.c | 173 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in kvm_vgic_create() local 174 kfree(vgic_cpu->private_irqs); in kvm_vgic_create() 175 vgic_cpu->private_irqs = NULL; in kvm_vgic_create() 277 irq->intid = irq - &vcpu->arch.vgic_cpu.private_irqs[0]; in vgic_allocate_private_irq() 302 int i = irq - &vcpu->arch.vgic_cpu.private_irqs[0]; in vgic_allocate_private_irq() 318 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v5_allocate_private_irq() 331 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; vgic_allocate_private_irqs_locked() local 388 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; kvm_vgic_vcpu_init() local 520 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; __kvm_vgic_vcpu_destroy() local [all...] |
| H A D | vgic-mmio-v3.c | 267 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_lpis_enabled() local 269 return atomic_read(&vgic_cpu->ctlr) == GICR_CTLR_ENABLE_LPIS; in vgic_lpis_enabled() 275 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_read_v3r_ctlr() local 278 val = atomic_read(&vgic_cpu->ctlr); in vgic_mmio_read_v3r_ctlr() 289 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_write_v3r_ctlr() local 300 ctlr = atomic_cmpxchg_acquire(&vgic_cpu->ctlr, in vgic_mmio_write_v3r_ctlr() 308 atomic_set_release(&vgic_cpu->ctlr, 0); in vgic_mmio_write_v3r_ctlr() 310 ctlr = atomic_cmpxchg_acquire(&vgic_cpu->ctlr, 0, in vgic_mmio_write_v3r_ctlr() 322 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_vcpu_rdist_is_last() local 323 struct vgic_redist_region *iter, *rdreg = vgic_cpu->rdreg; in vgic_mmio_vcpu_rdist_is_last() [all …]
|
| H A D | vgic-v2.c | 33 struct vgic_v2_cpu_if *cpuif = &vcpu->arch.vgic_cpu.vgic_v2; in vgic_v2_configure_hcr() 115 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v2_fold_lr_state() local 116 struct vgic_v2_cpu_if *cpuif = &vgic_cpu->vgic_v2; in vgic_v2_fold_lr_state() 122 for (int lr = 0; lr < vgic_cpu->vgic_v2.used_lrs; lr++) in vgic_v2_fold_lr_state() 126 list_for_each_entry_continue(irq, &vgic_cpu->ap_list_head, ap_list) { in vgic_v2_fold_lr_state() 153 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v2_deactivate() local 154 struct vgic_v2_cpu_if *cpuif = &vgic_cpu->vgic_v2; in vgic_v2_deactivate() 304 vcpu->arch.vgic_cpu.vgic_v2.vgic_lr[lr] = val; in vgic_v2_populate_lr() 336 vcpu->arch.vgic_cpu.vgic_v2.vgic_lr[lr] = 0; in vgic_v2_clear_lr() 341 struct vgic_v2_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v2; in vgic_v2_set_vmcr() [all …]
|
| H A D | vgic-v3.c | 27 struct vgic_v3_cpu_if *cpuif = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_configure_hcr() 148 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v3_fold_lr_state() local 149 struct vgic_v3_cpu_if *cpuif = &vgic_cpu->vgic_v3; in vgic_v3_fold_lr_state() 166 list_for_each_entry_continue(irq, &vgic_cpu->ap_list_head, ap_list) { in vgic_v3_fold_lr_state() 197 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v3_deactivate() local 198 struct vgic_v3_cpu_if *cpuif = &vgic_cpu->vgic_v3; in vgic_v3_deactivate() 371 vcpu->arch.vgic_cpu.vgic_v3.vgic_lr[lr] = val; in vgic_v3_populate_lr() 401 vcpu->arch.vgic_cpu.vgic_v3.vgic_lr[lr] = 0; in vgic_v3_clear_lr() 406 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_set_vmcr() 434 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_get_vmcr() [all …]
|
| H A D | vgic-v4.c | 98 raw_spin_lock(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe.vpe_lock); in vgic_v4_doorbell_handler() 99 vcpu->arch.vgic_cpu.vgic_v3.its_vpe.pending_last = true; in vgic_v4_doorbell_handler() 100 raw_spin_unlock(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe.vpe_lock); in vgic_v4_doorbell_handler() 117 struct its_vpe *vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_enable_vsgis() 218 struct its_vpe *vpe = &irq->target_vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_get_vlpi_state() 267 dist->its_vm.vpes[i] = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_init() 360 struct its_vpe *vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_put() 370 struct its_vpe *vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_load() 406 struct its_vpe *vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_commit() 477 .vpe = &irq->target_vcpu->arch.vgic_cpu.vgic_v3.its_vpe, in kvm_vgic_v4_set_forwarding() [all …]
|
| H A D | vgic-mmio-v2.c | 383 return vcpu->arch.vgic_cpu.vgic_v2.vgic_apr; in vgic_mmio_read_apr() 385 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_mmio_read_apr() 409 vcpu->arch.vgic_cpu.vgic_v2.vgic_apr = val; in vgic_mmio_write_apr() 411 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_mmio_write_apr()
|
| H A D | vgic-its.c | 331 map.vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in update_affinity() 391 gpa_t pendbase = GICR_PENDBASER_ADDRESS(vcpu->arch.vgic_cpu.pendbaser); in its_sync_lpi_pending_table() 1313 if (vcpu->arch.vgic_cpu.vgic_v3.its_vpe.its_vm) in vgic_its_invall() 1314 its_invall_vpe(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe); in vgic_its_invall() 1801 if (!(vcpu->arch.vgic_cpu.pendbaser & GICR_PENDBASER_PTZ)) in vgic_enable_lpis()
|
| /linux/arch/arm64/kvm/ |
| H A D | vgic-sys-reg-v3.c | 17 struct vgic_cpu *vgic_v3_cpu = &vcpu->arch.vgic_cpu; in set_gic_ctlr() 62 struct vgic_cpu *vgic_v3_cpu = &vcpu->arch.vgic_cpu; in get_gic_ctlr() 210 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in set_apr_reg() 220 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in get_apr_reg() 293 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in get_gic_sre()
|
| H A D | arm.c | 639 (atomic_read(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe.vlpi_count) || in kvm_vcpu_should_clear_twi() 724 &vcpu->arch.vgic_cpu.vgic_v3); in kvm_arch_vcpu_load() 736 kvm_call_hyp(__vgic_v3_save_aprs, &vcpu->arch.vgic_cpu.vgic_v3); in kvm_arch_vcpu_put()
|
| H A D | sys_regs.c | 663 p->regval = vcpu->arch.vgic_cpu.vgic_v3.vgic_sre; in access_gic_sre() 700 p->regval = FIELD_PREP(ICC_IDR0_EL1_PRI_BITS, vcpu->arch.vgic_cpu.num_pri_bits - 1) | in access_gicv5_idr0() 701 FIELD_PREP(ICC_IDR0_EL1_ID_BITS, vcpu->arch.vgic_cpu.num_id_bits); in access_gicv5_idr0() 726 struct vgic_v5_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v5; in access_gicv5_ppi_enabler()
|
| /linux/arch/arm64/kvm/hyp/nvhe/ |
| H A D | hyp-main.c | 153 hyp_vcpu->vcpu.arch.vgic_cpu.vgic_v3 = host_vcpu->arch.vgic_cpu.vgic_v3; in sync_hyp_vcpu() 156 hyp_vcpu->vcpu.arch.vgic_cpu.vgic_v3.used_lrs = in sync_hyp_vcpu() 158 hyp_vcpu->vcpu.arch.vgic_cpu.vgic_v3.used_lrs, in sync_hyp_vcpu() 167 struct vgic_v3_cpu_if *hyp_cpu_if = &hyp_vcpu->vcpu.arch.vgic_cpu.vgic_v3; in sync_hyp_vcpu() 168 struct vgic_v3_cpu_if *host_cpu_if = &host_vcpu->arch.vgic_cpu.vgic_v3;
|
| /linux/arch/arm64/include/asm/ |
| H A D | kvm_host.h | 914 struct vgic_cpu vgic_cpu; 931 struct vgic_cpu vgic_cpu; global() member
|