Home
last modified time | relevance | path

Searched full:vpes (Results 1 – 14 of 14) sorted by relevance

/linux/arch/arm64/kvm/vgic/
H A Dvgic-v4.c251 if (dist->its_vm.vpes) in vgic_v4_init()
256 dist->its_vm.vpes = kcalloc(nr_vcpus, sizeof(*dist->its_vm.vpes), in vgic_v4_init()
258 if (!dist->its_vm.vpes) in vgic_v4_init()
264 dist->its_vm.vpes[i] = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_init()
269 kfree(dist->its_vm.vpes); in vgic_v4_init()
271 dist->its_vm.vpes = NULL; in vgic_v4_init()
276 int irq = dist->its_vm.vpes[i]->irq; in vgic_v4_init()
297 * Trick: adjust the number of vpes so we know in vgic_v4_init()
322 if (!its_vm->vpes) in vgic_v4_teardown()
327 int irq = its_vm->vpes[i]->irq; in vgic_v4_teardown()
[all …]
H A Dvgic-v3.c372 free_irq(dist->its_vm.vpes[i]->irq, kvm_get_vcpu(kvm, i)); in unmap_all_vpes()
382 dist->its_vm.vpes[i]->irq)); in map_all_vpes()
H A Dvgic-mmio-v3.c538 * vPEs (which we don't support for obvious reasons). in vgic_mmio_write_invlpi()
/linux/drivers/irqchip/
H A Dirq-gic-v4.c174 vm->vpes[i]->its_vm = vm; in its_alloc_vcpu_irqs()
175 vm->vpes[i]->idai = true; in its_alloc_vcpu_irqs()
185 vm->vpes[i]->irq = vpe_base_irq + i; in its_alloc_vcpu_irqs()
186 ret = its_alloc_vcpu_sgis(vm->vpes[i], i); in its_alloc_vcpu_irqs()
210 unsigned int irq = irq_find_mapping(vm->vpes[i]->sgi_domain, 0); in its_free_sgi_irqs()
216 irq_domain_remove(vm->vpes[i]->sgi_domain); in its_free_sgi_irqs()
217 irq_domain_free_fwnode(vm->vpes[i]->fwnode); in its_free_sgi_irqs()
224 irq_domain_free_irqs(vm->vpes[0]->irq, vm->nr_vpes); in its_free_vcpu_irqs()
H A Dirq-gic-v3-its.c181 struct its_vpe **vpes; member
1858 * (a) Either we have a GICv4.1, and all vPEs have to be mapped at all times
1862 * and we're better off mapping all VPEs always
1864 * If neither (a) nor (b) is true, then we map vPEs on demand.
1883 * If the VM wasn't mapped yet, iterate over the vpes and get in its_map_vm()
1892 struct its_vpe *vpe = vm->vpes[i]; in its_map_vm()
1914 guard(raw_spinlock)(&vm->vpes[i]->vpe_lock); in its_unmap_vm()
1915 its_send_vmapp(its, vm->vpes[i], false); in its_unmap_vm()
1949 /* Ensure all the VPEs are mapped on this ITS */ in its_vlpi_map()
3805 vpe_proxy.vpes[vpe->vpe_proxy_event] = NULL; in its_vpe_db_proxy_unmap_locked()
[all …]
H A Dirq-mips-cpu.c99 /* We can only send IPIs to VPEs within the local core */ in mips_mt_send_ipi()
/linux/arch/mips/kernel/
H A Dpm-cps.c27 * @online: the count of online coupled VPEs
35 * returns the number of VPEs that were in the wait state at the point this
52 * Indicates the number of coupled VPEs ready to operate in a non-coherent
121 /* Calculate which coupled CPUs (VPEs) are online */ in cps_pm_enter_state()
174 * it needs to wake up any coupled VPEs still running their wait in cps_pm_enter_state()
176 * coordination between the coupled VPEs & provide the governor with in cps_pm_enter_state()
177 * a chance to reflect on the length of time the VPEs were in the in cps_pm_enter_state()
537 * At this point it is safe for all VPEs to proceed with in cps_gen_entry_code()
539 * to indicate to the other VPEs that they may continue. in cps_gen_entry_code()
546 * VPEs which did not disable coherence will continue in cps_gen_entry_code()
[all …]
H A Dcps-vec.S140 * Boot any other VPEs within this core that should be online, and
216 /* Retrieve the number of VPEs within the core */
281 /* Calculate this VPEs ID. If the core doesn't support MT use 0 */
296 /* Find the number of VPEs present in the core */
315 1: /* Calculate a pointer to this VPEs struct vpe_boot_config */
396 /* Calculate a pointer to the VPEs struct vpe_boot_config */
H A Dvpe-mt.c22 /* The number of TCs and VPEs physically available on the core */
339 pr_warn("No VPEs reserved for AP/SP, not initialize VPE loader\n" in vpe_module_init()
H A Dmips-mt-fpaff.c21 * CPU mask used to set process affinity for MT VPEs/TCs with FPUs
/linux/Documentation/devicetree/bindings/interrupt-controller/
H A Dmti,gic.yaml14 The MIPS GIC routes external interrupts to individual VPEs and IRQ pins.
58 allocate the last (2 * number of VPEs in the system).
/linux/arch/mips/include/asm/
H A Dmips_mt.h12 * How many VPEs and TCs is Linux allowed to use? 0 means no limit.
/linux/include/linux/irqchip/
H A Darm-gic-v4.h23 struct its_vpe **vpes; member
/linux/arch/mips/
H A DKconfig2201 on cores with the MT ASE and uses the available VPEs to implement