• Home
  • Raw
  • Download

Lines Matching refs:kvm

51 		struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i);  in vgic_mmio_read_group()
56 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_group()
70 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_group()
74 vgic_queue_irq_unlock(vcpu->kvm, irq, flags); in vgic_mmio_write_group()
76 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_group()
93 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_read_enable()
98 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_enable()
113 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_senable()
133 vgic_queue_irq_unlock(vcpu->kvm, irq, flags); in vgic_mmio_write_senable()
135 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_senable()
148 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_cenable()
155 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_cenable()
168 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_read_pending()
176 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_pending()
217 vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V2); in is_vgic_v2_sgi()
230 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_spending()
234 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_spending()
243 vgic_queue_irq_unlock(vcpu->kvm, irq, flags); in vgic_mmio_write_spending()
244 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_spending()
283 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_cpending()
287 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_cpending()
299 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_cpending()
321 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3 || in vgic_access_active_prepare()
323 kvm_arm_halt_guest(vcpu->kvm); in vgic_access_active_prepare()
329 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3 || in vgic_access_active_finish()
331 kvm_arm_resume_guest(vcpu->kvm); in vgic_access_active_finish()
343 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in __vgic_mmio_read_active()
352 vgic_put_irq(vcpu->kvm, irq); in __vgic_mmio_read_active()
364 mutex_lock(&vcpu->kvm->lock); in vgic_mmio_read_active()
370 mutex_unlock(&vcpu->kvm->lock); in vgic_mmio_read_active()
403 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_mmio_change_active()
427 vgic_queue_irq_unlock(vcpu->kvm, irq, flags); in vgic_mmio_change_active()
440 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in __vgic_mmio_write_cactive()
442 vgic_put_irq(vcpu->kvm, irq); in __vgic_mmio_write_cactive()
452 mutex_lock(&vcpu->kvm->lock); in vgic_mmio_write_cactive()
458 mutex_unlock(&vcpu->kvm->lock); in vgic_mmio_write_cactive()
477 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in __vgic_mmio_write_sactive()
479 vgic_put_irq(vcpu->kvm, irq); in __vgic_mmio_write_sactive()
489 mutex_lock(&vcpu->kvm->lock); in vgic_mmio_write_sactive()
495 mutex_unlock(&vcpu->kvm->lock); in vgic_mmio_write_sactive()
514 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_read_priority()
518 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_priority()
540 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_priority()
547 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_priority()
559 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_read_config()
564 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_config()
590 irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_config()
599 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_write_config()
607 int nr_irqs = vcpu->kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_read_irq_line_level_info()
615 irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_read_irq_line_level_info()
619 vgic_put_irq(vcpu->kvm, irq); in vgic_read_irq_line_level_info()
629 int nr_irqs = vcpu->kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_write_irq_line_level_info()
639 irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_write_irq_line_level_info()
650 vgic_queue_irq_unlock(vcpu->kvm, irq, flags); in vgic_write_irq_line_level_info()
654 vgic_put_irq(vcpu->kvm, irq); in vgic_write_irq_line_level_info()
755 static bool check_region(const struct kvm *kvm, in check_region() argument
759 int flags, nr_irqs = kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in check_region()
794 if (!region || !check_region(vcpu->kvm, region, addr, len)) in vgic_get_mmio_region()
877 data = region->its_read(vcpu->kvm, iodev->its, addr, len); in dispatch_mmio_read()
907 region->its_write(vcpu->kvm, iodev->its, addr, len, data); in dispatch_mmio_write()
919 int vgic_register_dist_iodev(struct kvm *kvm, gpa_t dist_base_address, in vgic_register_dist_iodev() argument
922 struct vgic_io_device *io_device = &kvm->arch.vgic.dist_iodev; in vgic_register_dist_iodev()
941 mutex_lock(&kvm->slots_lock); in vgic_register_dist_iodev()
942 ret = kvm_io_bus_register_dev(kvm, KVM_MMIO_BUS, dist_base_address, in vgic_register_dist_iodev()
944 mutex_unlock(&kvm->slots_lock); in vgic_register_dist_iodev()