Home
last modified time | relevance | path

Searched refs:vgic (Results 1 – 16 of 16) sorted by relevance

/linux-4.19.296/virt/kvm/arm/vgic/
Dvgic-init.c65 struct vgic_dist *dist = &kvm->arch.vgic; in kvm_vgic_early_init()
127 kvm->arch.vgic.in_kernel = true; in kvm_vgic_create()
128 kvm->arch.vgic.vgic_model = type; in kvm_vgic_create()
130 kvm->arch.vgic.vgic_dist_base = VGIC_ADDR_UNDEF; in kvm_vgic_create()
133 kvm->arch.vgic.vgic_cpu_base = VGIC_ADDR_UNDEF; in kvm_vgic_create()
135 INIT_LIST_HEAD(&kvm->arch.vgic.rd_regions); in kvm_vgic_create()
154 struct vgic_dist *dist = &kvm->arch.vgic; in kvm_vgic_dist_init()
209 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in kvm_vgic_vcpu_init()
277 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_init()
342 struct vgic_dist *dist = &kvm->arch.vgic; in kvm_vgic_dist_destroy()
[all …]
Dvgic-debug.c74 iter->nr_spis = kvm->arch.vgic.nr_spis; in iter_init()
75 if (kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) { in iter_init()
100 iter = kvm->arch.vgic.iter; in vgic_debug_start()
113 kvm->arch.vgic.iter = iter; in vgic_debug_start()
125 struct vgic_state_iter *iter = kvm->arch.vgic.iter; in vgic_debug_next()
147 iter = kvm->arch.vgic.iter; in vgic_debug_stop()
150 kvm->arch.vgic.iter = NULL; in vgic_debug_stop()
238 print_dist_state(s, &kvm->arch.vgic); in vgic_debug_show()
242 if (!kvm->arch.vgic.initialized) in vgic_debug_show()
Dvgic-kvm-device.c42 if (kvm->arch.vgic.vgic_model != type_needed) in vgic_check_type()
67 struct vgic_dist *vgic = &kvm->arch.vgic; in kvm_vgic_addr() local
75 addr_ptr = &vgic->vgic_dist_base; in kvm_vgic_addr()
80 addr_ptr = &vgic->vgic_cpu_base; in kvm_vgic_addr()
85 addr_ptr = &vgic->vgic_dist_base; in kvm_vgic_addr()
98 rdreg = list_first_entry_or_null(&vgic->rd_regions, in kvm_vgic_addr()
201 if (vgic_ready(dev->kvm) || dev->kvm->arch.vgic.nr_spis) in vgic_set_common_attr()
204 dev->kvm->arch.vgic.nr_spis = in vgic_set_common_attr()
248 r = put_user(dev->kvm->arch.vgic.nr_spis + in vgic_get_common_attr()
Dvgic-v3.c47 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_v3_fold_lr_state()
132 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_v3_populate_lr()
220 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_v3_set_vmcr()
250 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_v3_get_vmcr()
300 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) { in vgic_v3_enable()
377 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v3_save_pending_tables()
434 struct vgic_dist *d = &kvm->arch.vgic; in vgic_v3_rdist_overlap()
451 struct vgic_dist *d = &kvm->arch.vgic; in vgic_v3_check_base()
497 struct list_head *rd_regions = &kvm->arch.vgic.rd_regions; in vgic_v3_rdist_region_from_index()
510 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v3_map_resources()
Dvgic-mmio-v2.c36 struct vgic_dist *vgic = &vcpu->kvm->arch.vgic; in vgic_mmio_read_v2_misc() local
41 value = vgic->enabled ? GICD_ENABLE : 0; in vgic_mmio_read_v2_misc()
44 value = vgic->nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_mmio_read_v2_misc()
50 (vgic->implementation_rev << GICD_IIDR_REVISION_SHIFT) | in vgic_mmio_read_v2_misc()
64 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_mmio_write_v2_misc()
98 vcpu->kvm->arch.vgic.v2_groups_user_writable = true; in vgic_mmio_uaccess_write_v2_misc()
110 if (vcpu->kvm->arch.vgic.v2_groups_user_writable) in vgic_mmio_uaccess_write_v2_group()
Dvgic-mmio-v3.c49 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_has_its()
72 struct vgic_dist *vgic = &vcpu->kvm->arch.vgic; in vgic_mmio_read_v3_misc() local
77 if (vgic->enabled) in vgic_mmio_read_v3_misc()
82 value = vgic->nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_mmio_read_v3_misc()
93 (vgic->implementation_rev << GICD_IIDR_REVISION_SHIFT) | in vgic_mmio_read_v3_misc()
107 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_mmio_write_v3_misc()
409 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_mmio_read_propbase()
418 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_mmio_write_propbase()
632 struct vgic_dist *vgic = &kvm->arch.vgic; in vgic_register_redist_iodev() local
649 rdreg = vgic_v3_rdist_free_slot(&vgic->rd_regions); in vgic_register_redist_iodev()
[all …]
Dvgic-v4.c117 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v4_init()
186 struct its_vm *its_vm = &kvm->arch.vgic.its_vm; in vgic_v4_teardown()
293 .vm = &kvm->arch.vgic.its_vm, in kvm_vgic_v4_set_forwarding()
Dvgic-mmio.c209 vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V2); in is_vgic_v2_sgi()
337 u32 model = vcpu->kvm->arch.vgic.vgic_model; in vgic_mmio_change_active()
383 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3 || in vgic_change_active_prepare()
391 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3 || in vgic_change_active_finish()
571 int nr_irqs = vcpu->kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_read_irq_line_level_info()
593 int nr_irqs = vcpu->kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in vgic_write_irq_line_level_info()
723 int flags, nr_irqs = kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS; in check_region()
886 struct vgic_io_device *io_device = &kvm->arch.vgic.dist_iodev; in vgic_register_dist_iodev()
Dvgic.c71 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_get_lpi()
111 if (intid < (kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS)) { in vgic_get_irq()
112 intid = array_index_nospec(intid, kvm->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS); in vgic_get_irq()
113 return &kvm->arch.vgic.spis[intid - VGIC_NR_PRIVATE_IRQS]; in vgic_get_irq()
135 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_put_irq()
213 !irq->target_vcpu->kvm->arch.vgic.enabled)) in vgic_target_oracle()
930 if (!vcpu->kvm->arch.vgic.enabled) in kvm_vgic_vcpu_pending_irq()
Dtrace.h33 #define TRACE_INCLUDE_PATH ../../../virt/kvm/arm/vgic
Dvgic-irqfd.c111 struct vgic_dist *dist = &kvm->arch.vgic; in kvm_vgic_setup_default_irq_routing()
Dvgic-its.c53 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_add_lpi()
293 u64 propbase = GICR_PROPBASER_ADDRESS(kvm->arch.vgic.propbaser); in update_lpi_config()
331 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_copy_lpi_list()
935 lpi_nr >= max_lpis_propbaser(kvm->arch.vgic.propbaser)) in vgic_its_cmd_handle_mapi()
1732 dev->kvm->arch.vgic.msis_require_devid = true; in vgic_its_create()
1733 dev->kvm->arch.vgic.has_its = true; in vgic_its_create()
1741 dev->kvm->arch.vgic.propbaser = INITIAL_PROPBASER_VALUE; in vgic_its_create()
Dvgic.h310 struct vgic_dist *d = &kvm->arch.vgic; in vgic_dist_overlap()
Dvgic-v2.c317 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v2_map_resources()
/linux-4.19.296/include/kvm/
Darm_vgic.h366 #define irqchip_in_kernel(k) (!!((k)->arch.vgic.in_kernel))
367 #define vgic_initialized(k) ((k)->arch.vgic.initialized)
368 #define vgic_ready(k) ((k)->arch.vgic.ready)
370 ((i) < (k)->arch.vgic.nr_spis + VGIC_NR_PRIVATE_IRQS))
/linux-4.19.296/virt/kvm/arm/
Darm.c236 r = kvm->arch.vgic.msis_require_devid; in kvm_vm_ioctl_check_extension()