| /Linux-v5.4/virt/kvm/arm/vgic/ |
| D | vgic.c | 96 return &vcpu->arch.vgic_cpu.private_irqs[intid]; in vgic_get_irq() 153 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_flush_pending_lpis() local 157 raw_spin_lock_irqsave(&vgic_cpu->ap_list_lock, flags); in vgic_flush_pending_lpis() 159 list_for_each_entry_safe(irq, tmp, &vgic_cpu->ap_list_head, ap_list) { in vgic_flush_pending_lpis() 169 raw_spin_unlock_irqrestore(&vgic_cpu->ap_list_lock, flags); in vgic_flush_pending_lpis() 299 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_sort_ap_list() local 301 lockdep_assert_held(&vgic_cpu->ap_list_lock); in vgic_sort_ap_list() 303 list_sort(NULL, &vgic_cpu->ap_list_head, vgic_irq_cmp); in vgic_sort_ap_list() 379 raw_spin_lock_irqsave(&vcpu->arch.vgic_cpu.ap_list_lock, flags); in vgic_queue_irq_unlock() 396 raw_spin_unlock_irqrestore(&vcpu->arch.vgic_cpu.ap_list_lock, in vgic_queue_irq_unlock() [all …]
|
| D | vgic-v2.c | 31 struct vgic_v2_cpu_if *cpuif = &vcpu->arch.vgic_cpu.vgic_v2; in vgic_v2_set_underflow() 51 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v2_fold_lr_state() local 52 struct vgic_v2_cpu_if *cpuif = &vgic_cpu->vgic_v2; in vgic_v2_fold_lr_state() 59 for (lr = 0; lr < vgic_cpu->used_lrs; lr++) { in vgic_v2_fold_lr_state() 123 vgic_cpu->used_lrs = 0; in vgic_v2_fold_lr_state() 212 vcpu->arch.vgic_cpu.vgic_v2.vgic_lr[lr] = val; in vgic_v2_populate_lr() 217 vcpu->arch.vgic_cpu.vgic_v2.vgic_lr[lr] = 0; in vgic_v2_clear_lr() 222 struct vgic_v2_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v2; in vgic_v2_set_vmcr() 249 struct vgic_v2_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v2; in vgic_v2_get_vmcr() 282 vcpu->arch.vgic_cpu.vgic_v2.vgic_vmcr = 0; in vgic_v2_enable() [all …]
|
| D | vgic-mmio-v3.c | 177 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_read_v3r_ctlr() local 179 return vgic_cpu->lpis_enabled ? GICR_CTLR_ENABLE_LPIS : 0; in vgic_mmio_read_v3r_ctlr() 187 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_write_v3r_ctlr() local 188 bool was_enabled = vgic_cpu->lpis_enabled; in vgic_mmio_write_v3r_ctlr() 193 vgic_cpu->lpis_enabled = val & GICR_CTLR_ENABLE_LPIS; in vgic_mmio_write_v3r_ctlr() 195 if (was_enabled && !vgic_cpu->lpis_enabled) { in vgic_mmio_write_v3r_ctlr() 200 if (!was_enabled && vgic_cpu->lpis_enabled) in vgic_mmio_write_v3r_ctlr() 208 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_read_v3r_typer() local 209 struct vgic_redist_region *rdreg = vgic_cpu->rdreg; in vgic_mmio_read_v3r_typer() 397 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_mmio_write_propbase() local [all …]
|
| D | vgic-init.c | 197 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in kvm_vgic_vcpu_init() local 202 vgic_cpu->rd_iodev.base_addr = VGIC_ADDR_UNDEF; in kvm_vgic_vcpu_init() 204 INIT_LIST_HEAD(&vgic_cpu->ap_list_head); in kvm_vgic_vcpu_init() 205 raw_spin_lock_init(&vgic_cpu->ap_list_lock); in kvm_vgic_vcpu_init() 212 struct vgic_irq *irq = &vgic_cpu->private_irqs[i]; in kvm_vgic_vcpu_init() 286 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_init() local 289 struct vgic_irq *irq = &vgic_cpu->private_irqs[i]; in vgic_init() 358 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in kvm_vgic_vcpu_destroy() local 360 INIT_LIST_HEAD(&vgic_cpu->ap_list_head); in kvm_vgic_vcpu_destroy()
|
| D | vgic-v3.c | 20 struct vgic_v3_cpu_if *cpuif = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_set_underflow() 33 struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu; in vgic_v3_fold_lr_state() local 34 struct vgic_v3_cpu_if *cpuif = &vgic_cpu->vgic_v3; in vgic_v3_fold_lr_state() 42 for (lr = 0; lr < vgic_cpu->used_lrs; lr++) { in vgic_v3_fold_lr_state() 114 vgic_cpu->used_lrs = 0; in vgic_v3_fold_lr_state() 197 vcpu->arch.vgic_cpu.vgic_v3.vgic_lr[lr] = val; in vgic_v3_populate_lr() 202 vcpu->arch.vgic_cpu.vgic_v3.vgic_lr[lr] = 0; in vgic_v3_clear_lr() 207 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_set_vmcr() 237 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_get_vmcr() 273 struct vgic_v3_cpu_if *vgic_v3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_enable() [all …]
|
| D | vgic-v4.c | 88 vcpu->arch.vgic_cpu.vgic_v3.its_vpe.pending_last = true; in vgic_v4_doorbell_handler() 126 dist->its_vm.vpes[i] = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_init() 200 return its_schedule_vpe(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe, false); in vgic_v4_sync_hwstate() 205 int irq = vcpu->arch.vgic_cpu.vgic_v3.its_vpe.irq; in vgic_v4_flush_hwstate() 221 err = its_schedule_vpe(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe, true); in vgic_v4_flush_hwstate() 283 .vpe = &irq->target_vcpu->arch.vgic_cpu.vgic_v3.its_vpe, in kvm_vgic_v4_set_forwarding() 342 int irq = vcpu->arch.vgic_cpu.vgic_v3.its_vpe.irq; in kvm_vgic_v4_enable_doorbell() 351 int irq = vcpu->arch.vgic_cpu.vgic_v3.its_vpe.irq; in kvm_vgic_v4_disable_doorbell()
|
| D | vgic-mmio-v2.c | 362 return vcpu->arch.vgic_cpu.vgic_v2.vgic_apr; in vgic_mmio_read_apr() 364 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_mmio_read_apr() 388 vcpu->arch.vgic_cpu.vgic_v2.vgic_apr = val; in vgic_mmio_write_apr() 390 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_mmio_write_apr()
|
| D | vgic.h | 260 struct vgic_cpu *cpu_if = &vcpu->arch.vgic_cpu; in vgic_v3_max_apr_idx()
|
| D | vgic-its.c | 363 map.vpe = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in update_affinity() 420 gpa_t pendbase = GICR_PENDBASER_ADDRESS(vcpu->arch.vgic_cpu.pendbaser); in its_sync_lpi_pending_table() 676 if (!vcpu->arch.vgic_cpu.lpis_enabled) in vgic_its_resolve_lpi() 1324 if (vcpu->arch.vgic_cpu.vgic_v3.its_vpe.its_vm) in vgic_its_cmd_handle_invall() 1325 its_invall_vpe(&vcpu->arch.vgic_cpu.vgic_v3.its_vpe); in vgic_its_cmd_handle_invall() 1792 if (!(vcpu->arch.vgic_cpu.pendbaser & GICR_PENDBASER_PTZ)) in vgic_enable_lpis()
|
| /Linux-v5.4/virt/kvm/arm/hyp/ |
| D | vgic-v3-sr.c | 199 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_save_state() 200 u64 used_lrs = vcpu->arch.vgic_cpu.used_lrs; in __vgic_v3_save_state() 235 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_restore_state() 236 u64 used_lrs = vcpu->arch.vgic_cpu.used_lrs; in __vgic_v3_restore_state() 262 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_activate_traps() 311 struct vgic_v3_cpu_if *cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_deactivate_traps() 343 cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_save_aprs() 380 cpu_if = &vcpu->arch.vgic_cpu.vgic_v3; in __vgic_v3_restore_aprs() 456 unsigned int used_lrs = vcpu->arch.vgic_cpu.used_lrs; in __vgic_v3_highest_priority_lr() 495 unsigned int used_lrs = vcpu->arch.vgic_cpu.used_lrs; in __vgic_v3_find_active_lr()
|
| /Linux-v5.4/arch/arm64/kvm/ |
| D | vgic-sys-reg-v3.c | 17 struct vgic_cpu *vgic_v3_cpu = &vcpu->arch.vgic_cpu; in access_gic_ctlr() 186 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in vgic_v3_access_apr_reg() 233 struct vgic_v3_cpu_if *vgicv3 = &vcpu->arch.vgic_cpu.vgic_v3; in access_gic_sre()
|
| D | sys_regs.c | 292 p->regval = vcpu->arch.vgic_cpu.vgic_v3.vgic_sre; in access_gic_sre()
|
| /Linux-v5.4/arch/arm/include/asm/ |
| D | kvm_host.h | 181 struct vgic_cpu vgic_cpu; member
|
| /Linux-v5.4/arch/arm64/include/asm/ |
| D | kvm_host.h | 293 struct vgic_cpu vgic_cpu; member
|
| /Linux-v5.4/include/kvm/ |
| D | arm_vgic.h | 292 struct vgic_cpu { struct
|
| /Linux-v5.4/arch/arm/kvm/ |
| D | coproc.c | 275 *vcpu_reg(vcpu, p->Rt1) = vcpu->arch.vgic_cpu.vgic_v3.vgic_sre; in access_gic_sre()
|