Home
last modified time | relevance | path

Searched refs:irqd (Results 1 – 25 of 30) sorted by relevance

12

/Linux-v5.4/arch/x86/kernel/apic/
Dvector.c78 static struct apic_chip_data *apic_chip_data(struct irq_data *irqd) in apic_chip_data() argument
80 if (!irqd) in apic_chip_data()
83 while (irqd->parent_data) in apic_chip_data()
84 irqd = irqd->parent_data; in apic_chip_data()
86 return irqd->chip_data; in apic_chip_data()
89 struct irq_cfg *irqd_cfg(struct irq_data *irqd) in irqd_cfg() argument
91 struct apic_chip_data *apicd = apic_chip_data(irqd); in irqd_cfg()
117 static void apic_update_irq_cfg(struct irq_data *irqd, unsigned int vector, in apic_update_irq_cfg() argument
120 struct apic_chip_data *apicd = apic_chip_data(irqd); in apic_update_irq_cfg()
126 irq_data_update_effective_affinity(irqd, cpumask_of(cpu)); in apic_update_irq_cfg()
[all …]
Dio_apic.c1862 static void ioapic_configure_entry(struct irq_data *irqd) in ioapic_configure_entry() argument
1864 struct mp_chip_data *mpd = irqd->chip_data; in ioapic_configure_entry()
1865 struct irq_cfg *cfg = irqd_cfg(irqd); in ioapic_configure_entry()
1873 if (irqd->chip == &ioapic_chip) { in ioapic_configure_entry()
1911 static int ioapic_irq_get_chip_state(struct irq_data *irqd, in ioapic_irq_get_chip_state() argument
1915 struct mp_chip_data *mcd = irqd->chip_data; in ioapic_irq_get_chip_state()
/Linux-v5.4/drivers/mfd/
Dlp8788-irq.c64 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_enable() local
66 irqd->enabled[data->hwirq] = 1; in lp8788_irq_enable()
71 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_disable() local
73 irqd->enabled[data->hwirq] = 0; in lp8788_irq_disable()
78 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_lock() local
80 mutex_lock(&irqd->irq_lock); in lp8788_irq_bus_lock()
85 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_sync_unlock() local
91 val = _irq_to_val(irq, irqd->enabled[irq]); in lp8788_irq_bus_sync_unlock()
93 lp8788_update_bits(irqd->lp, addr, mask, val); in lp8788_irq_bus_sync_unlock()
95 mutex_unlock(&irqd->irq_lock); in lp8788_irq_bus_sync_unlock()
[all …]
/Linux-v5.4/drivers/pinctrl/samsung/
Dpinctrl-s3c64xx.c303 static inline void s3c64xx_gpio_irq_set_mask(struct irq_data *irqd, bool mask) in s3c64xx_gpio_irq_set_mask() argument
305 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in s3c64xx_gpio_irq_set_mask()
307 unsigned char index = EINT_OFFS(bank->eint_offset) + irqd->hwirq; in s3c64xx_gpio_irq_set_mask()
319 static void s3c64xx_gpio_irq_unmask(struct irq_data *irqd) in s3c64xx_gpio_irq_unmask() argument
321 s3c64xx_gpio_irq_set_mask(irqd, false); in s3c64xx_gpio_irq_unmask()
324 static void s3c64xx_gpio_irq_mask(struct irq_data *irqd) in s3c64xx_gpio_irq_mask() argument
326 s3c64xx_gpio_irq_set_mask(irqd, true); in s3c64xx_gpio_irq_mask()
329 static void s3c64xx_gpio_irq_ack(struct irq_data *irqd) in s3c64xx_gpio_irq_ack() argument
331 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in s3c64xx_gpio_irq_ack()
333 unsigned char index = EINT_OFFS(bank->eint_offset) + irqd->hwirq; in s3c64xx_gpio_irq_ack()
[all …]
Dpinctrl-exynos.c50 static void exynos_irq_mask(struct irq_data *irqd) in exynos_irq_mask() argument
52 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_mask()
54 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_mask()
62 mask |= 1 << irqd->hwirq; in exynos_irq_mask()
68 static void exynos_irq_ack(struct irq_data *irqd) in exynos_irq_ack() argument
70 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_ack()
72 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_ack()
75 writel(1 << irqd->hwirq, bank->eint_base + reg_pend); in exynos_irq_ack()
78 static void exynos_irq_unmask(struct irq_data *irqd) in exynos_irq_unmask() argument
80 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_unmask()
[all …]
/Linux-v5.4/drivers/irqchip/
Dirq-eznps.c56 static void nps400_irq_mask(struct irq_data *irqd) in nps400_irq_mask() argument
59 unsigned int irq = irqd_to_hwirq(irqd); in nps400_irq_mask()
66 static void nps400_irq_unmask(struct irq_data *irqd) in nps400_irq_unmask() argument
69 unsigned int irq = irqd_to_hwirq(irqd); in nps400_irq_unmask()
76 static void nps400_irq_eoi_global(struct irq_data *irqd) in nps400_irq_eoi_global() argument
78 unsigned int __maybe_unused irq = irqd_to_hwirq(irqd); in nps400_irq_eoi_global()
88 static void nps400_irq_ack(struct irq_data *irqd) in nps400_irq_ack() argument
90 unsigned int __maybe_unused irq = irqd_to_hwirq(irqd); in nps400_irq_ack()
Dirq-keystone.c39 struct irq_domain *irqd; member
107 virq = irq_find_mapping(kirq->irqd, src); in keystone_irq_handler()
177 kirq->irqd = irq_domain_add_linear(np, KEYSTONE_N_IRQ, in keystone_irq_probe()
179 if (!kirq->irqd) { in keystone_irq_probe()
191 irq_domain_remove(kirq->irqd); in keystone_irq_probe()
211 irq_dispose_mapping(irq_find_mapping(kirq->irqd, hwirq)); in keystone_irq_remove()
213 irq_domain_remove(kirq->irqd); in keystone_irq_remove()
Dirq-sun4i.c49 static void sun4i_irq_ack(struct irq_data *irqd) in sun4i_irq_ack() argument
51 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_ack()
59 static void sun4i_irq_mask(struct irq_data *irqd) in sun4i_irq_mask() argument
61 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_mask()
72 static void sun4i_irq_unmask(struct irq_data *irqd) in sun4i_irq_unmask() argument
74 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_unmask()
Dirq-zevio.c39 static void zevio_irq_ack(struct irq_data *irqd) in zevio_irq_ack() argument
41 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(irqd); in zevio_irq_ack()
42 struct irq_chip_regs *regs = &irq_data_get_chip_type(irqd)->regs; in zevio_irq_ack()
/Linux-v5.4/drivers/gpio/
Dgpio-dln2.c302 static void dln2_irq_unmask(struct irq_data *irqd) in dln2_irq_unmask() argument
304 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_unmask()
306 int pin = irqd_to_hwirq(irqd); in dln2_irq_unmask()
311 static void dln2_irq_mask(struct irq_data *irqd) in dln2_irq_mask() argument
313 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_mask()
315 int pin = irqd_to_hwirq(irqd); in dln2_irq_mask()
320 static int dln2_irq_set_type(struct irq_data *irqd, unsigned type) in dln2_irq_set_type() argument
322 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_set_type()
324 int pin = irqd_to_hwirq(irqd); in dln2_irq_set_type()
349 static void dln2_irq_bus_lock(struct irq_data *irqd) in dln2_irq_bus_lock() argument
[all …]
/Linux-v5.4/drivers/gpu/drm/msm/disp/mdp5/
Dmdp5_mdss.c72 static void mdss_hw_mask_irq(struct irq_data *irqd) in mdss_hw_mask_irq() argument
74 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_mask_irq()
77 clear_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_mask_irq()
81 static void mdss_hw_unmask_irq(struct irq_data *irqd) in mdss_hw_unmask_irq() argument
83 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_unmask_irq()
86 set_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_unmask_irq()
/Linux-v5.4/drivers/soc/qcom/
Dsmp2p.c242 static void smp2p_mask_irq(struct irq_data *irqd) in smp2p_mask_irq() argument
244 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_mask_irq()
245 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_mask_irq()
250 static void smp2p_unmask_irq(struct irq_data *irqd) in smp2p_unmask_irq() argument
252 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_unmask_irq()
253 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_unmask_irq()
258 static int smp2p_set_irq_type(struct irq_data *irqd, unsigned int type) in smp2p_set_irq_type() argument
260 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_set_irq_type()
261 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_set_irq_type()
Dsmsm.c237 static void smsm_mask_irq(struct irq_data *irqd) in smsm_mask_irq() argument
239 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_mask_irq()
240 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_mask_irq()
262 static void smsm_unmask_irq(struct irq_data *irqd) in smsm_unmask_irq() argument
264 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_unmask_irq()
265 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_unmask_irq()
283 static int smsm_set_irq_type(struct irq_data *irqd, unsigned int type) in smsm_set_irq_type() argument
285 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_set_irq_type()
286 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_set_irq_type()
/Linux-v5.4/drivers/gpu/drm/msm/disp/dpu1/
Ddpu_mdss.c100 static void dpu_mdss_irq_mask(struct irq_data *irqd) in dpu_mdss_irq_mask() argument
102 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_mask()
106 clear_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_mask()
111 static void dpu_mdss_irq_unmask(struct irq_data *irqd) in dpu_mdss_irq_unmask() argument
113 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_unmask()
117 set_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_unmask()
/Linux-v5.4/drivers/pinctrl/
Dpinctrl-ingenic.c1445 static void ingenic_gpio_irq_mask(struct irq_data *irqd) in ingenic_gpio_irq_mask() argument
1447 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_mask()
1450 ingenic_gpio_set_bit(jzgc, GPIO_MSK, irqd->hwirq, true); in ingenic_gpio_irq_mask()
1453 static void ingenic_gpio_irq_unmask(struct irq_data *irqd) in ingenic_gpio_irq_unmask() argument
1455 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_unmask()
1458 ingenic_gpio_set_bit(jzgc, GPIO_MSK, irqd->hwirq, false); in ingenic_gpio_irq_unmask()
1461 static void ingenic_gpio_irq_enable(struct irq_data *irqd) in ingenic_gpio_irq_enable() argument
1463 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_enable()
1465 int irq = irqd->hwirq; in ingenic_gpio_irq_enable()
1472 ingenic_gpio_irq_unmask(irqd); in ingenic_gpio_irq_enable()
[all …]
/Linux-v5.4/arch/mips/sgi-ip27/
Dip27-irq.c156 struct irq_data *irqd; in hub_domain_free() local
161 irqd = irq_domain_get_irq_data(domain, virq); in hub_domain_free()
162 if (irqd && irqd->chip_data) in hub_domain_free()
163 kfree(irqd->chip_data); in hub_domain_free()
/Linux-v5.4/arch/mips/pci/
Dpci-xtalk-bridge.c337 struct irq_data *irqd = irq_domain_get_irq_data(domain, virq); in bridge_domain_free() local
342 kfree(irqd->chip_data); in bridge_domain_free()
347 struct irq_data *irqd, bool reserve) in bridge_domain_activate() argument
349 struct bridge_irq_chip_data *data = irqd->chip_data; in bridge_domain_activate()
351 int bit = irqd->parent_data->hwirq; in bridge_domain_activate()
352 int pin = irqd->hwirq; in bridge_domain_activate()
384 struct irq_data *irqd) in bridge_domain_deactivate() argument
386 struct bridge_irq_chip_data *data = irqd->chip_data; in bridge_domain_deactivate()
388 bridge_clr(data->bc, b_int_enable, (1 << irqd->hwirq)); in bridge_domain_deactivate()
/Linux-v5.4/arch/mips/loongson64/loongson-3/
Dirq.c42 struct irq_data *irqd; in ht_irqdispatch() local
58 irqd = irq_get_irq_data(ht_irq[i]); in ht_irqdispatch()
59 cpumask_and(&affinity, irqd->common->affinity, cpu_active_mask); in ht_irqdispatch()
/Linux-v5.4/kernel/irq/
Dmsi.c477 struct irq_data *irqd; in msi_domain_alloc_irqs() local
482 irqd = irq_domain_get_irq_data(domain, desc->irq); in msi_domain_alloc_irqs()
483 if (irqd_is_activated(irqd)) in msi_domain_alloc_irqs()
484 irq_domain_deactivate_irq(irqd); in msi_domain_alloc_irqs()
Dirqdomain.c1619 static int __irq_domain_activate_irq(struct irq_data *irqd, bool reserve) in __irq_domain_activate_irq() argument
1623 if (irqd && irqd->domain) { in __irq_domain_activate_irq()
1624 struct irq_domain *domain = irqd->domain; in __irq_domain_activate_irq()
1626 if (irqd->parent_data) in __irq_domain_activate_irq()
1627 ret = __irq_domain_activate_irq(irqd->parent_data, in __irq_domain_activate_irq()
1630 ret = domain->ops->activate(domain, irqd, reserve); in __irq_domain_activate_irq()
1632 if (ret && irqd->parent_data) in __irq_domain_activate_irq()
1633 __irq_domain_deactivate_irq(irqd->parent_data); in __irq_domain_activate_irq()
/Linux-v5.4/arch/powerpc/sysdev/
Dfsl_msi.c65 static void fsl_msi_print_chip(struct irq_data *irqd, struct seq_file *p) in fsl_msi_print_chip() argument
67 struct fsl_msi *msi_data = irqd->domain->host_data; in fsl_msi_print_chip()
68 irq_hw_number_t hwirq = irqd_to_hwirq(irqd); in fsl_msi_print_chip()
/Linux-v5.4/include/linux/
Dirqdomain.h119 int (*activate)(struct irq_domain *d, struct irq_data *irqd, bool reserve);
126 struct irq_data *irqd, int ind);
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/
Damdgpu_irq.c569 static void amdgpu_irq_mask(struct irq_data *irqd) in amdgpu_irq_mask() argument
574 static void amdgpu_irq_unmask(struct irq_data *irqd) in amdgpu_irq_unmask() argument
/Linux-v5.4/drivers/base/
Dplatform.c118 struct irq_data *irqd; in __platform_get_irq()
120 irqd = irq_get_irq_data(r->start); in __platform_get_irq()
121 if (!irqd) in __platform_get_irq()
123 irqd_set_trigger_type(irqd, r->flags & IORESOURCE_BITS); in __platform_get_irq()
/Linux-v5.4/drivers/ide/
Dide-probe.c683 unsigned int irqd; in ide_probe_port() local
696 irqd = hwif->irq; in ide_probe_port()
697 if (irqd) in ide_probe_port()
717 if (irqd) in ide_probe_port()
718 enable_irq(irqd); in ide_probe_port()

12