| /kernel/linux/linux-5.10/arch/arm64/kvm/vgic/ |
| D | vgic-v4.c | 224 if (dist->its_vm.vpes) in vgic_v4_init() 229 dist->its_vm.vpes = kcalloc(nr_vcpus, sizeof(*dist->its_vm.vpes), in vgic_v4_init() 231 if (!dist->its_vm.vpes) in vgic_v4_init() 237 dist->its_vm.vpes[i] = &vcpu->arch.vgic_cpu.vgic_v3.its_vpe; in vgic_v4_init() 242 kfree(dist->its_vm.vpes); in vgic_v4_init() 244 dist->its_vm.vpes = NULL; in vgic_v4_init() 249 int irq = dist->its_vm.vpes[i]->irq; in vgic_v4_init() 271 * Trick: adjust the number of vpes so we know in vgic_v4_init() 296 if (!its_vm->vpes) in vgic_v4_teardown() 301 int irq = its_vm->vpes[i]->irq; in vgic_v4_teardown() [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/kvm/vgic/ |
| D | vgic-v4.c | 251 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 …]
|
| D | vgic-v3.c | 360 free_irq(dist->its_vm.vpes[i]->irq, kvm_get_vcpu(kvm, i)); in unmap_all_vpes() 370 dist->its_vm.vpes[i]->irq)); in map_all_vpes()
|
| /kernel/linux/linux-5.10/drivers/irqchip/ |
| D | irq-gic-v4.c | 152 vm->vpes[i]->its_vm = vm; in its_alloc_vcpu_irqs() 153 vm->vpes[i]->idai = true; in its_alloc_vcpu_irqs() 164 vm->vpes[i]->irq = vpe_base_irq + i; in its_alloc_vcpu_irqs() 165 ret = its_alloc_vcpu_sgis(vm->vpes[i], i); in its_alloc_vcpu_irqs() 189 unsigned int irq = irq_find_mapping(vm->vpes[i]->sgi_domain, 0); in its_free_sgi_irqs() 195 irq_domain_remove(vm->vpes[i]->sgi_domain); in its_free_sgi_irqs() 196 irq_domain_free_fwnode(vm->vpes[i]->fwnode); in its_free_sgi_irqs() 203 irq_domain_free_irqs(vm->vpes[0]->irq, vm->nr_vpes); in its_free_vcpu_irqs()
|
| D | irq-gic-v3-its.c | 172 struct its_vpe **vpes; member 1755 * (a) Either we have a GICv4.1, and all vPEs have to be mapped at all times 1759 * and we're better off mapping all VPEs always 1761 * If neither (a) nor (b) is true, then we map vPEs on demand. 1782 * If the VM wasn't mapped yet, iterate over the vpes and get in its_map_vm() 1791 struct its_vpe *vpe = vm->vpes[i]; in its_map_vm() 1819 its_send_vmapp(its, vm->vpes[i], false); in its_unmap_vm() 1860 /* Ensure all the VPEs are mapped on this ITS */ in its_vlpi_map() 3697 vpe_proxy.vpes[vpe->vpe_proxy_event] = NULL; in its_vpe_db_proxy_unmap_locked() 3704 * effect... Let's just hope VPEs don't migrate too often. in its_vpe_db_proxy_unmap_locked() [all …]
|
| D | irq-mips-cpu.c | 99 /* We can only send IPIs to VPEs within the local core */ in mips_mt_send_ipi()
|
| /kernel/linux/linux-6.6/drivers/irqchip/ |
| D | irq-gic-v4.c | 173 vm->vpes[i]->its_vm = vm; in its_alloc_vcpu_irqs() 174 vm->vpes[i]->idai = true; in its_alloc_vcpu_irqs() 184 vm->vpes[i]->irq = vpe_base_irq + i; in its_alloc_vcpu_irqs() 185 ret = its_alloc_vcpu_sgis(vm->vpes[i], i); in its_alloc_vcpu_irqs() 209 unsigned int irq = irq_find_mapping(vm->vpes[i]->sgi_domain, 0); in its_free_sgi_irqs() 215 irq_domain_remove(vm->vpes[i]->sgi_domain); in its_free_sgi_irqs() 216 irq_domain_free_fwnode(vm->vpes[i]->fwnode); in its_free_sgi_irqs() 223 irq_domain_free_irqs(vm->vpes[0]->irq, vm->nr_vpes); in its_free_vcpu_irqs()
|
| D | irq-gic-v3-its.c | 174 struct its_vpe **vpes; member 1769 * (a) Either we have a GICv4.1, and all vPEs have to be mapped at all times 1773 * and we're better off mapping all VPEs always 1775 * If neither (a) nor (b) is true, then we map vPEs on demand. 1796 * If the VM wasn't mapped yet, iterate over the vpes and get in its_map_vm() 1805 struct its_vpe *vpe = vm->vpes[i]; in its_map_vm() 1833 its_send_vmapp(its, vm->vpes[i], false); in its_unmap_vm() 1874 /* Ensure all the VPEs are mapped on this ITS */ in its_vlpi_map() 3741 vpe_proxy.vpes[vpe->vpe_proxy_event] = NULL; in its_vpe_db_proxy_unmap_locked() 3748 * effect... Let's just hope VPEs don't migrate too often. in its_vpe_db_proxy_unmap_locked() [all …]
|
| D | irq-mips-cpu.c | 99 /* We can only send IPIs to VPEs within the local core */ in mips_mt_send_ipi()
|
| /kernel/linux/linux-5.10/arch/mips/kernel/ |
| D | pm-cps.c | 26 * @online: the count of online coupled VPEs 34 * returns the number of VPEs that were in the wait state at the point this 51 * Indicates the number of coupled VPEs ready to operate in a non-coherent 127 /* Calculate which coupled CPUs (VPEs) are online */ in cps_pm_enter_state() 180 * it needs to wake up any coupled VPEs still running their wait in cps_pm_enter_state() 182 * coordination between the coupled VPEs & provide the governor with in cps_pm_enter_state() 183 * a chance to reflect on the length of time the VPEs were in the in cps_pm_enter_state() 543 * At this point it is safe for all VPEs to proceed with in cps_gen_entry_code() 545 * to indicate to the other VPEs that they may continue. in cps_gen_entry_code() 552 * VPEs which did not disable coherence will continue in cps_gen_entry_code() [all …]
|
| D | cps-vec.S | 171 * Boot any other VPEs within this core that should be online, and 251 /* Retrieve the number of VPEs within the core */ 317 /* Calculate this VPEs ID. If the core doesn't support MT use 0 */ 332 /* Find the number of VPEs present in the core */ 351 1: /* Calculate a pointer to this VPEs struct vpe_boot_config */ 431 /* Calculate a pointer to the VPEs struct vpe_boot_config */
|
| D | vpe-mt.c | 22 /* The number of TCs and VPEs physically available on the core */ 340 pr_warn("No VPEs reserved for AP/SP, not initialize VPE loader\n" in vpe_module_init()
|
| D | vpe-cmp.c | 101 pr_warn("No VPEs reserved for AP/SP, not initialize VPE loader\n" in vpe_module_init()
|
| D | mips-mt-fpaff.c | 20 * CPU mask used to set process affinity for MT VPEs/TCs with FPUs
|
| /kernel/linux/linux-6.6/arch/mips/kernel/ |
| D | pm-cps.c | 26 * @online: the count of online coupled VPEs 34 * returns the number of VPEs that were in the wait state at the point this 51 * Indicates the number of coupled VPEs ready to operate in a non-coherent 127 /* Calculate which coupled CPUs (VPEs) are online */ in cps_pm_enter_state() 180 * it needs to wake up any coupled VPEs still running their wait in cps_pm_enter_state() 182 * coordination between the coupled VPEs & provide the governor with in cps_pm_enter_state() 183 * a chance to reflect on the length of time the VPEs were in the in cps_pm_enter_state() 543 * At this point it is safe for all VPEs to proceed with in cps_gen_entry_code() 545 * to indicate to the other VPEs that they may continue. in cps_gen_entry_code() 552 * VPEs which did not disable coherence will continue in cps_gen_entry_code() [all …]
|
| D | cps-vec.S | 168 * Boot any other VPEs within this core that should be online, and 248 /* Retrieve the number of VPEs within the core */ 313 /* Calculate this VPEs ID. If the core doesn't support MT use 0 */ 328 /* Find the number of VPEs present in the core */ 347 1: /* Calculate a pointer to this VPEs struct vpe_boot_config */ 428 /* Calculate a pointer to the VPEs struct vpe_boot_config */
|
| D | vpe-mt.c | 22 /* 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()
|
| D | mips-mt-fpaff.c | 20 * CPU mask used to set process affinity for MT VPEs/TCs with FPUs
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/interrupt-controller/ |
| D | mti,gic.yaml | 14 The MIPS GIC routes external interrupts to individual VPEs and IRQ pins. 58 allocate the last (2 * number of VPEs in the system).
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/interrupt-controller/ |
| D | mti,gic.yaml | 14 The MIPS GIC routes external interrupts to individual VPEs and IRQ pins. 58 allocate the last (2 * number of VPEs in the system).
|
| /kernel/linux/linux-6.6/arch/mips/include/asm/ |
| D | mips_mt.h | 12 * How many VPEs and TCs is Linux allowed to use? 0 means no limit.
|
| /kernel/linux/linux-5.10/arch/mips/include/asm/ |
| D | mips_mt.h | 12 * How many VPEs and TCs is Linux allowed to use? 0 means no limit.
|
| /kernel/linux/linux-5.10/include/linux/irqchip/ |
| D | arm-gic-v4.h | 23 struct its_vpe **vpes; member
|
| /kernel/linux/linux-6.6/include/linux/irqchip/ |
| D | arm-gic-v4.h | 23 struct its_vpe **vpes; member
|
| /kernel/linux/linux-5.10/arch/mips/oprofile/ |
| D | op_model_mipsxx.c | 47 * number of VPEs used by Linux and in the 34K this number is fixed to two
|