/Linux-v5.4/virt/kvm/arm/vgic/ |
D | vgic-irqfd.c | 22 unsigned int spi_id = e->irqchip.pin + VGIC_NR_PRIVATE_IRQS; in vgic_irqfd_set_irq() 47 e->irqchip.irqchip = ue->u.irqchip.irqchip; in kvm_set_routing_entry() 48 e->irqchip.pin = ue->u.irqchip.pin; in kvm_set_routing_entry() 49 if ((e->irqchip.pin >= KVM_IRQCHIP_NUM_PINS) || in kvm_set_routing_entry() 50 (e->irqchip.irqchip >= KVM_NR_IRQCHIPS)) in kvm_set_routing_entry() 135 entries[i].u.irqchip.irqchip = 0; in kvm_vgic_setup_default_irq_routing() 136 entries[i].u.irqchip.pin = i; in kvm_vgic_setup_default_irq_routing()
|
/Linux-v5.4/arch/x86/kvm/ |
D | irq_comm.c | 35 return kvm_pic_set_irq(pic, e->irqchip.pin, irq_source_id, level); in kvm_set_pic_irq() 43 return kvm_ioapic_set_irq(ioapic, e->irqchip.pin, irq_source_id, level, in kvm_set_ioapic_irq() 251 void kvm_fire_mask_notifiers(struct kvm *kvm, unsigned irqchip, unsigned pin, in kvm_fire_mask_notifiers() argument 258 gsi = kvm_irq_map_chip_pin(kvm, irqchip, pin); in kvm_fire_mask_notifiers() 283 e->irqchip.pin = ue->u.irqchip.pin; in kvm_set_routing_entry() 284 switch (ue->u.irqchip.irqchip) { in kvm_set_routing_entry() 286 e->irqchip.pin += PIC_NUM_PINS / 2; in kvm_set_routing_entry() 289 if (ue->u.irqchip.pin >= PIC_NUM_PINS / 2) in kvm_set_routing_entry() 294 if (ue->u.irqchip.pin >= KVM_IOAPIC_NUM_PINS) in kvm_set_routing_entry() 301 e->irqchip.irqchip = ue->u.irqchip.irqchip; in kvm_set_routing_entry() [all …]
|
/Linux-v5.4/virt/kvm/ |
D | irqchip.c | 41 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_map_chip_pin() argument 46 return irq_rt->chip[irqchip][pin]; in kvm_irq_map_chip_pin() 144 ue->u.irqchip.irqchip == ei->irqchip.irqchip) in setup_routing_entry() 153 rt->chip[e->irqchip.irqchip][e->irqchip.pin] = e->gsi; in setup_routing_entry()
|
/Linux-v5.4/drivers/gpio/ |
D | gpio-pcf857x.c | 74 struct irq_chip irqchip; member 343 gpio->irqchip.name = "pcf857x", in pcf857x_probe() 344 gpio->irqchip.irq_enable = pcf857x_irq_enable, in pcf857x_probe() 345 gpio->irqchip.irq_disable = pcf857x_irq_disable, in pcf857x_probe() 346 gpio->irqchip.irq_ack = noop, in pcf857x_probe() 347 gpio->irqchip.irq_mask = noop, in pcf857x_probe() 348 gpio->irqchip.irq_unmask = noop, in pcf857x_probe() 349 gpio->irqchip.irq_set_wake = pcf857x_irq_set_wake, in pcf857x_probe() 350 gpio->irqchip.irq_bus_lock = pcf857x_irq_bus_lock, in pcf857x_probe() 351 gpio->irqchip.irq_bus_sync_unlock = pcf857x_irq_bus_sync_unlock, in pcf857x_probe() [all …]
|
D | TODO | 88 GPIOLIB irqchip 90 The GPIOLIB irqchip is a helper irqchip for "simple cases" that should 91 try to cover any generic kind of irqchip cascaded from a GPIO. 93 - Convert all the GPIOLIB_IRQCHIP users to pass an irqchip template, 95 Currently we set up the irqchip after setting up the gpiochip 98 the irqchip before registering the gpio_chip, typical example: 100 /* Typical state container with dynamic irqchip */ 110 /* Set up the irqchip dynamically */ 134 dry-code conversions to gpiolib irqchip for maintainers to test
|
D | gpio-ep93xx.c | 111 struct irq_chip *irqchip = irq_desc_get_chip(desc); in ep93xx_gpio_ab_irq_handler() local 115 chained_irq_enter(irqchip, desc); in ep93xx_gpio_ab_irq_handler() 133 chained_irq_exit(irqchip, desc); in ep93xx_gpio_ab_irq_handler() 143 struct irq_chip *irqchip = irq_desc_get_chip(desc); in ep93xx_gpio_f_irq_handler() local 148 chained_irq_enter(irqchip, desc); in ep93xx_gpio_f_irq_handler() 150 chained_irq_exit(irqchip, desc); in ep93xx_gpio_f_irq_handler()
|
D | gpio-cadence.c | 126 struct irq_chip *irqchip = irq_desc_get_chip(desc); in cdns_gpio_irq_handler() local 130 chained_irq_enter(irqchip, desc); in cdns_gpio_irq_handler() 138 chained_irq_exit(irqchip, desc); in cdns_gpio_irq_handler()
|
D | gpiolib.c | 1730 struct irq_chip *irqchip, in gpiochip_set_chained_irqchip() argument 1751 struct irq_chip *irqchip, in gpiochip_set_nested_irqchip() argument 1768 struct irq_chip *irqchip) in gpiochip_set_hierarchical_irqchip() argument 2196 struct irq_chip *irqchip = gpiochip->irq.chip; in gpiochip_set_irq_hooks() local 2198 if (!irqchip->irq_request_resources && in gpiochip_set_irq_hooks() 2199 !irqchip->irq_release_resources) { in gpiochip_set_irq_hooks() 2200 irqchip->irq_request_resources = gpiochip_irq_reqres; in gpiochip_set_irq_hooks() 2201 irqchip->irq_release_resources = gpiochip_irq_relres; in gpiochip_set_irq_hooks() 2206 if (irqchip->irq_enable == gpiochip_irq_enable) { in gpiochip_set_irq_hooks() 2215 gpiochip->irq.irq_enable = irqchip->irq_enable; in gpiochip_set_irq_hooks() [all …]
|
D | gpio-ath79.c | 183 struct irq_chip *irqchip = irq_desc_get_chip(desc); in ath79_gpio_irq_handler() local 190 chained_irq_enter(irqchip, desc); in ath79_gpio_irq_handler() 212 chained_irq_exit(irqchip, desc); in ath79_gpio_irq_handler()
|
D | gpio-zx.c | 162 struct irq_chip *irqchip = irq_desc_get_chip(desc); in zx_irq_handler() local 164 chained_irq_enter(irqchip, desc); in zx_irq_handler() 174 chained_irq_exit(irqchip, desc); in zx_irq_handler()
|
D | gpio-ftgpio010.c | 143 struct irq_chip *irqchip = irq_desc_get_chip(desc); in ftgpio_gpio_irq_handler() local 147 chained_irq_enter(irqchip, desc); in ftgpio_gpio_irq_handler() 155 chained_irq_exit(irqchip, desc); in ftgpio_gpio_irq_handler()
|
/Linux-v5.4/include/linux/gpio/ |
D | driver.h | 581 struct irq_chip *irqchip, 586 struct irq_chip *irqchip, 590 struct irq_chip *irqchip, 610 struct irq_chip *irqchip, in gpiochip_irqchip_add() argument 618 return gpiochip_irqchip_add_key(gpiochip, irqchip, first_irq, in gpiochip_irqchip_add() 624 struct irq_chip *irqchip, in gpiochip_irqchip_add_nested() argument 633 return gpiochip_irqchip_add_key(gpiochip, irqchip, first_irq, in gpiochip_irqchip_add_nested() 639 struct irq_chip *irqchip, in gpiochip_irqchip_add() argument 644 return gpiochip_irqchip_add_key(gpiochip, irqchip, first_irq, in gpiochip_irqchip_add() 649 struct irq_chip *irqchip, in gpiochip_irqchip_add_nested() argument [all …]
|
/Linux-v5.4/drivers/irqchip/ |
D | irq-ixp4xx.c | 54 struct irq_chip irqchip; member 178 &ixi->irqchip, in ixp4xx_irq_domain_alloc() 283 ixi->irqchip.name = "IXP4xx"; in ixp4xx_irq_setup() 284 ixi->irqchip.irq_mask = ixp4xx_irq_mask; in ixp4xx_irq_setup() 285 ixi->irqchip.irq_unmask = ixp4xx_irq_unmask; in ixp4xx_irq_setup() 286 ixi->irqchip.irq_set_type = ixp4xx_set_irq_type; in ixp4xx_irq_setup()
|
D | irq-al-fic.c | 111 struct irq_chip *irqchip = irq_desc_get_chip(desc); in al_fic_irq_handler() local 117 chained_irq_enter(irqchip, desc); in al_fic_irq_handler() 127 chained_irq_exit(irqchip, desc); in al_fic_irq_handler()
|
D | irqchip.c | 30 acpi_probe_device_table(irqchip); in irqchip_init()
|
/Linux-v5.4/include/linux/ |
D | irqchip.h | 27 #define IRQCHIP_DECLARE(name, compat, fn) OF_DECLARE_2(irqchip, name, compat, fn) 42 ACPI_DECLARE_PROBE_ENTRY(irqchip, name, ACPI_SIG_MADT, \
|
/Linux-v5.4/include/trace/events/ |
D | kvm.h | 177 #define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin 180 #define kvm_ack_irq_parm __entry->irqchip, __entry->pin 184 TP_PROTO(unsigned int irqchip, unsigned int pin), 185 TP_ARGS(irqchip, pin), 188 __field( unsigned int, irqchip ) 193 __entry->irqchip = irqchip;
|
/Linux-v5.4/arch/powerpc/platforms/52xx/ |
D | mpc52xx_pic.c | 343 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-v5.4/Documentation/driver-api/gpio/ |
D | driver.rst | 265 It is legal for any IRQ consumer to request an IRQ from any irqchip even if it 284 interrupt controller. This is modeled by an irqchip that will inspect bits 285 inside the GPIO controller to figure out which line fired it. The irqchip 300 spinlock_t or any sleepable APIs (like PM runtime) as part of its irqchip 306 on an irqchip. Create the callbacks if needed.[2] 317 system interrupt controller. This means that the GPIO irqchip handler will 318 be called immediately from the parent irqchip, while holding the IRQs 319 disabled. The GPIO irqchip will then end up calling something like this 335 If required (and if it can't be converted to the nested threaded GPIO irqchip, 355 The GPIO irqchip will then end up calling something like this sequence in [all …]
|
/Linux-v5.4/arch/powerpc/platforms/powernv/ |
D | opal-irqchip.c | 32 struct irq_chip irqchip; member 106 .irqchip = { 119 irq_set_chip_and_handler(irq, &opal_event_irqchip.irqchip, in opal_event_map()
|
/Linux-v5.4/drivers/pinctrl/nomadik/ |
D | pinctrl-nomadik.c | 247 struct irq_chip irqchip; member 1106 struct irq_chip *irqchip; in nmk_gpio_probe() local 1152 irqchip = &nmk_chip->irqchip; in nmk_gpio_probe() 1153 irqchip->irq_ack = nmk_gpio_irq_ack; in nmk_gpio_probe() 1154 irqchip->irq_mask = nmk_gpio_irq_mask; in nmk_gpio_probe() 1155 irqchip->irq_unmask = nmk_gpio_irq_unmask; in nmk_gpio_probe() 1156 irqchip->irq_set_type = nmk_gpio_irq_set_type; in nmk_gpio_probe() 1157 irqchip->irq_set_wake = nmk_gpio_irq_set_wake; in nmk_gpio_probe() 1158 irqchip->irq_startup = nmk_gpio_irq_startup; in nmk_gpio_probe() 1159 irqchip->irq_shutdown = nmk_gpio_irq_shutdown; in nmk_gpio_probe() [all …]
|
/Linux-v5.4/Documentation/virt/kvm/devices/ |
D | vcpu.txt | 21 irqchip. 31 -ENXIO: PMUv3 not properly configured or in-kernel irqchip not 37 irqchip.
|
D | mpic.txt | 43 irqchip id 0. 45 This irqchip 0 has 256 interrupt pins, which expose the interrupts in
|
/Linux-v5.4/drivers/pinctrl/mvebu/ |
D | pinctrl-armada-37xx.c | 724 struct irq_chip *irqchip = &info->irq_chip; in armada_37xx_irqchip_register() local 755 irqchip->irq_ack = armada_37xx_irq_ack; in armada_37xx_irqchip_register() 756 irqchip->irq_mask = armada_37xx_irq_mask; in armada_37xx_irqchip_register() 757 irqchip->irq_unmask = armada_37xx_irq_unmask; in armada_37xx_irqchip_register() 758 irqchip->irq_set_wake = armada_37xx_irq_set_wake; in armada_37xx_irqchip_register() 759 irqchip->irq_set_type = armada_37xx_irq_set_type; in armada_37xx_irqchip_register() 760 irqchip->irq_startup = armada_37xx_irq_startup; in armada_37xx_irqchip_register() 761 irqchip->name = info->data->name; in armada_37xx_irqchip_register() 762 ret = gpiochip_irqchip_add(gc, irqchip, 0, in armada_37xx_irqchip_register() 780 gpiochip_set_chained_irqchip(gc, irqchip, irq, in armada_37xx_irqchip_register()
|
/Linux-v5.4/drivers/i2c/busses/ |
D | i2c-cht-wc.c | 42 struct irq_chip irqchip; member 329 adap->irqchip = cht_wc_i2c_irq_chip; in cht_wc_i2c_adap_i2c_probe() 367 irq_set_chip_and_handler(adap->client_irq, &adap->irqchip, in cht_wc_i2c_adap_i2c_probe()
|