Home
last modified time | relevance | path

Searched full:gicv2 (Results 1 – 25 of 30) sorted by relevance

12

/Linux-v5.15/Documentation/virt/kvm/devices/
Darm-vgic.rst17 guest GICv2 through this interface. For information on creating a guest GICv3
19 create both a GICv3 and GICv2 device on the same VM.
58 GICv2 specs. Getting or setting such a register has the same effect as
65 GICv2 is changed in a way directly observable by the guest or userspace.
92 defined in the GICv2 specs. Getting or setting such a register has the
96 fixed format for our implementation that fits with the model of a "GICv2
112 similar to GICv2's GICH_APR.
Darm-vgic-v3.rst14 possible to create both a GICv3 and GICv2 on the same VM.
/Linux-v5.15/include/kvm/
Darm_vgic.h37 VGIC_V2, /* Good ol' GICv2 */
65 /* maximum number of VCPUs allowed (GICv2 limits us to 8) */
143 u8 targets; /* GICv2 target VCPUs mask */
146 u8 source; /* GICv2 SGIs only */
147 u8 active_source; /* GICv2 SGIs only */
227 /* vGIC model the kernel emulates for the guest (GICv2 or GICv3) */
233 /* Userspace can write to GICv2 IGROUPR */
244 /* either a GICv2 CPU interface */
/Linux-v5.15/arch/arm64/boot/dts/arm/
Dfoundation-v8-psci.dts4 * ARMv8 Foundation model DTS (GICv2+PSCI configuration)
8 #include "foundation-v8-gicv2.dtsi"
Dfoundation-v8.dts5 * ARMv8 Foundation model DTS (GICv2 configuration)
9 #include "foundation-v8-gicv2.dtsi"
Dfoundation-v8-gicv2.dtsi4 * ARMv8 Foundation model DTS (GICv2 configuration)
/Linux-v5.15/arch/arm64/kvm/vgic/
Dvgic-mmio-v2.c20 * Revision 1: Report GICv2 interrupts as group 0 instead of group 1
359 /* GICv2 hardware systems support max. 32 groups */ in vgic_mmio_read_apr()
371 /* GICv3 only uses ICH_AP1Rn for memory mapped (GICv2) guests */ in vgic_mmio_read_apr()
385 /* GICv2 hardware systems support max. 32 groups */ in vgic_mmio_write_apr()
397 /* GICv3 only uses ICH_AP1Rn for memory mapped (GICv2) guests */ in vgic_mmio_write_apr()
Dvgic-init.c33 * structures. Can be executed lazily for GICv2.
81 * which had no chance yet to check the availability of the GICv2 in kvm_vgic_create()
147 * initialization when using a virtual GICv2. in kvm_vgic_dist_init()
392 * is a GICv2. A GICv3 must be explicitly initialized by the guest using the
403 * for the legacy case of a GICv2. Any other type must in vgic_lazy_init()
Dvgic-v3.c270 * If we are emulating a GICv3, we do it in an non-GICv2-compatible in vgic_v3_enable()
654 kvm_err("Cannot register GICv2 KVM device.\n"); in vgic_v3_probe()
667 kvm_info("disabling GICv2 emulation\n"); in vgic_v3_probe()
694 * If dealing with a GICv2 emulation on GICv3, VMCR_EL2.VFIQen in vgic_v3_load()
Dvgic-mmio.c327 * GICv2 SGIs are terribly broken. We can't restore in vgic_uaccess_write_spending()
419 * More fun with GICv2 SGIs! If we're clearing one of them in vgic_uaccess_write_cpending()
446 * For GICv2 private interrupts we don't have to do anything because
548 * The GICv2 architecture indicates that the source CPUID for in vgic_mmio_change_active()
556 * for a GICv2 VM on some GIC implementations. Oh well. in vgic_mmio_change_active()
Dvgic-v2.c194 /* The GICv2 LR only holds five bits of priority. */ in vgic_v2_populate_lr()
383 kvm_err("Cannot register GICv2 KVM device\n"); in vgic_v2_probe()
Dvgic-debug.c149 seq_printf(s, "vgic_model:\t%s\n", v3 ? "GICv3" : "GICv2"); in print_dist_state()
Dvgic.h132 * state to userspace can generate either GICv2 or GICv3 CPU interface
Dvgic.c771 /* GICv2 SGIs can count for more than one... */ in compute_ap_list_depth()
844 * GICv2 can always be accessed from the kernel because it is in can_access_vgic_from_kernel()
/Linux-v5.15/drivers/irqchip/
Dirq-gic.c1270 name = kasprintf(GFP_KERNEL, "GICv2"); in __gic_init_bases()
1336 * first page of a GICv2. in gic_check_eoimode()
1342 pr_warn("GIC: GICv2 detected, but range too small and irqchip.gicv2_force_probe not set\n"); in gic_check_eoimode()
1351 * The first page was that of a GICv2, and in gic_check_eoimode()
1353 * to be a GICv2, and update the mapping. in gic_check_eoimode()
1355 pr_warn("GIC: GICv2 at %pa, but range is too small (broken DT?), assuming 8kB\n", in gic_check_eoimode()
1363 * We detected *two* initial GICv2 pages in a in gic_check_eoimode()
1364 * row. Could be a GICv2 aliased over two 64kB in gic_check_eoimode()
1372 pr_warn("GIC: Aliased GICv2 at %pa, trying to find the canonical range over 128kB\n", in gic_check_eoimode()
1380 * Verify that we have the first 4kB of a GICv2 in gic_check_eoimode()
[all …]
/Linux-v5.15/include/linux/irqchip/
Darm-vgic-info.h14 /* Full GICv2 */
Darm-gic-v3.h50 * Those registers are actually from GICv2, but the spec demands that they
578 /* These are for GICv2 emulation only */
/Linux-v5.15/Documentation/devicetree/bindings/interrupt-controller/
Darm,gic.yaml100 For GICv2 with virtualization extensions, additional regions are
201 // GICv2
/Linux-v5.15/Documentation/devicetree/bindings/gpio/
Dgpio-xgene-sb.txt12 | (GICv2) +--------------+ +------ GPIO_[N+8]/EXT_INT_N
/Linux-v5.15/Documentation/devicetree/bindings/pci/
Dbrcm,stb-pcie.yaml149 interrupt-map = <0 0 0 1 &gicv2 GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
/Linux-v5.15/arch/arm64/kvm/hyp/
Dvgic-v3-sr.c264 * Group0 interrupt (as generated in GICv2 mode) to be in __vgic_v3_activate_traps()
412 * - [63] MMIO (GICv2) capable
420 * To check whether we have a MMIO-based (GICv2 compatible) in __vgic_v3_get_gic_config()
/Linux-v5.15/arch/arm/boot/dts/
Dbcm2711.dtsi13 interrupt-parent = <&gicv2>;
56 gicv2: interrupt-controller@40041000 { label
513 interrupt-map = <0 0 0 1 &gicv2 GIC_SPI 143
/Linux-v5.15/Documentation/translations/zh_CN/arm64/
Dbooting.txt205 - 设备树(DT)或 ACPI 表必须描述一个 GICv2 中断控制器。
/Linux-v5.15/Documentation/translations/zh_TW/arm64/
Dbooting.txt209 - 設備樹(DT)或 ACPI 表必須描述一個 GICv2 中斷控制器。
/Linux-v5.15/Documentation/arm64/
Dmemory.rst99 GICv2 gets mapped next to the HYP idmap page, as do vectors when

12