Searched refs:vgic (Results 1 – 13 of 13) sorted by relevance
/linux-4.4.14/virt/kvm/arm/ |
D | vgic-v3.c | 52 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) in vgic_v3_get_lr() 59 vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V2) in vgic_v3_get_lr() 91 switch (vcpu->kvm->arch.vgic.vgic_model) { in vgic_v3_set_lr() 199 if (vcpu->kvm->arch.vgic.vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) in vgic_v3_enable() 241 struct vgic_params *vgic = &vgic_v3_params; in vgic_v3_probe() local 243 vgic->maint_irq = irq_of_parse_and_map(vgic_node, 0); in vgic_v3_probe() 244 if (!vgic->maint_irq) { in vgic_v3_probe() 256 vgic->nr_lr = (ich_vtr_el2 & 0xf) + 1; in vgic_v3_probe() 257 vgic->can_emulate_gicv2 = false; in vgic_v3_probe() 265 vgic->vcpu_base = 0; in vgic_v3_probe() [all …]
|
D | vgic-v2.c | 196 struct vgic_params *vgic = &vgic_v2_params; in vgic_v2_probe() local 198 vgic->maint_irq = irq_of_parse_and_map(vgic_node, 0); in vgic_v2_probe() 199 if (!vgic->maint_irq) { in vgic_v2_probe() 211 vgic->vctrl_base = of_iomap(vgic_node, 2); in vgic_v2_probe() 212 if (!vgic->vctrl_base) { in vgic_v2_probe() 218 vgic->nr_lr = readl_relaxed(vgic->vctrl_base + GICH_VTR); in vgic_v2_probe() 219 vgic->nr_lr = (vgic->nr_lr & 0x3f) + 1; in vgic_v2_probe() 221 ret = create_hyp_io_mappings(vgic->vctrl_base, in vgic_v2_probe() 222 vgic->vctrl_base + resource_size(&vctrl_res), in vgic_v2_probe() 250 vgic->can_emulate_gicv2 = true; in vgic_v2_probe() [all …]
|
D | vgic.c | 117 static const struct vgic_params *vgic; variable 121 vcpu->kvm->arch.vgic.vm_ops.add_sgi_source(vcpu, irq, source); in add_sgi_source() 126 return vcpu->kvm->arch.vgic.vm_ops.queue_sgi(vcpu, irq); in queue_sgi() 131 return kvm->arch.vgic.vm_ops.map_resources(kvm, vgic); in kvm_vgic_map_resources() 276 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_is_edge() 285 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_is_enabled() 292 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_is_queued() 299 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_is_active() 306 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_set_queued() 313 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in vgic_irq_clear_queued() [all …]
|
D | vgic-v2-emul.c | 51 reg = vcpu->kvm->arch.vgic.enabled; in handle_mmio_misc() 55 vcpu->kvm->arch.vgic.enabled = reg & 1; in handle_mmio_misc() 63 reg |= (vcpu->kvm->arch.vgic.nr_irqs >> 5) - 1; in handle_mmio_misc() 130 u32 *reg = vgic_bytemap_get_reg(&vcpu->kvm->arch.vgic.irq_priority, in handle_mmio_priority_reg() 142 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_get_target_reg() 156 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_set_target_reg() 221 reg = vgic_bitmap_get_reg(&vcpu->kvm->arch.vgic.irq_cfg, in handle_mmio_cfg_reg() 248 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in read_set_clear_sgi_pend_reg() 270 struct vgic_dist *dist = &vcpu->kvm->arch.vgic; in write_set_clear_sgi_pend_reg() 410 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_dispatch_sgi() [all …]
|
D | vgic-v3-emul.c | 72 if (vcpu->kvm->arch.vgic.enabled) in handle_mmio_ctlr() 79 vcpu->kvm->arch.vgic.enabled = !!(reg & GICD_CTLR_ENABLE_SS_G1); in handle_mmio_ctlr() 98 reg = (min(vcpu->kvm->arch.vgic.nr_irqs, 1024) >> 5) - 1; in handle_mmio_typer() 212 reg = vgic_bytemap_get_reg(&vcpu->kvm->arch.vgic.irq_priority, in handle_mmio_priority_reg_dist() 231 reg = vgic_bitmap_get_reg(&vcpu->kvm->arch.vgic.irq_cfg, in handle_mmio_cfg_reg_dist() 279 struct vgic_dist *dist = &kvm->arch.vgic; in handle_mmio_route_reg() 635 reg = vgic_bytemap_get_reg(&vcpu->kvm->arch.vgic.irq_priority, in handle_mmio_priority_reg_redist() 648 u32 *reg = vgic_bitmap_get_reg(&vcpu->kvm->arch.vgic.irq_cfg, in handle_mmio_cfg_reg_redist() 770 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v3_map_resources() 845 struct vgic_dist *dist = &kvm->arch.vgic; in vgic_v3_init_model() [all …]
|
/linux-4.4.14/arch/arm64/kvm/ |
D | Makefile | 22 kvm-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/vgic.o 23 kvm-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/vgic-v2.o 24 kvm-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/vgic-v2-emul.o 25 kvm-$(CONFIG_KVM_ARM_HOST) += vgic-v2-switch.o 26 kvm-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/vgic-v3.o 27 kvm-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/vgic-v3-emul.o 28 kvm-$(CONFIG_KVM_ARM_HOST) += vgic-v3-switch.o
|
/linux-4.4.14/arch/arm/kvm/ |
D | Makefile | 23 obj-y += $(KVM)/arm/vgic.o 24 obj-y += $(KVM)/arm/vgic-v2.o 25 obj-y += $(KVM)/arm/vgic-v2-emul.o
|
/linux-4.4.14/include/kvm/ |
D | arm_vgic.h | 350 #define irqchip_in_kernel(k) (!!((k)->arch.vgic.in_kernel)) 351 #define vgic_initialized(k) (!!((k)->arch.vgic.nr_cpus)) 352 #define vgic_ready(k) ((k)->arch.vgic.ready)
|
/linux-4.4.14/arch/arm/include/asm/ |
D | kvm_host.h | 69 struct vgic_dist vgic; member
|
/linux-4.4.14/arch/arm64/include/asm/ |
D | kvm_host.h | 65 struct vgic_dist vgic; member
|
/linux-4.4.14/arch/arm64/kernel/ |
D | asm-offsets.c | 153 DEFINE(KVM_VGIC_VCTRL, offsetof(struct kvm, arch.vgic.vctrl_base)); in main()
|
/linux-4.4.14/Documentation/virtual/kvm/devices/ |
D | arm-vgic.txt | 118 -ENOMEM: memory shortage when allocating vgic internal data
|
/linux-4.4.14/arch/arm/kernel/ |
D | asm-offsets.c | 206 DEFINE(KVM_VGIC_VCTRL, offsetof(struct kvm, arch.vgic.vctrl_base)); in main()
|