Lines Matching refs:kvm
104 return vcpu->kvm->arch.vgic.implementation_rev; in vgic_get_implementation_rev()
135 static inline int vgic_write_guest_lock(struct kvm *kvm, gpa_t gpa, in vgic_write_guest_lock() argument
138 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_write_guest_lock()
142 ret = kvm_write_guest_lock(kvm, gpa, data, len); in vgic_write_guest_lock()
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);
244 bool vgic_v3_check_base(struct kvm *kvm);
250 bool vgic_has_its(struct kvm *kvm);
254 int vgic_its_inject_msi(struct kvm *kvm, struct kvm_msi *msi);
268 int vgic_lazy_init(struct kvm *kvm);
269 int vgic_init(struct kvm *kvm);
271 void vgic_debug_init(struct kvm *kvm);
272 void vgic_debug_destroy(struct kvm *kvm);
302 vgic_v3_rd_region_size(struct kvm *kvm, struct vgic_redist_region *rdreg) in vgic_v3_rd_region_size() argument
305 return atomic_read(&kvm->online_vcpus) * KVM_VGIC_V3_REDIST_SIZE; in vgic_v3_rd_region_size()
310 struct vgic_redist_region *vgic_v3_rdist_region_from_index(struct kvm *kvm,
314 bool vgic_v3_rdist_overlap(struct kvm *kvm, gpa_t base, size_t size);
316 static inline bool vgic_dist_overlap(struct kvm *kvm, gpa_t base, size_t size) in vgic_dist_overlap() argument
318 struct vgic_dist *d = &kvm->arch.vgic; in vgic_dist_overlap()
325 int vgic_copy_lpi_list(struct kvm *kvm, struct kvm_vcpu *vcpu, u32 **intid_ptr);
326 int vgic_its_resolve_lpi(struct kvm *kvm, struct vgic_its *its,
328 struct vgic_its *vgic_msi_to_its(struct kvm *kvm, struct kvm_msi *msi);
329 int vgic_its_inject_cached_translation(struct kvm *kvm, struct kvm_msi *msi);
330 void vgic_lpi_translation_cache_init(struct kvm *kvm);
331 void vgic_lpi_translation_cache_destroy(struct kvm *kvm);
332 void vgic_its_invalidate_cache(struct kvm *kvm);
335 int vgic_its_inv_lpi(struct kvm *kvm, struct vgic_irq *irq);
338 bool vgic_supports_direct_msis(struct kvm *kvm);
339 int vgic_v4_init(struct kvm *kvm);
340 void vgic_v4_teardown(struct kvm *kvm);
341 void vgic_v4_configure_vsgis(struct kvm *kvm);