Home
last modified time | relevance | path

Searched refs:irqchip (Results 1 – 41 of 41) sorted by relevance

/linux-4.4.14/arch/x86/kvm/
Dirq_comm.c41 return kvm_pic_set_irq(pic, e->irqchip.pin, irq_source_id, level); in kvm_set_pic_irq()
49 return kvm_ioapic_set_irq(ioapic, e->irqchip.pin, irq_source_id, level, in kvm_set_ioapic_irq()
207 void kvm_fire_mask_notifiers(struct kvm *kvm, unsigned irqchip, unsigned pin, in kvm_fire_mask_notifiers() argument
214 gsi = kvm_irq_map_chip_pin(kvm, irqchip, pin); in kvm_fire_mask_notifiers()
232 switch (ue->u.irqchip.irqchip) { in kvm_set_routing_entry()
249 e->irqchip.irqchip = ue->u.irqchip.irqchip; in kvm_set_routing_entry()
250 e->irqchip.pin = ue->u.irqchip.pin + delta; in kvm_set_routing_entry()
251 if (e->irqchip.pin >= max_pin) in kvm_set_routing_entry()
298 .u.irqchip = { .irqchip = KVM_IRQCHIP_IOAPIC, .pin = (irq) } }
303 .u.irqchip = { .irqchip = SELECT_PIC(irq), .pin = (irq) % 8 } }
DMakefile11 $(KVM)/eventfd.o $(KVM)/irqchip.o $(KVM)/vfio.o
/linux-4.4.14/virt/kvm/
Dirqchip.c53 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_map_chip_pin() argument
58 return irq_rt->chip[irqchip][pin]; in kvm_irq_map_chip_pin()
152 ue->u.irqchip.irqchip == ei->irqchip.irqchip) in setup_routing_entry()
161 rt->chip[e->irqchip.irqchip][e->irqchip.pin] = e->gsi; in setup_routing_entry()
Deventfd.c441 bool kvm_irq_has_notifier(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_has_notifier() argument
447 gsi = kvm_irq_map_chip_pin(kvm, irqchip, pin); in kvm_irq_has_notifier()
472 void kvm_notify_acked_irq(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_notify_acked_irq() argument
476 trace_kvm_ack_irq(irqchip, pin); in kvm_notify_acked_irq()
479 gsi = kvm_irq_map_chip_pin(kvm, irqchip, pin); in kvm_notify_acked_irq()
/linux-4.4.14/Documentation/gpio/
Ddriver.txt77 The IRQ portions of the GPIO block are implemented using an irqchip, using
86 on an irqchip. Create the callbacks if needed [2].
93 system interrupt controller. This means the GPIO irqchip is registered
95 gpiochip_set_chained_irqchip() helper function, and the GPIO irqchip
96 handler will be called immediately from the parent irqchip, while
97 holding the IRQs disabled. The GPIO irqchip will then end up calling
111 if required (and if it can't be converted to the nested threaded GPIO irqchip)
129 The GPIO irqchip will then end up calling something like this sequence in
141 other GPIO irqchip residing on the other side of a sleeping bus. Of course
162 * gpiochip_irqchip_add(): adds an irqchip to a gpiochip. It will pass
[all …]
/linux-4.4.14/include/linux/
Dirqchip.h27 #define IRQCHIP_DECLARE(name, compat, fn) OF_DECLARE_2(irqchip, name, compat, fn)
42 ACPI_DECLARE_PROBE_ENTRY(irqchip, name, ACPI_SIG_MADT, \
Dkvm_host.h329 unsigned irqchip; member
331 } irqchip; member
837 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin);
846 bool kvm_irq_has_notifier(struct kvm *kvm, unsigned irqchip, unsigned pin);
848 void kvm_notify_acked_irq(struct kvm *kvm, unsigned irqchip, unsigned pin);
/linux-4.4.14/include/trace/events/
Dkvm.h170 #define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin
173 #define kvm_ack_irq_parm __entry->irqchip, __entry->pin
177 TP_PROTO(unsigned int irqchip, unsigned int pin),
178 TP_ARGS(irqchip, pin),
181 __field( unsigned int, irqchip )
186 __entry->irqchip = irqchip;
/linux-4.4.14/include/linux/gpio/
Ddriver.h135 struct irq_chip *irqchip; member
183 struct irq_chip *irqchip,
188 struct irq_chip *irqchip,
/linux-4.4.14/arch/powerpc/platforms/52xx/
Dmpc52xx_pic.c343 struct irq_chip *uninitialized_var(irqchip); in mpc52xx_irqhost_map()
372 case MPC52xx_IRQ_L1_MAIN: irqchip = &mpc52xx_main_irqchip; break; in mpc52xx_irqhost_map()
373 case MPC52xx_IRQ_L1_PERP: irqchip = &mpc52xx_periph_irqchip; break; in mpc52xx_irqhost_map()
374 case MPC52xx_IRQ_L1_SDMA: irqchip = &mpc52xx_sdma_irqchip; break; in mpc52xx_irqhost_map()
382 irq_set_chip_and_handler(virq, irqchip, handle_level_irq); in mpc52xx_irqhost_map()
/linux-4.4.14/arch/powerpc/platforms/powernv/
Dopal-irqchip.c36 struct irq_chip irqchip; member
115 .irqchip = {
128 irq_set_chip_and_handler(irq, &opal_event_irqchip.irqchip, in opal_event_map()
DMakefile4 obj-y += opal-msglog.o opal-hmi.o opal-power.o opal-irqchip.o
/linux-4.4.14/drivers/gpio/
Dgpiolib.c495 struct irq_chip *irqchip, in gpiochip_set_chained_irqchip() argument
552 irq_set_chip_and_handler(irq, chip->irqchip, chip->irq_handler); in gpiochip_irq_map()
640 if (gpiochip->irqchip) { in gpiochip_irqchip_remove()
641 gpiochip->irqchip->irq_request_resources = NULL; in gpiochip_irqchip_remove()
642 gpiochip->irqchip->irq_release_resources = NULL; in gpiochip_irqchip_remove()
643 gpiochip->irqchip = NULL; in gpiochip_irqchip_remove()
673 struct irq_chip *irqchip, in _gpiochip_irqchip_add() argument
683 if (!gpiochip || !irqchip) in _gpiochip_irqchip_add()
699 gpiochip->irqchip = irqchip; in _gpiochip_irqchip_add()
708 gpiochip->irqchip = NULL; in _gpiochip_irqchip_add()
[all …]
Dgpio-zx.c166 struct irq_chip *irqchip = irq_desc_get_chip(desc); in zx_irq_handler() local
168 chained_irq_enter(irqchip, desc); in zx_irq_handler()
178 chained_irq_exit(irqchip, desc); in zx_irq_handler()
Dgpio-xlp.c215 struct irq_chip *irqchip = irq_desc_get_chip(desc); in xlp_gpio_generic_handler() local
222 chained_irq_enter(irqchip, desc); in xlp_gpio_generic_handler()
233 chained_irq_exit(irqchip, desc); in xlp_gpio_generic_handler()
Dgpio-pl061.c213 struct irq_chip *irqchip = irq_desc_get_chip(desc); in pl061_irq_handler() local
215 chained_irq_enter(irqchip, desc); in pl061_irq_handler()
224 chained_irq_exit(irqchip, desc); in pl061_irq_handler()
Dgpio-zynq.c534 struct irq_chip *irqchip = irq_desc_get_chip(desc); in zynq_gpio_irqhandler() local
536 chained_irq_enter(irqchip, desc); in zynq_gpio_irqhandler()
546 chained_irq_exit(irqchip, desc); in zynq_gpio_irqhandler()
/linux-4.4.14/drivers/pinctrl/nomadik/
Dpinctrl-nomadik.c250 struct irq_chip irqchip; member
1215 struct irq_chip *irqchip; in nmk_gpio_probe() local
1262 irqchip = &nmk_chip->irqchip; in nmk_gpio_probe()
1263 irqchip->irq_ack = nmk_gpio_irq_ack; in nmk_gpio_probe()
1264 irqchip->irq_mask = nmk_gpio_irq_mask; in nmk_gpio_probe()
1265 irqchip->irq_unmask = nmk_gpio_irq_unmask; in nmk_gpio_probe()
1266 irqchip->irq_set_type = nmk_gpio_irq_set_type; in nmk_gpio_probe()
1267 irqchip->irq_set_wake = nmk_gpio_irq_set_wake; in nmk_gpio_probe()
1268 irqchip->irq_startup = nmk_gpio_irq_startup; in nmk_gpio_probe()
1269 irqchip->irq_shutdown = nmk_gpio_irq_shutdown; in nmk_gpio_probe()
[all …]
/linux-4.4.14/drivers/irqchip/
Dirqchip.c30 acpi_probe_device_table(irqchip); in irqchip_init()
DKconfig158 The primary irqchip invokes the crossbar's callback which inturn allocates
160 routed to one of the free irqchip interrupt lines.
DMakefile1 obj-$(CONFIG_IRQCHIP) += irqchip.o
/linux-4.4.14/Documentation/virtual/kvm/devices/
Dmpic.txt43 irqchip id 0.
45 This irqchip 0 has 256 interrupt pins, which expose the interrupts in
/linux-4.4.14/arch/s390/kvm/
DMakefile10 common-objs = $(KVM)/kvm_main.o $(KVM)/eventfd.o $(KVM)/async_pf.o $(KVM)/irqchip.o
/linux-4.4.14/Documentation/DocBook/
Dgenericirq.xml.db38 API-irq-get-irqchip-state
39 API-irq-set-irqchip-state
Dkernel-api.xml.db380 API-irq-get-irqchip-state
381 API-irq-set-irqchip-state
/linux-4.4.14/arch/blackfin/kernel/
DMakefile9 sys_bfin.o traps.o irqchip.o dma-mapping.o flat.o \
/linux-4.4.14/arch/powerpc/kvm/
Dmpic.c1795 u32 irq = e->irqchip.pin; in mpic_set_irq()
1834 e->irqchip.irqchip = ue->u.irqchip.irqchip; in kvm_set_routing_entry()
1835 e->irqchip.pin = ue->u.irqchip.pin; in kvm_set_routing_entry()
1836 if (e->irqchip.pin >= KVM_IRQCHIP_NUM_PINS) in kvm_set_routing_entry()
DMakefile116 kvm-objs-$(CONFIG_HAVE_KVM_IRQ_ROUTING) += $(KVM)/irqchip.o
Dbook3s_xics.c1403 entries->irqchip.irqchip = 0; in kvm_irq_map_gsi()
1404 entries->irqchip.pin = gsi; in kvm_irq_map_gsi()
1408 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_map_chip_pin() argument
/linux-4.4.14/drivers/pinctrl/spear/
Dpinctrl-plgpio.c363 struct irq_chip *irqchip = irq_desc_get_chip(desc); in plgpio_irq_handler() local
370 chained_irq_enter(irqchip, desc); in plgpio_irq_handler()
407 chained_irq_exit(irqchip, desc); in plgpio_irq_handler()
/linux-4.4.14/Documentation/arm/
DInterrupts53 struct irqchip {
83 IRQs that use this 'irqchip'. Generally expected to re-trigger
/linux-4.4.14/drivers/
DMakefile8 obj-y += irqchip/
DKconfig169 source "drivers/irqchip/Kconfig"
/linux-4.4.14/include/asm-generic/
Dvmlinux.lds.h176 #define IRQCHIP_OF_MATCH_TABLE() OF_TABLE(CONFIG_IRQCHIP, irqchip)
527 ACPI_PROBE_TABLE(irqchip) \
/linux-4.4.14/include/uapi/linux/
Dkvm.h838 __u32 irqchip; member
868 struct kvm_irq_routing_irqchip irqchip; member
/linux-4.4.14/Documentation/virtual/kvm/
Dapi.txt662 capability is present (or unless it is not using the in-kernel irqchip,
667 in-kernel irqchip (GIC), and for in-kernel irqchip can tell the GIC to
1063 in-kernel irqchip, the multiprocessing state must be maintained by userspace on
1083 in-kernel irqchip, the multiprocessing state must be maintained by userspace on
1451 struct kvm_irq_routing_irqchip irqchip;
1466 __u32 irqchip;
2152 Directly inject a MSI message. Only valid with in-kernel irqchip that handles
2175 after enabling in-kernel irqchip support via KVM_CREATE_IRQCHIP. The following
2317 kvm_irqfd.gsi specifies the irqchip pin toggled by this event. When
2328 the specified gsi in the irqchip. When the irqchip is resampled, such
[all …]
/linux-4.4.14/Documentation/
DIRQ-domain.txt145 A typical use case for simple domains is where an irqchip provider
Dpinctrl.txt878 and if they also support interrupt capabilities, through the irqchip
/linux-4.4.14/arch/x86/include/asm/
Dkvm_host.h968 void kvm_fire_mask_notifiers(struct kvm *kvm, unsigned irqchip, unsigned pin,
/linux-4.4.14/virt/kvm/arm/
Dvgic.c2449 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_map_chip_pin() argument
/linux-4.4.14/
DMAINTAINERS2377 F: drivers/irqchip/irq-bcm7*
2378 F: drivers/irqchip/irq-brcmstb*
4844 F: drivers/irqchip/irq-renesas-h8*.c
5800 T: git git://git.infradead.org/users/jcooper/linux.git irqchip/core
5802 F: drivers/irqchip/
7011 F: drivers/irqchip/irq-metag.c
7012 F: drivers/irqchip/irq-metag-ext.c
7655 F: drivers/irqchip/irq-omap-intc.c
10590 F: drivers/irqchip/irq-xtensa-*