Searched full:eiointc (Results 1 – 11 of 11) sorted by relevance
/linux/arch/loongarch/kvm/intc/ |
H A D | eiointc.c | 162 struct loongarch_eiointc *eiointc = vcpu->kvm->arch.eiointc; in kvm_eiointc_read() local 164 if (!eiointc) { in kvm_eiointc_read() 165 kvm_err("%s: eiointc irqchip not valid!\n", __func__); in kvm_eiointc_read() 170 kvm_err("%s: eiointc not aligned addr %llx len %d\n", __func__, addr, len); in kvm_eiointc_read() 177 spin_lock_irqsave(&eiointc->lock, flags); in kvm_eiointc_read() 178 ret = loongarch_eiointc_read(vcpu, eiointc, addr, &data); in kvm_eiointc_read() 179 spin_unlock_irqrestore(&eiointc->lock, flags); in kvm_eiointc_read() 298 struct loongarch_eiointc *eiointc = vcpu->kvm->arch.eiointc; in kvm_eiointc_write() local 300 if (!eiointc) { in kvm_eiointc_write() 301 kvm_err("%s: eiointc irqchip not valid!\n", __func__); in kvm_eiointc_write() [all …]
|
H A D | pch_pic.c | 11 /* update the isr according to irq level and route irq to eiointc */ 17 * set isr and route irq to eiointc and in pch_pic_update_irq() 24 eiointc_set_irq(s->kvm->arch.eiointc, irq, level); in pch_pic_update_irq() 30 eiointc_set_irq(s->kvm->arch.eiointc, irq, level); in pch_pic_update_irq() 77 eiointc_set_irq(kvm->arch.eiointc, irq, level); in pch_msi_set_irq() 165 /* only route to int0: eiointc */ in loongarch_pch_pic_read() 270 /* only route to int0: eiointc */ in loongarch_pch_pic_write() 274 /* route table to eiointc */ in loongarch_pch_pic_write()
|
/linux/Documentation/arch/loongarch/ |
H A D | irq-chip-model.rst | 9 Interrupt Controller), LIOINTC (Legacy I/O Interrupt Controller), EIOINTC (Extended 14 CPUINTC is a per-core controller (in CPU), LIOINTC/EIOINTC/HTVECINTC are per-package 61 interrupts go to PCH-PIC/PCH-LPC/PCH-MSI and gathered by EIOINTC, and then go to 70 | EIOINTC | | LIOINTC | <-- | UARTs | 93 devices interrupts go to PCH-PIC/PCH-MSI and gathered by V-EIOINTC (Virtual 102 | V-EIOINTC | 118 V-EIOINTC (Virtual Extended I/O Interrupt Controller) is an extension of 119 EIOINTC, it only works in VM mode which runs in KVM hypervisor. Interrupts can 120 be routed to up to four vCPUs via standard EIOINTC, however with V-EIOINTC 123 With standard EIOINTC, interrupt routing setting includes two parts: eight [all …]
|
/linux/arch/loongarch/boot/dts/ |
H A D | loongson-2k0500.dtsi | 90 interrupt-parent = <&eiointc>; 100 interrupt-parent = <&eiointc>; 110 interrupt-parent = <&eiointc>; 120 interrupt-parent = <&eiointc>; 163 eiointc: interrupt-controller@1fe11600 { label 164 compatible = "loongson,ls2k0500-eiointc"; 353 interrupt-parent = <&eiointc>; 361 interrupt-parent = <&eiointc>; 369 interrupt-parent = <&eiointc>; 386 interrupt-parent = <&eiointc>; [all …]
|
/linux/Documentation/devicetree/bindings/interrupt-controller/ |
H A D | loongson,eiointc.yaml | 4 $id: http://devicetree.org/schemas/interrupt-controller/loongson,eiointc.yaml# 23 - loongson,ls2k0500-eiointc 24 - loongson,ls2k2000-eiointc 48 eiointc: interrupt-controller@1fe11600 { 49 compatible = "loongson,ls2k0500-eiointc";
|
/linux/Documentation/translations/zh_CN/arch/loongarch/ |
H A D | irq-chip-model.rst | 14 Legacy I/O Interrupt Controller)、EIOINTC(Extended I/O Interrupt Controller)、 18 CPUINTC是一种CPU内部的每个核本地的中断控制器,LIOINTC/EIOINTC/HTVECINTC是CPU内部的 72 | EIOINTC | | LIOINTC | <-- | UARTs | 103 | V-EIOINTC | 116 V-EIOINTC 是EIOINTC的扩展, 仅工作在虚拟机模式下, 中断经EIOINTC最多可个路由到 159 | EIOINTC | | AVECINTC | | LIOINTC | <-- | UARTs | 192 EIOINTC:: 241 - EIOINTC:即《龙芯3A5000处理器使用手册》第11.2节所描述的“扩展I/O中断”;
|
/linux/Documentation/translations/zh_TW/arch/loongarch/ |
H A D | irq-chip-model.rst | 14 Legacy I/O Interrupt Controller)、EIOINTC(Extended I/O Interrupt Controller)、 18 CPUINTC是一種CPU內部的每個核本地的中斷控制器,LIOINTC/EIOINTC/HTVECINTC是CPU內部的 72 | EIOINTC | | LIOINTC | <-- | UARTs | 105 EIOINTC:: 154 - EIOINTC:即《龍芯3A5000處理器使用手冊》第11.2節所描述的“擴展I/O中斷”;
|
/linux/arch/loongarch/include/asm/ |
H A D | kvm_pch_pic.h | 53 uint8_t route_entry[64]; /* default value 0, route to int0: eiointc */ 54 uint8_t htmsi_vector[64]; /* irq route table for routing to eiointc */
|
/linux/drivers/irqchip/ |
H A D | irq-loongson-eiointc.c | 8 #define pr_fmt(fmt) "eiointc: " fmt 290 .name = "EIOINTC", 471 "irqchip/loongarch/eiointc:starting", in eiointc_init() 551 if (of_device_is_compatible(of_node, "loongson,ls2k0500-eiointc")) in eiointc_of_init() 570 IRQCHIP_DECLARE(loongson_ls2k0500_eiointc, "loongson,ls2k0500-eiointc", eiointc_of_init); 571 IRQCHIP_DECLARE(loongson_ls2k2000_eiointc, "loongson,ls2k2000-eiointc", eiointc_of_init);
|
H A D | Makefile | 123 obj-$(CONFIG_LOONGSON_EIOINTC) += irq-loongson-eiointc.o
|
/linux/arch/loongarch/kvm/ |
H A D | main.c | 404 /* Register LoongArch EIOINTC interrupt controller interface. */ in kvm_loongarch_env_init()
|