| /linux/drivers/misc/ocxl/ |
| H A D | afu_irq.c | 35 struct afu_irq *irq; in ocxl_irq_set_handler() local 39 irq = idr_find(&ctx->irq_idr, irq_id); in ocxl_irq_set_handler() 40 if (!irq) { in ocxl_irq_set_handler() 45 irq->handler = handler; in ocxl_irq_set_handler() 46 irq->private = private; in ocxl_irq_set_handler() 47 irq->free_private = free_private; in ocxl_irq_set_handler() 60 struct afu_irq *irq = data; in afu_irq_handler() local 64 if (irq->handler) in afu_irq_handler() 65 return irq->handler(irq->private); in afu_irq_handler() 70 static int setup_afu_irq(struct ocxl_context *ctx, struct afu_irq *irq) in setup_afu_irq() argument [all …]
|
| /linux/arch/arm/mach-rpc/ |
| H A D | irq.c | 76 int irq; in iomd_get_irq_nr() local 81 irq = irq_prio_h[reg]; in iomd_get_irq_nr() 82 if (irq) in iomd_get_irq_nr() 83 return irq; in iomd_get_irq_nr() 87 irq = irq_prio_d[reg]; in iomd_get_irq_nr() 88 if (irq) in iomd_get_irq_nr() 89 return irq; in iomd_get_irq_nr() 93 irq = irq_prio_l[reg]; in iomd_get_irq_nr() 94 if (irq) in iomd_get_irq_nr() 95 return irq; in iomd_get_irq_nr() [all …]
|
| /linux/arch/arm64/kvm/vgic/ |
| H A D | vgic-v4.c | 84 static irqreturn_t vgic_v4_doorbell_handler(int irq, void *info) in vgic_v4_doorbell_handler() argument 90 !irqd_irq_disabled(&irq_to_desc(irq)->irq_data)) in vgic_v4_doorbell_handler() 91 disable_irq_nosync(irq); in vgic_v4_doorbell_handler() 108 static void vgic_v4_sync_sgi_config(struct its_vpe *vpe, struct vgic_irq *irq) in vgic_v4_sync_sgi_config() argument 110 vpe->sgi_config[irq->intid].enabled = irq->enabled; in vgic_v4_sync_sgi_config() 111 vpe->sgi_config[irq->intid].group = irq->group; in vgic_v4_sync_sgi_config() 112 vpe->sgi_config[irq->intid].priority = irq->priority; in vgic_v4_sync_sgi_config() 126 struct vgic_irq *irq = vgic_get_vcpu_irq(vcpu, i); in vgic_v4_enable_vsgis() local 131 raw_spin_lock_irqsave(&irq->irq_lock, flags); in vgic_v4_enable_vsgis() 133 if (irq->hw) in vgic_v4_enable_vsgis() [all …]
|
| /linux/arch/m68k/include/asm/ |
| H A D | atariints.h | 115 static inline int get_mfp_bit( unsigned irq, int type ) in get_mfp_bit() argument 119 mask = 1 << (irq & 7); in get_mfp_bit() 121 ((irq & 8) >> 2) + (((irq-8) & 16) << 3); in get_mfp_bit() 125 static inline void set_mfp_bit( unsigned irq, int type ) in set_mfp_bit() argument 129 mask = 1 << (irq & 7); in set_mfp_bit() 131 ((irq & 8) >> 2) + (((irq-8) & 16) << 3); in set_mfp_bit() 136 static inline void clear_mfp_bit( unsigned irq, int type ) in clear_mfp_bit() argument 140 mask = ~(1 << (irq & 7)); in clear_mfp_bit() 142 ((irq & 8) >> 2) + (((irq-8) & 16) << 3); in clear_mfp_bit() 157 static inline void atari_enable_irq( unsigned irq ) in atari_enable_irq() argument [all …]
|
| /linux/arch/x86/include/asm/trace/ |
| H A D | irq_vectors.h | 127 TP_PROTO(unsigned int irq, unsigned int vector, 130 TP_ARGS(irq, vector, cpu, apicdest), 133 __field( unsigned int, irq ) 140 __entry->irq = irq; 147 __entry->irq, __entry->vector, __entry->cpu, 153 TP_PROTO(unsigned int irq, unsigned int vector, 157 TP_ARGS(irq, vector, cpu, prev_vector, prev_cpu), 160 __field( unsigned int, irq ) 168 __entry->irq = irq; 177 __entry->irq, __entry->vector, __entry->cpu, [all …]
|
| /linux/drivers/parisc/ |
| H A D | gsc.c | 35 int irq = txn_alloc_irq(GSC_EIM_WIDTH); in gsc_alloc_irq() local 36 if (irq < 0) { in gsc_alloc_irq() 38 return irq; in gsc_alloc_irq() 41 i->txn_addr = txn_alloc_addr(irq); in gsc_alloc_irq() 42 i->txn_data = txn_alloc_data(irq); in gsc_alloc_irq() 43 i->irq = irq; in gsc_alloc_irq() 45 return irq; in gsc_alloc_irq() 48 int gsc_claim_irq(struct gsc_irq *i, int irq) in gsc_claim_irq() argument 50 int c = irq; in gsc_claim_irq() 52 irq += CPU_IRQ_BASE; /* virtualize the IRQ first */ in gsc_claim_irq() [all …]
|
| H A D | asp.c | 32 int irq; in asp_choose_irq() local 35 case 0x71: irq = 9; break; /* SCSI */ in asp_choose_irq() 36 case 0x72: irq = 8; break; /* LAN */ in asp_choose_irq() 37 case 0x73: irq = 1; break; /* HIL */ in asp_choose_irq() 38 case 0x74: irq = 7; break; /* Centronics */ in asp_choose_irq() 39 case 0x75: irq = (dev->hw_path == 4) ? 5 : 6; break; /* RS232 */ in asp_choose_irq() 40 case 0x76: irq = 10; break; /* EISA BA */ in asp_choose_irq() 41 case 0x77: irq = 11; break; /* Graphics1 */ in asp_choose_irq() 42 case 0x7a: irq = 13; break; /* Audio (Bushmaster) */ in asp_choose_irq() 43 case 0x7b: irq = 13; break; /* Audio (Scorpio) */ in asp_choose_irq() [all …]
|
| /linux/arch/m68k/q40/ |
| H A D | q40ints.c | 48 unsigned int irq = data->irq; in q40_irq_startup() local 51 switch (irq) { in q40_irq_startup() 55 irq); in q40_irq_startup() 133 static irqreturn_t q40_timer_int(int irq, void *dev_id) in q40_timer_int() argument 174 struct IRQ_TABLE{ unsigned mask; int irq ;}; member 182 { .mask = Q40_IRQ3_MASK, .irq = 3 }, /* ser 1 */ 183 { .mask = Q40_IRQ4_MASK, .irq = 4 }, /* ser 2 */ 184 { .mask = Q40_IRQ14_MASK, .irq = 14 }, /* IDE 1 */ 185 { .mask = Q40_IRQ15_MASK, .irq = 15 }, /* IDE 2 */ 186 { .mask = Q40_IRQ6_MASK, .irq = 6 }, /* floppy, handled elsewhere */ [all …]
|
| /linux/arch/m68k/mac/ |
| H A D | macints.c | 142 static irqreturn_t mac_nmi_handler(int irq, void *dev_id) in mac_nmi_handler() argument 190 int irq = data->irq; in mac_irq_enable() local 191 int irq_src = IRQ_SRC(irq); in mac_irq_enable() 198 oss_irq_enable(irq); in mac_irq_enable() 200 via_irq_enable(irq); in mac_irq_enable() 207 psc_irq_enable(irq); in mac_irq_enable() 209 oss_irq_enable(irq); in mac_irq_enable() 213 baboon_irq_enable(irq); in mac_irq_enable() 220 int irq = data->irq; in mac_irq_disable() local 221 int irq_src = IRQ_SRC(irq); in mac_irq_disable() [all …]
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_irq.c | 165 spin_lock_irqsave(&adev->irq.lock, irqflags); in amdgpu_irq_disable_all() 167 if (!adev->irq.client[i].sources) in amdgpu_irq_disable_all() 171 struct amdgpu_irq_src *src = adev->irq.client[i].sources[j]; in amdgpu_irq_disable_all() 186 spin_unlock_irqrestore(&adev->irq.lock, irqflags); in amdgpu_irq_disable_all() 200 static irqreturn_t amdgpu_irq_handler(int irq, void *arg) in amdgpu_irq_handler() argument 206 ret = amdgpu_ih_process(adev, &adev->irq.ih); in amdgpu_irq_handler() 225 irq.ih1_work); in amdgpu_irq_handle_ih1() 227 amdgpu_ih_process(adev, &adev->irq.ih1); in amdgpu_irq_handle_ih1() 240 irq.ih2_work); in amdgpu_irq_handle_ih2() 242 amdgpu_ih_process(adev, &adev->irq.ih2); in amdgpu_irq_handle_ih2() [all …]
|
| /linux/drivers/mfd/ |
| H A D | da9052-irq.c | 176 static int da9052_map_irq(struct da9052 *da9052, int irq) in da9052_map_irq() argument 178 return regmap_irq_get_virq(da9052->irq_data, irq); in da9052_map_irq() 181 int da9052_enable_irq(struct da9052 *da9052, int irq) in da9052_enable_irq() argument 183 irq = da9052_map_irq(da9052, irq); in da9052_enable_irq() 184 if (irq < 0) in da9052_enable_irq() 185 return irq; in da9052_enable_irq() 187 enable_irq(irq); in da9052_enable_irq() 193 int da9052_disable_irq(struct da9052 *da9052, int irq) in da9052_disable_irq() argument 195 irq = da9052_map_irq(da9052, irq); in da9052_disable_irq() 196 if (irq < 0) in da9052_disable_irq() [all …]
|
| /linux/arch/powerpc/platforms/44x/ |
| H A D | hsta_msi.c | 42 int irq, hwirq; in hsta_setup_msi_irqs() local 52 irq = msi_bitmap_alloc_hwirqs(&ppc4xx_hsta_msi.bmp, 1); in hsta_setup_msi_irqs() 53 if (irq < 0) { in hsta_setup_msi_irqs() 56 return irq; in hsta_setup_msi_irqs() 59 hwirq = ppc4xx_hsta_msi.irq_map[irq]; in hsta_setup_msi_irqs() 61 pr_err("%s: Failed mapping irq %d\n", __func__, irq); in hsta_setup_msi_irqs() 69 addr = ppc4xx_hsta_msi.address + irq*0x10; in hsta_setup_msi_irqs() 83 msi_bitmap_free_hwirqs(&ppc4xx_hsta_msi.bmp, irq, 1); in hsta_setup_msi_irqs() 94 int irq; in hsta_find_hwirq_offset() local 97 for (irq = 0; irq < ppc4xx_hsta_msi.irq_count; irq++) in hsta_find_hwirq_offset() [all …]
|
| /linux/arch/mips/bcm63xx/ |
| H A D | irq.c | 37 static inline u32 get_ext_irq_perf_reg(int irq) in get_ext_irq_perf_reg() argument 39 if (irq < 4) in get_ext_irq_perf_reg() 115 unsigned irq = d->irq - IRQ_INTERNAL_BASE; \ 116 unsigned reg = (irq / 32) ^ (width/32 - 1); \ 117 unsigned bit = irq & 0x1f; \ 137 unsigned irq = d->irq - IRQ_INTERNAL_BASE; \ 138 unsigned reg = (irq / 32) ^ (width/32 - 1); \ 139 unsigned bit = irq & 0x1f; \ 215 unsigned int irq = d->irq - IRQ_EXTERNAL_BASE; in bcm63xx_external_irq_mask() local 219 regaddr = get_ext_irq_perf_reg(irq); in bcm63xx_external_irq_mask() [all …]
|
| /linux/drivers/acpi/acpica/ |
| H A D | rsirq.c | 27 {ACPI_RSC_BITMASK16, ACPI_RS_OFFSET(data.irq.interrupts[0]), 28 AML_OFFSET(irq.irq_mask), 29 ACPI_RS_OFFSET(data.irq.interrupt_count)}, 33 {ACPI_RSC_SET8, ACPI_RS_OFFSET(data.irq.triggering), 39 {ACPI_RSC_2BITFLAG, ACPI_RS_OFFSET(data.irq.descriptor_length), 40 AML_OFFSET(irq.descriptor_type), 49 {ACPI_RSC_1BITFLAG, ACPI_RS_OFFSET(data.irq.triggering), 50 AML_OFFSET(irq.flags), 53 {ACPI_RSC_1BITFLAG, ACPI_RS_OFFSET(data.irq.polarity), 54 AML_OFFSET(irq.flags), [all …]
|
| /linux/arch/mips/pci/ |
| H A D | fixup-rbtx4927.c | 41 unsigned char irq = pin; in rbtx4927_pci_map_irq() local 44 irq--; /* 0-3 */ in rbtx4927_pci_map_irq() 48 irq = (irq + 0 + slot) % 4; in rbtx4927_pci_map_irq() 52 irq = (irq + 33 - slot) % 4; in rbtx4927_pci_map_irq() 54 irq = (irq + 3 + slot) % 4; in rbtx4927_pci_map_irq() 56 irq++; /* 1-4 */ in rbtx4927_pci_map_irq() 58 switch (irq) { in rbtx4927_pci_map_irq() 60 irq = RBTX4927_IRQ_IOC_PCIA; in rbtx4927_pci_map_irq() 63 irq = RBTX4927_IRQ_IOC_PCIB; in rbtx4927_pci_map_irq() 66 irq = RBTX4927_IRQ_IOC_PCIC; in rbtx4927_pci_map_irq() [all …]
|
| H A D | msi-octeon.c | 67 int irq = 0; in arch_setup_msi_irq() local 125 for (irq = 0; irq < 64; irq += irq_step) { in arch_setup_msi_irq() 126 if ((msi_free_irq_bitmask[index] & (search_mask << irq)) == 0) { in arch_setup_msi_irq() 127 msi_free_irq_bitmask[index] |= search_mask << irq; in arch_setup_msi_irq() 128 msi_multiple_irq_bitmask[index] |= (search_mask >> 1) << irq; in arch_setup_msi_irq() 137 if (irq >= 64) { in arch_setup_msi_irq() 148 irq += index*64; in arch_setup_msi_irq() 149 irq += OCTEON_IRQ_MSI_BIT0; in arch_setup_msi_irq() 177 msg.data = irq - OCTEON_IRQ_MSI_BIT0; in arch_setup_msi_irq() 184 irq_set_msi_desc(irq, desc); in arch_setup_msi_irq() [all …]
|
| /linux/arch/mips/sni/ |
| H A D | rm200.c | 30 .irq = _irq, \ 160 unsigned int mask, irq = d->irq - RM200_I8259A_IRQ_BASE; in sni_rm200_disable_8259A_irq() local 163 mask = 1 << irq; in sni_rm200_disable_8259A_irq() 166 if (irq & 8) in sni_rm200_disable_8259A_irq() 175 unsigned int mask, irq = d->irq - RM200_I8259A_IRQ_BASE; in sni_rm200_enable_8259A_irq() local 178 mask = ~(1 << irq); in sni_rm200_enable_8259A_irq() 181 if (irq & 8) in sni_rm200_enable_8259A_irq() 188 static inline int sni_rm200_i8259A_irq_real(unsigned int irq) in sni_rm200_i8259A_irq_real() argument 191 int irqmask = 1 << irq; in sni_rm200_i8259A_irq_real() 193 if (irq < 8) { in sni_rm200_i8259A_irq_real() [all …]
|
| /linux/kernel/irq/ |
| H A D | manage.c | 105 bool synchronize_hardirq(unsigned int irq) in synchronize_hardirq() argument 107 struct irq_desc *desc = irq_to_desc(irq); in synchronize_hardirq() 145 void synchronize_irq(unsigned int irq) in synchronize_irq() argument 147 struct irq_desc *desc = irq_to_desc(irq); in synchronize_irq() 170 int irq_can_set_affinity(unsigned int irq) in irq_can_set_affinity() argument 172 return __irq_can_set_affinity(irq_to_desc(irq)); in irq_can_set_affinity() 183 bool irq_can_set_affinity_usr(unsigned int irq) in irq_can_set_affinity_usr() argument 185 struct irq_desc *desc = irq_to_desc(irq); in irq_can_set_affinity_usr() 225 chip->name, data->irq); in irq_validate_effective_affinity() 420 int irq_update_affinity_desc(unsigned int irq, struct irq_affinity_desc *affinity) in irq_update_affinity_desc() argument [all …]
|
| /linux/drivers/sh/intc/ |
| H A D | chip.c | 18 unsigned int irq = data->irq; in _intc_enable() local 19 struct intc_desc_int *d = get_intc_desc(irq); in _intc_enable() 30 [_INTC_FN(handle)], irq); in _intc_enable() 33 intc_balancing_enable(irq); in _intc_enable() 43 unsigned int irq = data->irq; in intc_disable() local 44 struct intc_desc_int *d = get_intc_desc(irq); in intc_disable() 49 intc_balancing_disable(irq); in intc_disable() 58 [_INTC_FN(handle)], irq); in intc_disable() 83 unsigned int irq = data->irq; in intc_mask_ack() local 84 struct intc_desc_int *d = get_intc_desc(irq); in intc_mask_ack() [all …]
|
| /linux/drivers/ssb/ |
| H A D | driver_mipscore.c | 108 unsigned int irq; in ssb_mips_irq() local 114 for (irq = 1; irq <= 4; irq++) { in ssb_mips_irq() 115 tmp = ((ipsflag & ipsflag_irq_mask[irq]) >> ipsflag_irq_shift[irq]); in ssb_mips_irq() 119 if (irq == 5) { in ssb_mips_irq() 121 irq = 0; in ssb_mips_irq() 124 return irq; in ssb_mips_irq() 127 static void clear_irq(struct ssb_bus *bus, unsigned int irq) in clear_irq() argument 132 if (irq == 0) { in clear_irq() 137 ipsflag_irq_mask[irq]); in clear_irq() 141 static void set_irq(struct ssb_device *dev, unsigned int irq) in set_irq() argument [all …]
|
| /linux/arch/sh/boards/mach-dreamcast/ |
| H A D | irq.c | 65 unsigned int irq = data->irq; in disable_systemasic_irq() local 66 __u32 emr = EMR_BASE + (LEVEL(irq) << 4) + (LEVEL(irq) << 2); in disable_systemasic_irq() 70 mask &= ~(1 << EVENT_BIT(irq)); in disable_systemasic_irq() 77 unsigned int irq = data->irq; in enable_systemasic_irq() local 78 __u32 emr = EMR_BASE + (LEVEL(irq) << 4) + (LEVEL(irq) << 2); in enable_systemasic_irq() 82 mask |= (1 << EVENT_BIT(irq)); in enable_systemasic_irq() 89 unsigned int irq = data->irq; in mask_ack_systemasic_irq() local 90 __u32 esr = ESR_BASE + (LEVEL(irq) << 2); in mask_ack_systemasic_irq() 92 outl((1 << EVENT_BIT(irq)), esr); in mask_ack_systemasic_irq() 105 int systemasic_irq_demux(int irq) in systemasic_irq_demux() argument [all …]
|
| /linux/include/linux/irqchip/ |
| H A D | irq-madera.h | 94 static inline int madera_get_irq_mapping(struct madera *madera, int irq) in madera_get_irq_mapping() argument 99 return regmap_irq_get_virq(madera->irq_data, irq); in madera_get_irq_mapping() 102 static inline int madera_request_irq(struct madera *madera, int irq, in madera_request_irq() argument 106 irq = madera_get_irq_mapping(madera, irq); in madera_request_irq() 107 if (irq < 0) in madera_request_irq() 108 return irq; in madera_request_irq() 110 return request_threaded_irq(irq, NULL, handler, IRQF_ONESHOT, name, in madera_request_irq() 114 static inline void madera_free_irq(struct madera *madera, int irq, void *data) in madera_free_irq() argument 116 irq = madera_get_irq_mapping(madera, irq); in madera_free_irq() 117 if (irq < 0) in madera_free_irq() [all …]
|
| /linux/arch/x86/pci/ |
| H A D | irq.c | 57 int irq); 224 DBG(" %d:%02x/%04x", j, e->irq[j].link, e->irq[j].bitmap); in pirq_peer_trick() 243 void elcr_set_level_irq(unsigned int irq) in elcr_set_level_irq() argument 245 unsigned char mask = 1 << (irq & 7); in elcr_set_level_irq() 246 unsigned int port = PIC_ELCR1 + (irq >> 3); in elcr_set_level_irq() 250 if (irq >= 16 || (1 << irq) & elcr_irq_mask) in elcr_set_level_irq() 253 elcr_irq_mask |= (1 << irq); in elcr_set_level_irq() 254 printk(KERN_DEBUG "PCI: setting IRQ %u as level-triggered\n", irq); in elcr_set_level_irq() 369 int pirq, int irq) in pirq_finali_set() argument 374 u8 val = irqmap[irq]; in pirq_finali_set() [all …]
|
| /linux/arch/mips/kernel/ |
| H A D | irq-msc01.c | 29 unsigned int irq = d->irq; in mask_msc_irq() local 31 if (irq < (irq_base + 32)) in mask_msc_irq() 32 MSCIC_WRITE(MSC01_IC_DISL, 1<<(irq - irq_base)); in mask_msc_irq() 34 MSCIC_WRITE(MSC01_IC_DISH, 1<<(irq - irq_base - 32)); in mask_msc_irq() 40 unsigned int irq = d->irq; in unmask_msc_irq() local 42 if (irq < (irq_base + 32)) in unmask_msc_irq() 43 MSCIC_WRITE(MSC01_IC_ENAL, 1<<(irq - irq_base)); in unmask_msc_irq() 45 MSCIC_WRITE(MSC01_IC_ENAH, 1<<(irq - irq_base - 32)); in unmask_msc_irq() 63 unsigned int irq = d->irq; in edge_mask_and_ack_msc_irq() local 70 MSCIC_READ(MSC01_IC_SUP+irq*8, r); in edge_mask_and_ack_msc_irq() [all …]
|
| /linux/arch/x86/kvm/ |
| H A D | i8259.c | 74 static void pic_clear_isr(struct kvm_kpic_state *s, int irq) in pic_clear_isr() argument 76 s->isr &= ~(1 << irq); in pic_clear_isr() 78 irq += 8; in pic_clear_isr() 86 kvm_notify_acked_irq(s->pics_state->kvm, SELECT_PIC(irq), irq); in pic_clear_isr() 93 static inline int pic_set_irq1(struct kvm_kpic_state *s, int irq, int level) in pic_set_irq1() argument 96 mask = 1 << irq; in pic_set_irq1() 169 int irq2, irq; in pic_update_irq() local 179 irq = pic_get_irq(&s->pics[0]); in pic_update_irq() 180 pic_irq_request(s->kvm, irq >= 0); in pic_update_irq() 194 int irq = e->irqchip.pin; in kvm_pic_set_irq() local [all …]
|