Lines Matching defs:kvm

46  * As per Documentation/virt/kvm/devices/arm-vgic-v3.rst,
67 * As per Documentation/virt/kvm/devices/arm-vgic-its.rst,
104 return vcpu->kvm->arch.vgic.implementation_rev;
135 static inline int vgic_write_guest_lock(struct kvm *kvm, gpa_t gpa,
138 struct vgic_dist *dist = &kvm->arch.vgic;
142 ret = kvm_write_guest_lock(kvm, gpa, data, len);
181 struct vgic_irq *vgic_get_irq(struct kvm *kvm, struct kvm_vcpu *vcpu,
183 void __vgic_put_lpi_locked(struct kvm *kvm, struct vgic_irq *irq);
184 void vgic_put_irq(struct kvm *kvm, struct vgic_irq *irq);
188 bool vgic_queue_irq_unlock(struct kvm *kvm, struct vgic_irq *irq,
190 void vgic_kick_vcpus(struct kvm *kvm);
194 int vgic_check_iorange(struct kvm *kvm, phys_addr_t ioaddr,
211 int vgic_v2_map_resources(struct kvm *kvm);
212 int vgic_register_dist_iodev(struct kvm *kvm, gpa_t dist_base_address,
239 int vgic_v3_map_resources(struct kvm *kvm);
240 int vgic_v3_lpi_sync_pending_status(struct kvm *kvm, struct vgic_irq *irq);
241 int vgic_v3_save_pending_tables(struct kvm *kvm);
242 int vgic_v3_set_redist_base(struct kvm *kvm, u32 index, u64 addr, u32 count);
245 bool vgic_v3_check_base(struct kvm *kvm);
251 bool vgic_has_its(struct kvm *kvm);
255 int vgic_its_inject_msi(struct kvm *kvm, struct kvm_msi *msi);
269 int vgic_lazy_init(struct kvm *kvm);
270 int vgic_init(struct kvm *kvm);
272 void vgic_debug_init(struct kvm *kvm);
273 void vgic_debug_destroy(struct kvm *kvm);
303 vgic_v3_rd_region_size(struct kvm *kvm, struct vgic_redist_region *rdreg)
306 return atomic_read(&kvm->online_vcpus) * KVM_VGIC_V3_REDIST_SIZE;
311 struct vgic_redist_region *vgic_v3_rdist_region_from_index(struct kvm *kvm,
315 bool vgic_v3_rdist_overlap(struct kvm *kvm, gpa_t base, size_t size);
317 static inline bool vgic_dist_overlap(struct kvm *kvm, gpa_t base, size_t size)
319 struct vgic_dist *d = &kvm->arch.vgic;
326 int vgic_copy_lpi_list(struct kvm *kvm, struct kvm_vcpu *vcpu, u32 **intid_ptr);
327 int vgic_its_resolve_lpi(struct kvm *kvm, struct vgic_its *its,
329 struct vgic_its *vgic_msi_to_its(struct kvm *kvm, struct kvm_msi *msi);
330 int vgic_its_inject_cached_translation(struct kvm *kvm, struct kvm_msi *msi);
331 void vgic_lpi_translation_cache_init(struct kvm *kvm);
332 void vgic_lpi_translation_cache_destroy(struct kvm *kvm);
333 void vgic_its_invalidate_cache(struct kvm *kvm);
336 int vgic_its_inv_lpi(struct kvm *kvm, struct vgic_irq *irq);
339 bool vgic_supports_direct_msis(struct kvm *kvm);
340 int vgic_v4_init(struct kvm *kvm);
341 void vgic_v4_teardown(struct kvm *kvm);
342 void vgic_v4_configure_vsgis(struct kvm *kvm);