| /linux/drivers/vfio/platform/ |
| H A D | vfio_platform_irq.c | 49 if (!(vdev->irqs[index].flags & VFIO_IRQ_INFO_MASKABLE)) in vfio_platform_set_irq_mask() 56 return vfio_virqfd_enable((void *) &vdev->irqs[index], in vfio_platform_set_irq_mask() 59 &vdev->irqs[index].mask, fd); in vfio_platform_set_irq_mask() 61 vfio_virqfd_disable(&vdev->irqs[index].mask); in vfio_platform_set_irq_mask() 66 vfio_platform_mask(&vdev->irqs[index]); in vfio_platform_set_irq_mask() 72 vfio_platform_mask(&vdev->irqs[index]); in vfio_platform_set_irq_mask() 109 if (!(vdev->irqs[index].flags & VFIO_IRQ_INFO_MASKABLE)) in vfio_platform_set_irq_unmask() 116 return vfio_virqfd_enable((void *) &vdev->irqs[index], in vfio_platform_set_irq_unmask() 119 &vdev->irqs[index].unmask, in vfio_platform_set_irq_unmask() 122 vfio_virqfd_disable(&vdev->irqs[index].unmask); in vfio_platform_set_irq_unmask() [all …]
|
| /linux/kernel/irq/ |
| H A D | timings.c | |
| /linux/drivers/crypto/intel/qat/qat_common/ |
| H A D | adf_isr.c | 181 struct adf_irq *irqs = pci_dev_info->msix_entries.irqs; in adf_free_irqs() local 188 if (irqs[i].enabled) { in adf_free_irqs() 196 if (irqs[i].enabled) { in adf_free_irqs() 206 struct adf_irq *irqs = pci_dev_info->msix_entries.irqs; in adf_request_irqs() local 218 name = irqs[i].name; in adf_request_irqs() 241 irqs[i].enabled = true; in adf_request_irqs() 246 name = irqs[i].name; in adf_request_irqs() 263 irqs[i].enabled = true; in adf_request_irqs() 274 struct adf_irq *irqs; in adf_isr_alloc_msix_vectors_data() local 280 irqs = kcalloc_node(msix_num_entries, sizeof(*irqs), in adf_isr_alloc_msix_vectors_data() [all …]
|
| /linux/Documentation/devicetree/bindings/arm/omap/ |
| H A D | crossbar.txt | 13 - ti,max-irqs: Total number of irqs available at the parent interrupt controller. 17 - ti,irqs-reserved: List of the reserved irq lines that are not muxed using 23 - ti,irqs-skip: This is similar to "ti,irqs-reserved", but these are for 24 SOC-specific hard-wiring of those irqs which unexpectedly bypasses the 25 crossbar. These irqs have a crossbar register, but still cannot be used. 27 - ti,irqs-safe-map: integer which maps to a safe configuration to use 34 ti,max-irqs = <160>; 37 ti,irqs-reserved = <0 1 2 3 5 6 131 132>; 38 ti,irqs-skip = <10 133 139 140>;
|
| /linux/drivers/bus/fsl-mc/ |
| H A D | fsl-mc-allocator.c | 449 struct fsl_mc_device_irq **irqs = NULL; in fsl_mc_allocate_irqs() local 453 if (mc_dev->irqs) in fsl_mc_allocate_irqs() 475 irqs = devm_kcalloc(&mc_dev->dev, irq_count, sizeof(irqs[0]), in fsl_mc_allocate_irqs() 477 if (!irqs) in fsl_mc_allocate_irqs() 488 irqs[i] = to_fsl_mc_irq(resource); in fsl_mc_allocate_irqs() 491 irqs[i]->mc_dev = mc_dev; in fsl_mc_allocate_irqs() 492 irqs[i]->dev_irq_index = i; in fsl_mc_allocate_irqs() 495 mc_dev->irqs = irqs; in fsl_mc_allocate_irqs() 500 irqs[i]->mc_dev = NULL; in fsl_mc_allocate_irqs() 501 fsl_mc_resource_free(&irqs[i]->resource); in fsl_mc_allocate_irqs() [all …]
|
| /linux/drivers/pci/controller/ |
| H A D | vmd.c | 135 struct vmd_irq_list *irqs; member 153 struct vmd_irq_list *irqs) in index_from_irqs() argument 155 return irqs - vmd->irqs; in index_from_irqs() 238 return &vmd->irqs[vmd->first_vec]; in vmd_next_irq() 248 return &vmd->irqs[vmd->first_vec]; in vmd_next_irq() 254 if (vmd->irqs[i].count < vmd->irqs[best].count) in vmd_next_irq() 256 vmd->irqs[best].count++; in vmd_next_irq() 259 return &vmd->irqs[best]; in vmd_next_irq() 666 struct vmd_irq_list *irqs = data; in vmd_irq() local 670 idx = srcu_read_lock(&irqs->srcu); in vmd_irq() [all …]
|
| /linux/drivers/pcmcia/ |
| H A D | sa1111_generic.c | 141 int i, ret = 0, irqs[NUM_IRQS]; in sa1111_pcmcia_add() local 148 irqs[i] = sa1111_get_irq(dev, i); in sa1111_pcmcia_add() 149 if (irqs[i] <= 0) in sa1111_pcmcia_add() 150 return irqs[i] ? : -ENXIO; in sa1111_pcmcia_add() 166 s->soc.socket.pci_irq = irqs[IDX_IRQ_S1_READY_NINT]; in sa1111_pcmcia_add() 167 s->soc.stat[SOC_STAT_CD].irq = irqs[IDX_IRQ_S1_CD_VALID]; in sa1111_pcmcia_add() 169 s->soc.stat[SOC_STAT_BVD1].irq = irqs[IDX_IRQ_S1_BVD1_STSCHG]; in sa1111_pcmcia_add() 172 s->soc.socket.pci_irq = irqs[IDX_IRQ_S0_READY_NINT]; in sa1111_pcmcia_add() 173 s->soc.stat[SOC_STAT_CD].irq = irqs[IDX_IRQ_S0_CD_VALID]; in sa1111_pcmcia_add() 175 s->soc.stat[SOC_STAT_BVD1].irq = irqs[IDX_IRQ_S0_BVD1_STSCHG]; in sa1111_pcmcia_add()
|
| /linux/drivers/staging/media/atomisp/pci/ |
| H A D | gp_timer_defs.h | 19 …IVE_GP_TIMER_IRQ_TIMER_SELECT_REG_IDX(irq, timers, irqs) (HIVE_GP_TIMER_IRQ_TRIGGER_VALUE_REG_IDX(… argument 20 …GP_TIMER_IRQ_ENABLE_REG_IDX(irq, timers, irqs) (HIVE_GP_TIMER_IRQ_TIMER_SELECT_REG_IDX(irqs,… argument
|
| /linux/drivers/base/ |
| H A D | auxiliary_sysfs.c | 38 xa_init(&auxdev->sysfs.irqs); in auxiliary_irq_dir_prepare() 73 ret = xa_insert(&auxdev->sysfs.irqs, irq, info, GFP_KERNEL); in auxiliary_device_sysfs_irq_add() 83 xa_store(&auxdev->sysfs.irqs, irq, no_free_ptr(info), GFP_KERNEL); in auxiliary_device_sysfs_irq_add() 87 xa_erase(&auxdev->sysfs.irqs, irq); in auxiliary_device_sysfs_irq_add() 102 struct auxiliary_irq_info *info __free(kfree) = xa_load(&auxdev->sysfs.irqs, irq); in auxiliary_device_sysfs_irq_remove() 111 xa_erase(&auxdev->sysfs.irqs, irq); in auxiliary_device_sysfs_irq_remove()
|
| /linux/drivers/irqchip/ |
| H A D | irq-nvic.c | 76 unsigned int irqs, i, numbanks; in nvic_of_init() local 89 irqs = numbanks * 32; in nvic_of_init() 90 if (irqs > NVIC_MAX_IRQ) in nvic_of_init() 91 irqs = NVIC_MAX_IRQ; in nvic_of_init() 94 irq_domain_create_linear(of_fwnode_handle(node), irqs, &nvic_irq_domain_ops, NULL); in nvic_of_init() 131 for (i = 0; i < irqs; i += 4) in nvic_of_init()
|
| H A D | irq-ingenic-tcu.c | 93 int ret, irqs; in ingenic_tcu_irq_init() local 105 irqs = of_property_count_elems_of_size(np, "interrupts", sizeof(u32)); in ingenic_tcu_irq_init() 106 if (irqs < 0 || irqs > ARRAY_SIZE(tcu->parent_irqs)) { in ingenic_tcu_irq_init() 112 tcu->nb_parent_irqs = irqs; in ingenic_tcu_irq_init() 156 for (i = 0; i < irqs; i++) { in ingenic_tcu_irq_init()
|
| /linux/arch/powerpc/platforms/ps3/ |
| H A D | spu.c | 246 0, &spu->irqs[0]); in setup_interrupts() 252 1, &spu->irqs[1]); in setup_interrupts() 258 2, &spu->irqs[2]); in setup_interrupts() 266 ps3_spe_irq_destroy(spu->irqs[1]); in setup_interrupts() 268 ps3_spe_irq_destroy(spu->irqs[0]); in setup_interrupts() 270 spu->irqs[0] = spu->irqs[1] = spu->irqs[2] = 0; in setup_interrupts() 316 ps3_spe_irq_destroy(spu->irqs[2]); in ps3_destroy_spu() 317 ps3_spe_irq_destroy(spu->irqs[1]); in ps3_destroy_spu() 318 ps3_spe_irq_destroy(spu->irqs[0]); in ps3_destroy_spu() 320 spu->irqs[0] = spu->irqs[1] = spu->irqs[2] = 0; in ps3_destroy_spu()
|
| /linux/arch/riscv/kvm/ |
| H A D | aia_aplic.c | 38 struct aplic_irq *irqs; member 49 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_read_sourcecfg() 65 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_write_sourcecfg() 85 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_read_target() 101 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_write_target() 120 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_read_pending() 136 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_write_pending() 174 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_read_enabled() 190 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_write_enabled() 209 irqd = &aplic->irqs[array_index_nospec(irq, aplic->nr_irqs)]; in aplic_read_input() [all …]
|
| /linux/drivers/pci/hotplug/ |
| H A D | cpqphp_ctrl.c | 1524 res_lists.irqs = NULL; in board_added() 2331 struct irq_mapping irqs; in configure_new_function() local 2411 if (!resources->irqs) { in configure_new_function() 2412 irqs.barber_pole = 0; in configure_new_function() 2413 irqs.interrupt[0] = 0; in configure_new_function() 2414 irqs.interrupt[1] = 0; in configure_new_function() 2415 irqs.interrupt[2] = 0; in configure_new_function() 2416 irqs.interrupt[3] = 0; in configure_new_function() 2417 irqs.valid_INT = 0; in configure_new_function() 2419 irqs.barber_pole = resources->irqs->barber_pole; in configure_new_function() [all …]
|
| /linux/samples/pktgen/ |
| H A D | functions.sh | 151 irqs=$(grep "$queues" /proc/interrupts | cut -f1 -d:) 152 [ -z "$irqs" ] && irqs=$(grep $IFACE /proc/interrupts | cut -f1 -d:) 153 [ -z "$irqs" ] && irqs=$(for i in `ls -Ux /sys/class/net/$IFACE/device/msi_irqs` ;\ 156 [ -z "$irqs" ] && err 3 "Could not find interrupts for $IFACE" 158 echo $irqs
|
| /linux/arch/powerpc/platforms/cell/ |
| H A D | spu_base.c | 386 if (spu->irqs[0]) { in spu_request_irqs() 389 ret = request_irq(spu->irqs[0], spu_irq_class_0, in spu_request_irqs() 394 if (spu->irqs[1]) { in spu_request_irqs() 397 ret = request_irq(spu->irqs[1], spu_irq_class_1, in spu_request_irqs() 402 if (spu->irqs[2]) { in spu_request_irqs() 405 ret = request_irq(spu->irqs[2], spu_irq_class_2, in spu_request_irqs() 413 if (spu->irqs[1]) in spu_request_irqs() 414 free_irq(spu->irqs[1], spu); in spu_request_irqs() 416 if (spu->irqs[0]) in spu_request_irqs() 417 free_irq(spu->irqs[0], spu); in spu_request_irqs() [all …]
|
| /linux/drivers/pci/pcie/ |
| H A D | portdrv.c | 113 static int pcie_port_enable_irq_vec(struct pci_dev *dev, int *irqs, int mask) in pcie_port_enable_irq_vec() argument 155 irqs[PCIE_PORT_SERVICE_PME_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec() 156 irqs[PCIE_PORT_SERVICE_HP_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec() 157 irqs[PCIE_PORT_SERVICE_BWCTRL_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec() 161 irqs[PCIE_PORT_SERVICE_AER_SHIFT] = pci_irq_vector(dev, aer); in pcie_port_enable_irq_vec() 164 irqs[PCIE_PORT_SERVICE_DPC_SHIFT] = pci_irq_vector(dev, dpc); in pcie_port_enable_irq_vec() 177 static int pcie_init_service_irqs(struct pci_dev *dev, int *irqs, int mask) in pcie_init_service_irqs() argument 182 irqs[i] = -1; in pcie_init_service_irqs() 193 if (pcie_port_enable_irq_vec(dev, irqs, mask) == 0) in pcie_init_service_irqs() 203 irqs[i] = pci_irq_vector(dev, 0); in pcie_init_service_irqs() [all …]
|
| /linux/drivers/misc/ |
| H A D | hi6421v600-irq.c | 23 unsigned int *irqs; member 119 generic_handle_irq_safe(priv->irqs[POWERKEY_DOWN]); in hi6421v600_irq_handler() 120 generic_handle_irq_safe(priv->irqs[POWERKEY_UP]); in hi6421v600_irq_handler() 128 generic_handle_irq_safe(priv->irqs[offset + i * BITS_PER_BYTE]); in hi6421v600_irq_handler() 252 priv->irqs = devm_kzalloc(dev, PMIC_IRQ_LIST_MAX * sizeof(int), GFP_KERNEL); in hi6421v600_irq_probe() 253 if (!priv->irqs) in hi6421v600_irq_probe() 269 priv->irqs[i] = virq; in hi6421v600_irq_probe()
|
| /linux/drivers/gpio/ |
| H A D | gpio-reg.c | 28 const int *irqs; member 114 int irq = r->irqs[offset]; in gpio_reg_to_irq() 145 const char *const *names, struct irq_domain *irqdom, const int *irqs) in gpio_reg_init() argument 167 if (irqs) in gpio_reg_init() 175 r->irqs = irqs; in gpio_reg_init()
|
| /linux/drivers/ssb/ |
| H A D | driver_gpio.c | 130 unsigned long irqs = (val ^ pol) & mask; in ssb_gpio_irq_chipco_handler() local 133 if (!irqs) in ssb_gpio_irq_chipco_handler() 136 for_each_set_bit(gpio, &irqs, bus->gpio.ngpio) in ssb_gpio_irq_chipco_handler() 139 ssb_chipco_gpio_polarity(chipco, irqs, val & irqs); in ssb_gpio_irq_chipco_handler() 331 unsigned long irqs = (val ^ pol) & mask; in ssb_gpio_irq_extif_handler() local 334 if (!irqs) in ssb_gpio_irq_extif_handler() 337 for_each_set_bit(gpio, &irqs, bus->gpio.ngpio) in ssb_gpio_irq_extif_handler() 340 ssb_extif_gpio_polarity(extif, irqs, val & irqs); in ssb_gpio_irq_extif_handler()
|
| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | intel_gt_irq.c | 264 u32 irqs = GT_RENDER_USER_INTERRUPT; in gen11_gt_irq_postinstall() local 272 irqs |= GT_CS_MASTER_ERROR_INTERRUPT | in gen11_gt_irq_postinstall() 276 dmask = irqs << 16 | irqs; in gen11_gt_irq_postinstall() 277 smask = irqs << 16; in gen11_gt_irq_postinstall() 284 gsc_mask = irqs; in gen11_gt_irq_postinstall() 290 BUILD_BUG_ON(irqs & 0xffff0000); in gen11_gt_irq_postinstall() 464 const u32 irqs = in gen8_gt_irq_postinstall() local 470 irqs << GEN8_RCS_IRQ_SHIFT | irqs << GEN8_BCS_IRQ_SHIFT, in gen8_gt_irq_postinstall() 471 irqs << GEN8_VCS0_IRQ_SHIFT | irqs << GEN8_VCS1_IRQ_SHIFT, in gen8_gt_irq_postinstall() 473 irqs << GEN8_VECS_IRQ_SHIFT, in gen8_gt_irq_postinstall()
|
| /linux/drivers/power/supply/ |
| H A D | axp20x_ac_power.c | 48 unsigned int irqs[] __counted_by(num_irqs); 297 enable_irq_wake(power->irqs[i++]); in axp20x_ac_power_suspend() 299 disable_irq(power->irqs[i++]); in axp20x_ac_power_suspend() 310 disable_irq_wake(power->irqs[i++]); in axp20x_ac_power_resume() 312 enable_irq(power->irqs[i++]); in axp20x_ac_power_resume() 340 struct_size(power, irqs, axp_data->num_irq_names), in axp20x_ac_power_probe() 382 power->irqs[i] = regmap_irq_get_virq(axp20x->regmap_irqc, irq); in axp20x_ac_power_probe() 383 ret = devm_request_any_context_irq(&pdev->dev, power->irqs[i], in axp20x_ac_power_probe()
|
| /linux/tools/testing/selftests/kvm/s390/ |
| H A D | resets.c | 71 int irqs; in assert_noirq() local 75 irqs = __vcpu_ioctl(vcpu, KVM_S390_GET_IRQ_STATE, &irq_state); in assert_noirq() 81 TEST_ASSERT(irqs >= 0, "Could not fetch IRQs: errno %d", errno); in assert_noirq() 82 TEST_ASSERT(!irqs, "IRQ pending"); in assert_noirq() 194 int irqs; in inject_irq() local 201 irqs = __vcpu_ioctl(vcpu, KVM_S390_SET_IRQ_STATE, &irq_state); in inject_irq() 202 TEST_ASSERT(irqs >= 0, "Error injecting EMERGENCY IRQ errno %d", errno); in inject_irq()
|
| /linux/drivers/mfd/ |
| H A D | motorola-cpcap.c | 29 struct regmap_irq *irqs; member 147 struct regmap_irq *rirq = &cpcap->irqs[i]; in cpcap_init_irq_chip() 151 chip->irqs = &cpcap->irqs[irq_start]; in cpcap_init_irq_chip() 173 cpcap->irqs = devm_kzalloc(&cpcap->spi->dev, in cpcap_init_irq() 174 array3_size(sizeof(*cpcap->irqs), in cpcap_init_irq() 178 if (!cpcap->irqs) in cpcap_init_irq()
|
| /linux/drivers/edac/ |
| H A D | dmc520_edac.c | 172 int irqs[NUMBER_OF_IRQS]; member 435 if (pvt->irqs[idx] == irq) { in dmc520_isr() 476 int irqs[NUMBER_OF_IRQS] = { -ENXIO }; in dmc520_edac_probe() local 492 irqs[idx] = irq; in dmc520_edac_probe() 530 memcpy(pvt->irqs, irqs, sizeof(irqs)); in dmc520_edac_probe() 558 irq = irqs[idx]; in dmc520_edac_probe() 595 devm_free_irq(&pdev->dev, pvt->irqs[idx], mci); in dmc520_edac_probe() 619 if (pvt->irqs[idx] >= 0) { in dmc520_edac_remove() 621 devm_free_irq(&pdev->dev, pvt->irqs[idx], mci); in dmc520_edac_remove()
|