Home
last modified time | relevance | path

Searched refs:irq (Results 1 – 25 of 5296) sorted by relevance

12345678910>>...212

/openbmc/linux/drivers/irqchip/
H A DMakefile4 obj-$(CONFIG_AL_FIC) += irq-al-fic.o
5 obj-$(CONFIG_ALPINE_MSI) += irq-alpine-msi.o
6 obj-$(CONFIG_ATH79) += irq-ath79-cpu.o
7 obj-$(CONFIG_ATH79) += irq-ath79-misc.o
8 obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2835.o
9 obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2836.o
10 obj-$(CONFIG_ARCH_ACTIONS) += irq-owl-sirq.o
11 obj-$(CONFIG_DAVINCI_CP_INTC) += irq-davinci-cp-intc.o
13 obj-$(CONFIG_FARADAY_FTINTC010) += irq-ftintc010.o
14 obj-$(CONFIG_ARCH_HIP04) += irq-hip04.o
[all …]
/openbmc/linux/arch/arm64/kvm/vgic/
H A Dvgic.c63 struct vgic_irq *irq = NULL; in vgic_get_lpi() local
68 list_for_each_entry(irq, &dist->lpi_list_head, lpi_list) { in vgic_get_lpi()
69 if (irq->intid != intid) in vgic_get_lpi()
76 vgic_get_irq_kref(irq); in vgic_get_lpi()
79 irq = NULL; in vgic_get_lpi()
84 return irq; in vgic_get_lpi()
126 void __vgic_put_lpi_locked(struct kvm *kvm, struct vgic_irq *irq) in __vgic_put_lpi_locked() argument
130 if (!kref_put(&irq->refcount, vgic_irq_release)) in __vgic_put_lpi_locked()
133 list_del(&irq->lpi_list); in __vgic_put_lpi_locked()
136 kfree(irq); in __vgic_put_lpi_locked()
[all …]
H A Dvgic-mmio.c53 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_read_group() local
55 if (irq->group) in vgic_mmio_read_group()
58 vgic_put_irq(vcpu->kvm, irq); in vgic_mmio_read_group()
64 static void vgic_update_vsgi(struct vgic_irq *irq) in vgic_update_vsgi() argument
66 WARN_ON(its_prop_update_vsgi(irq->host_irq, irq->priority, irq->group)); in vgic_update_vsgi()
77 struct vgic_irq *irq = vgic_get_irq(vcpu->kvm, vcpu, intid + i); in vgic_mmio_write_group() local
79 raw_spin_lock_irqsave(&irq->irq_lock, flags); in vgic_mmio_write_group()
80 irq->group = !!(val & BIT(i)); in vgic_mmio_write_group()
81 if (irq->hw && vgic_irq_is_sgi(irq->intid)) { in vgic_mmio_write_group()
82 vgic_update_vsgi(irq); in vgic_mmio_write_group()
[all …]
H A Dvgic-v4.c84 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_irq(vcpu->kvm, 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 …]
/openbmc/linux/drivers/misc/ocxl/
H A Dafu_irq.c35 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 = (struct afu_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 …]
/openbmc/u-boot/arch/x86/lib/
H A Dinterrupts.c47 void irq_install_handler(int irq, interrupt_handler_t *handler, void *arg) in irq_install_handler() argument
51 if (irq < 0 || irq >= SYS_NUM_IRQS) { in irq_install_handler()
52 printf("irq_install_handler: bad irq number %d\n", irq); in irq_install_handler()
56 if (irq_handlers[irq].handler != NULL) in irq_install_handler()
59 (ulong) irq_handlers[irq].handler); in irq_install_handler()
63 irq_handlers[irq].handler = handler; in irq_install_handler()
64 irq_handlers[irq].arg = arg; in irq_install_handler()
65 irq_handlers[irq].count = 0; in irq_install_handler()
68 unmask_irq(irq); in irq_install_handler()
76 void irq_free_handler(int irq) in irq_free_handler() argument
[all …]
/openbmc/linux/arch/m68k/coldfire/
H A Dintc-simr.c38 static inline unsigned int irq2ebit(unsigned int irq) in irq2ebit() argument
40 return irqebitmap[irq - EINT0]; in irq2ebit()
54 static inline unsigned int irq2ebit(unsigned int irq) in irq2ebit() argument
56 return irq - EINT0; in irq2ebit()
69 unsigned int irq = d->irq - MCFINT_VECBASE; in intc_irq_mask() local
71 if (MCFINTC2_SIMR && (irq > 127)) in intc_irq_mask()
72 __raw_writeb(irq - 128, MCFINTC2_SIMR); in intc_irq_mask()
73 else if (MCFINTC1_SIMR && (irq > 63)) in intc_irq_mask()
74 __raw_writeb(irq - 64, MCFINTC1_SIMR); in intc_irq_mask()
76 __raw_writeb(irq, MCFINTC0_SIMR); in intc_irq_mask()
[all …]
H A Dintc-2.c52 unsigned int irq = d->irq - MCFINT_VECBASE; in intc_irq_mask() local
57 imraddr = (irq & 0x40) ? MCFICM_INTC1 : MCFICM_INTC0; in intc_irq_mask()
61 imraddr += (irq & 0x20) ? MCFINTC_IMRH : MCFINTC_IMRL; in intc_irq_mask()
62 imrbit = 0x1 << (irq & 0x1f); in intc_irq_mask()
70 unsigned int irq = d->irq - MCFINT_VECBASE; in intc_irq_unmask() local
75 imraddr = (irq & 0x40) ? MCFICM_INTC1 : MCFICM_INTC0; in intc_irq_unmask()
79 imraddr += ((irq & 0x20) ? MCFINTC_IMRH : MCFINTC_IMRL); in intc_irq_unmask()
80 imrbit = 0x1 << (irq & 0x1f); in intc_irq_unmask()
83 if ((irq & 0x20) == 0) in intc_irq_unmask()
98 unsigned int irq = d->irq; in intc_irq_ack() local
[all …]
H A Dintc-5272.c83 unsigned int irq = d->irq; in intc_irq_mask() local
85 if ((irq >= MCFINT_VECBASE) && (irq <= MCFINT_VECMAX)) { in intc_irq_mask()
87 irq -= MCFINT_VECBASE; in intc_irq_mask()
88 v = 0x8 << intc_irqmap[irq].index; in intc_irq_mask()
89 writel(v, intc_irqmap[irq].icr); in intc_irq_mask()
95 unsigned int irq = d->irq; in intc_irq_unmask() local
97 if ((irq >= MCFINT_VECBASE) && (irq <= MCFINT_VECMAX)) { in intc_irq_unmask()
99 irq -= MCFINT_VECBASE; in intc_irq_unmask()
100 v = 0xd << intc_irqmap[irq].index; in intc_irq_unmask()
101 writel(v, intc_irqmap[irq].icr); in intc_irq_unmask()
[all …]
/openbmc/qemu/hw/intc/
H A Darm_gicv3_dist.c32 typedef uint32_t maskfn(GICv3State *s, int irq);
34 static uint32_t mask_nsacr_ge1(GICv3State *s, int irq) in mask_nsacr_ge1() argument
37 uint64_t raw_nsacr = s->gicd_nsacr[irq / 16 + 1]; in mask_nsacr_ge1()
39 raw_nsacr = raw_nsacr << 32 | s->gicd_nsacr[irq / 16]; in mask_nsacr_ge1()
44 static uint32_t mask_nsacr_ge2(GICv3State *s, int irq) in mask_nsacr_ge2() argument
47 uint64_t raw_nsacr = s->gicd_nsacr[irq / 16 + 1]; in mask_nsacr_ge2()
49 raw_nsacr = raw_nsacr << 32 | s->gicd_nsacr[irq / 16]; in mask_nsacr_ge2()
60 maskfn *maskfn, int irq) in mask_group_and_nsacr() argument
72 mask = *gic_bmp_ptr32(s->group, irq); in mask_group_and_nsacr()
74 mask |= maskfn(s, irq); in mask_group_and_nsacr()
[all …]
H A Dgic_internal.h29 #define GIC_DIST_SET_ENABLED(irq, cm) (s->irq_state[irq].enabled |= (cm)) argument
30 #define GIC_DIST_CLEAR_ENABLED(irq, cm) (s->irq_state[irq].enabled &= ~(cm)) argument
31 #define GIC_DIST_TEST_ENABLED(irq, cm) ((s->irq_state[irq].enabled & (cm)) != 0) argument
32 #define GIC_DIST_SET_PENDING(irq, cm) (s->irq_state[irq].pending |= (cm)) argument
33 #define GIC_DIST_CLEAR_PENDING(irq, cm) (s->irq_state[irq].pending &= ~(cm)) argument
34 #define GIC_DIST_SET_ACTIVE(irq, cm) (s->irq_state[irq].active |= (cm)) argument
35 #define GIC_DIST_CLEAR_ACTIVE(irq, cm) (s->irq_state[irq].active &= ~(cm)) argument
36 #define GIC_DIST_TEST_ACTIVE(irq, cm) ((s->irq_state[irq].active & (cm)) != 0) argument
37 #define GIC_DIST_SET_MODEL(irq) (s->irq_state[irq].model = true) argument
38 #define GIC_DIST_CLEAR_MODEL(irq) (s->irq_state[irq].model = false) argument
[all …]
/openbmc/linux/drivers/acpi/
H A Dpci_link.c69 struct acpi_pci_link_irq irq; member
97 struct acpi_resource_irq *p = &resource->data.irq; in acpi_pci_link_check_possible()
112 link->irq.possible[i] = p->interrupts[i]; in acpi_pci_link_check_possible()
113 link->irq.possible_count++; in acpi_pci_link_check_possible()
115 link->irq.triggering = p->triggering; in acpi_pci_link_check_possible()
116 link->irq.polarity = p->polarity; in acpi_pci_link_check_possible()
117 link->irq.resource_type = ACPI_RESOURCE_TYPE_IRQ; in acpi_pci_link_check_possible()
138 link->irq.possible[i] = p->interrupts[i]; in acpi_pci_link_check_possible()
139 link->irq.possible_count++; in acpi_pci_link_check_possible()
141 link->irq.triggering = p->triggering; in acpi_pci_link_check_possible()
[all …]
/openbmc/linux/arch/arm/mach-rpc/
H A Dirq.c76 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 …]
/openbmc/linux/arch/ia64/kernel/
H A Diosapic.c179 int irq; in __gsi_to_irq() local
183 for (irq = 0; irq < NR_IRQS; irq++) { in __gsi_to_irq()
184 info = &iosapic_intr_info[irq]; in __gsi_to_irq()
187 return irq; in __gsi_to_irq()
196 int irq; in gsi_to_irq() local
199 irq = __gsi_to_irq(gsi); in gsi_to_irq()
201 return irq; in gsi_to_irq()
204 static struct iosapic_rte_info *find_rte(unsigned int irq, unsigned int gsi) in find_rte() argument
208 list_for_each_entry(rte, &iosapic_intr_info[irq].rtes, rte_list) in find_rte()
215 set_rte (unsigned int gsi, unsigned int irq, unsigned int dest, int mask) in set_rte() argument
[all …]
H A Dmsi_ia64.c22 unsigned int irq = idata->irq; in ia64_set_msi_irq_affinity() local
24 if (irq_prepare_move(irq, cpu)) in ia64_set_msi_irq_affinity()
36 data |= MSI_DATA_VECTOR(irq_to_vector(irq)); in ia64_set_msi_irq_affinity()
39 pci_write_msi_msg(irq, &msg); in ia64_set_msi_irq_affinity()
50 int irq, vector; in arch_setup_msi_irq() local
52 irq = create_irq(); in arch_setup_msi_irq()
53 if (irq < 0) in arch_setup_msi_irq()
54 return irq; in arch_setup_msi_irq()
56 irq_set_msi_desc(irq, desc); in arch_setup_msi_irq()
57 dest_phys_id = cpu_physical_id(cpumask_any_and(&(irq_to_domain(irq)), in arch_setup_msi_irq()
[all …]
H A Dirq_ia64.c93 int irq; in find_unassigned_irq() local
95 for (irq = IA64_FIRST_DEVICE_VECTOR; irq < NR_IRQS; irq++) in find_unassigned_irq()
96 if (irq_status[irq] == IRQ_UNUSED) in find_unassigned_irq()
97 return irq; in find_unassigned_irq()
120 static int __bind_irq_vector(int irq, int vector, cpumask_t domain) in __bind_irq_vector() argument
124 struct irq_cfg *cfg = &irq_cfg[irq]; in __bind_irq_vector()
126 BUG_ON((unsigned)irq >= NR_IRQS); in __bind_irq_vector()
137 per_cpu(vector_irq, cpu)[vector] = irq; in __bind_irq_vector()
140 irq_status[irq] = IRQ_USED; in __bind_irq_vector()
145 int bind_irq_vector(int irq, int vector, cpumask_t domain) in bind_irq_vector() argument
[all …]
/openbmc/linux/arch/m68k/include/asm/
H A Datariints.h115 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 …]
/openbmc/linux/drivers/gpu/drm/i915/gvt/
H A Dinterrupt.c48 #define get_event_virt_handler(irq, e) (irq->events[e].v_handler) argument
49 #define get_irq_info(irq, e) (irq->events[e].info) argument
51 #define irq_to_gvt(irq) \ argument
52 container_of(irq, struct intel_gvt, irq)
153 struct intel_gvt_irq *irq = &gvt->irq; in regbase_to_irq_info() local
156 for_each_set_bit(i, irq->irq_info_bitmap, INTEL_GVT_IRQ_INFO_MAX) { in regbase_to_irq_info()
157 if (i915_mmio_reg_offset(irq->info[i]->reg_base) == reg) in regbase_to_irq_info()
158 return irq->info[i]; in regbase_to_irq_info()
182 const struct intel_gvt_irq_ops *ops = gvt->irq.ops; in intel_vgpu_reg_imr_handler()
212 const struct intel_gvt_irq_ops *ops = gvt->irq.ops; in intel_vgpu_reg_master_irq_handler()
[all …]
/openbmc/linux/arch/x86/include/asm/trace/
H A Dirq_vectors.h128 TP_PROTO(unsigned int irq, unsigned int vector,
131 TP_ARGS(irq, vector, cpu, apicdest),
134 __field( unsigned int, irq )
141 __entry->irq = irq;
148 __entry->irq, __entry->vector, __entry->cpu,
154 TP_PROTO(unsigned int irq, unsigned int vector,
158 TP_ARGS(irq, vector, cpu, prev_vector, prev_cpu),
161 __field( unsigned int, irq )
169 __entry->irq = irq;
178 __entry->irq, __entry->vector, __entry->cpu,
[all …]
/openbmc/linux/include/linux/
H A Dinterrupt.h126 unsigned int irq; member
147 request_threaded_irq(unsigned int irq, irq_handler_t handler,
165 request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, in request_irq() argument
168 return request_threaded_irq(irq, handler, NULL, flags, name, dev); in request_irq()
172 request_any_context_irq(unsigned int irq, irq_handler_t handler,
176 __request_percpu_irq(unsigned int irq, irq_handler_t handler,
181 request_nmi(unsigned int irq, irq_handler_t handler, unsigned long flags,
185 request_percpu_irq(unsigned int irq, irq_handler_t handler, in request_percpu_irq() argument
188 return __request_percpu_irq(irq, handler, 0, in request_percpu_irq()
193 request_percpu_nmi(unsigned int irq, irq_handler_t handler,
[all …]
H A Dirqnr.h9 extern struct irq_desc *irq_to_desc(unsigned int irq);
12 # define for_each_irq_desc(irq, desc) \ argument
13 for (irq = 0, desc = irq_to_desc(irq); irq < nr_irqs; \
14 irq++, desc = irq_to_desc(irq)) \
20 # define for_each_irq_desc_reverse(irq, desc) \ argument
21 for (irq = nr_irqs - 1, desc = irq_to_desc(irq); irq >= 0; \
22 irq--, desc = irq_to_desc(irq)) \
27 # define for_each_active_irq(irq) \ argument
28 for (irq = irq_get_next_irq(0); irq < nr_irqs; \
29 irq = irq_get_next_irq(irq + 1))
[all …]
/openbmc/linux/drivers/parisc/
H A Dgsc.c35 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 …]
/openbmc/linux/arch/m68k/mac/
H A Dmacints.c142 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 …]
/openbmc/linux/arch/m68k/q40/
H A Dq40ints.c46 unsigned int irq = data->irq; in q40_irq_startup() local
49 switch (irq) { in q40_irq_startup()
53 irq); in q40_irq_startup()
131 static irqreturn_t q40_timer_int(int irq, void *dev_id) in q40_timer_int() argument
172 struct IRQ_TABLE{ unsigned mask; int irq ;}; member
180 { .mask = Q40_IRQ3_MASK, .irq = 3 }, /* ser 1 */
181 { .mask = Q40_IRQ4_MASK, .irq = 4 }, /* ser 2 */
182 { .mask = Q40_IRQ14_MASK, .irq = 14 }, /* IDE 1 */
183 { .mask = Q40_IRQ15_MASK, .irq = 15 }, /* IDE 2 */
184 { .mask = Q40_IRQ6_MASK, .irq = 6 }, /* floppy, handled elsewhere */
[all …]
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/
H A Dpci_irq.c153 static void mlx5_system_free_irq(struct mlx5_irq *irq) in mlx5_system_free_irq() argument
155 struct mlx5_irq_pool *pool = irq->pool; in mlx5_system_free_irq()
164 irq_update_affinity_hint(irq->map.virq, NULL); in mlx5_system_free_irq()
168 irq_cpu_rmap_remove(rmap, irq->map.virq); in mlx5_system_free_irq()
171 free_irq(irq->map.virq, &irq->nh); in mlx5_system_free_irq()
172 if (irq->map.index && pci_msix_can_alloc_dyn(pool->dev->pdev)) in mlx5_system_free_irq()
173 pci_msix_free_irq(pool->dev->pdev, irq->map); in mlx5_system_free_irq()
176 static void irq_release(struct mlx5_irq *irq) in irq_release() argument
178 struct mlx5_irq_pool *pool = irq->pool; in irq_release()
180 xa_erase(&pool->irqs, irq->pool_index); in irq_release()
[all …]

12345678910>>...212