/Linux-v4.19/arch/x86/kernel/apic/ |
D | vector.c | 80 static struct apic_chip_data *apic_chip_data(struct irq_data *irqd) in apic_chip_data() argument 82 if (!irqd) in apic_chip_data() 85 while (irqd->parent_data) in apic_chip_data() 86 irqd = irqd->parent_data; in apic_chip_data() 88 return irqd->chip_data; in apic_chip_data() 91 struct irq_cfg *irqd_cfg(struct irq_data *irqd) in irqd_cfg() argument 93 struct apic_chip_data *apicd = apic_chip_data(irqd); in irqd_cfg() 119 static void apic_update_irq_cfg(struct irq_data *irqd, unsigned int vector, in apic_update_irq_cfg() argument 122 struct apic_chip_data *apicd = apic_chip_data(irqd); in apic_update_irq_cfg() 128 irq_data_update_effective_affinity(irqd, cpumask_of(cpu)); in apic_update_irq_cfg() [all …]
|
/Linux-v4.19/drivers/mfd/ |
D | lp8788-irq.c | 68 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_enable() local 70 irqd->enabled[data->hwirq] = 1; in lp8788_irq_enable() 75 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_disable() local 77 irqd->enabled[data->hwirq] = 0; in lp8788_irq_disable() 82 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_lock() local 84 mutex_lock(&irqd->irq_lock); in lp8788_irq_bus_lock() 89 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_sync_unlock() local 95 val = _irq_to_val(irq, irqd->enabled[irq]); in lp8788_irq_bus_sync_unlock() 97 lp8788_update_bits(irqd->lp, addr, mask, val); in lp8788_irq_bus_sync_unlock() 99 mutex_unlock(&irqd->irq_lock); in lp8788_irq_bus_sync_unlock() [all …]
|
/Linux-v4.19/drivers/gpio/ |
D | gpio-ingenic.c | 119 static void ingenic_gpio_irq_mask(struct irq_data *irqd) in ingenic_gpio_irq_mask() argument 121 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_mask() 124 gpio_ingenic_set_bit(jzgc, GPIO_MSK, irqd->hwirq, true); in ingenic_gpio_irq_mask() 127 static void ingenic_gpio_irq_unmask(struct irq_data *irqd) in ingenic_gpio_irq_unmask() argument 129 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_unmask() 132 gpio_ingenic_set_bit(jzgc, GPIO_MSK, irqd->hwirq, false); in ingenic_gpio_irq_unmask() 135 static void ingenic_gpio_irq_enable(struct irq_data *irqd) in ingenic_gpio_irq_enable() argument 137 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ingenic_gpio_irq_enable() 139 int irq = irqd->hwirq; in ingenic_gpio_irq_enable() 146 ingenic_gpio_irq_unmask(irqd); in ingenic_gpio_irq_enable() [all …]
|
D | gpio-dln2.c | 305 static void dln2_irq_unmask(struct irq_data *irqd) in dln2_irq_unmask() argument 307 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_unmask() 309 int pin = irqd_to_hwirq(irqd); in dln2_irq_unmask() 314 static void dln2_irq_mask(struct irq_data *irqd) in dln2_irq_mask() argument 316 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_mask() 318 int pin = irqd_to_hwirq(irqd); in dln2_irq_mask() 323 static int dln2_irq_set_type(struct irq_data *irqd, unsigned type) in dln2_irq_set_type() argument 325 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_set_type() 327 int pin = irqd_to_hwirq(irqd); in dln2_irq_set_type() 352 static void dln2_irq_bus_lock(struct irq_data *irqd) in dln2_irq_bus_lock() argument [all …]
|
D | gpio-thunderx.c | 56 struct irq_domain *irqd; member 454 return irq_find_mapping(txgpio->irqd, offset); in thunderx_gpio_to_irq() 554 …txgpio->irqd = irq_domain_create_hierarchy(irq_get_irq_data(txgpio->msix_entries[0].vector)->domai… in thunderx_gpio_probe() 557 if (!txgpio->irqd) { in thunderx_gpio_probe() 564 err = irq_domain_push_irq(txgpio->irqd, in thunderx_gpio_probe() 604 irq_domain_pop_irq(txgpio->irqd, in thunderx_gpio_remove() 607 irq_domain_remove(txgpio->irqd); in thunderx_gpio_remove()
|
/Linux-v4.19/drivers/pinctrl/samsung/ |
D | pinctrl-s3c64xx.c | 303 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 …]
|
D | pinctrl-exynos.c | 50 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-v4.19/drivers/irqchip/ |
D | irq-eznps.c | 56 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()
|
D | irq-sun4i.c | 39 static void sun4i_irq_ack(struct irq_data *irqd) in sun4i_irq_ack() argument 41 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_ack() 49 static void sun4i_irq_mask(struct irq_data *irqd) in sun4i_irq_mask() argument 51 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_mask() 61 static void sun4i_irq_unmask(struct irq_data *irqd) in sun4i_irq_unmask() argument 63 unsigned int irq = irqd_to_hwirq(irqd); in sun4i_irq_unmask()
|
D | irq-keystone.c | 39 struct irq_domain *irqd; member 107 virq = irq_find_mapping(kirq->irqd, src); in keystone_irq_handler() 179 kirq->irqd = irq_domain_add_linear(np, KEYSTONE_N_IRQ, in keystone_irq_probe() 181 if (!kirq->irqd) { in keystone_irq_probe() 193 irq_domain_remove(kirq->irqd); in keystone_irq_probe() 213 irq_dispose_mapping(irq_find_mapping(kirq->irqd, hwirq)); in keystone_irq_remove() 215 irq_domain_remove(kirq->irqd); in keystone_irq_remove()
|
D | irq-zevio.c | 43 static void zevio_irq_ack(struct irq_data *irqd) in zevio_irq_ack() argument 45 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(irqd); in zevio_irq_ack() 46 struct irq_chip_regs *regs = &irq_data_get_chip_type(irqd)->regs; in zevio_irq_ack()
|
/Linux-v4.19/drivers/gpu/drm/msm/disp/dpu1/ |
D | dpu_mdss.c | 53 static void dpu_mdss_irq_mask(struct irq_data *irqd) in dpu_mdss_irq_mask() argument 55 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_mask() 59 clear_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_mask() 64 static void dpu_mdss_irq_unmask(struct irq_data *irqd) in dpu_mdss_irq_unmask() argument 66 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_unmask() 70 set_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_unmask()
|
/Linux-v4.19/drivers/gpu/drm/msm/disp/mdp5/ |
D | mdp5_mdss.c | 83 static void mdss_hw_mask_irq(struct irq_data *irqd) in mdss_hw_mask_irq() argument 85 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_mask_irq() 88 clear_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_mask_irq() 92 static void mdss_hw_unmask_irq(struct irq_data *irqd) in mdss_hw_unmask_irq() argument 94 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_unmask_irq() 97 set_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_unmask_irq()
|
/Linux-v4.19/drivers/soc/qcom/ |
D | smsm.c | 245 static void smsm_mask_irq(struct irq_data *irqd) in smsm_mask_irq() argument 247 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_mask_irq() 248 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_mask_irq() 270 static void smsm_unmask_irq(struct irq_data *irqd) in smsm_unmask_irq() argument 272 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_unmask_irq() 273 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_unmask_irq() 291 static int smsm_set_irq_type(struct irq_data *irqd, unsigned int type) in smsm_set_irq_type() argument 293 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_set_irq_type() 294 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_set_irq_type()
|
D | smp2p.c | 250 static void smp2p_mask_irq(struct irq_data *irqd) in smp2p_mask_irq() argument 252 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_mask_irq() 253 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_mask_irq() 258 static void smp2p_unmask_irq(struct irq_data *irqd) in smp2p_unmask_irq() argument 260 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_unmask_irq() 261 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_unmask_irq() 266 static int smp2p_set_irq_type(struct irq_data *irqd, unsigned int type) in smp2p_set_irq_type() argument 268 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_set_irq_type() 269 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_set_irq_type()
|
/Linux-v4.19/arch/mips/loongson64/loongson-3/ |
D | irq.c | 42 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-v4.19/kernel/irq/ |
D | msi.c | 477 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()
|
D | irqdomain.c | 1580 static int __irq_domain_activate_irq(struct irq_data *irqd, bool reserve) in __irq_domain_activate_irq() argument 1584 if (irqd && irqd->domain) { in __irq_domain_activate_irq() 1585 struct irq_domain *domain = irqd->domain; in __irq_domain_activate_irq() 1587 if (irqd->parent_data) in __irq_domain_activate_irq() 1588 ret = __irq_domain_activate_irq(irqd->parent_data, in __irq_domain_activate_irq() 1591 ret = domain->ops->activate(domain, irqd, reserve); in __irq_domain_activate_irq() 1593 if (ret && irqd->parent_data) in __irq_domain_activate_irq() 1594 __irq_domain_deactivate_irq(irqd->parent_data); in __irq_domain_activate_irq()
|
/Linux-v4.19/arch/powerpc/sysdev/ |
D | fsl_msi.c | 70 static void fsl_msi_print_chip(struct irq_data *irqd, struct seq_file *p) in fsl_msi_print_chip() argument 72 struct fsl_msi *msi_data = irqd->domain->host_data; in fsl_msi_print_chip() 73 irq_hw_number_t hwirq = irqd_to_hwirq(irqd); in fsl_msi_print_chip()
|
/Linux-v4.19/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_irq.c | 547 static void amdgpu_irq_mask(struct irq_data *irqd) in amdgpu_irq_mask() argument 552 static void amdgpu_irq_unmask(struct irq_data *irqd) in amdgpu_irq_unmask() argument
|
/Linux-v4.19/include/linux/ |
D | irqdomain.h | 116 int (*activate)(struct irq_domain *d, struct irq_data *irqd, bool reserve); 123 struct irq_data *irqd, int ind);
|
/Linux-v4.19/drivers/ide/ |
D | ide-probe.c | 682 unsigned int irqd; in ide_probe_port() local 695 irqd = hwif->irq; in ide_probe_port() 696 if (irqd) in ide_probe_port() 716 if (irqd) in ide_probe_port() 717 enable_irq(irqd); in ide_probe_port()
|
/Linux-v4.19/drivers/base/ |
D | platform.c | 121 struct irq_data *irqd; in platform_get_irq() 123 irqd = irq_get_irq_data(r->start); in platform_get_irq() 124 if (!irqd) in platform_get_irq() 126 irqd_set_trigger_type(irqd, r->flags & IORESOURCE_BITS); in platform_get_irq()
|
/Linux-v4.19/drivers/iommu/ |
D | intel_irq_remapping.c | 1125 static void intel_ir_reconfigure_irte(struct irq_data *irqd, bool force) in intel_ir_reconfigure_irte() argument 1127 struct intel_ir_data *ir_data = irqd->chip_data; in intel_ir_reconfigure_irte() 1129 struct irq_cfg *cfg = irqd_cfg(irqd); in intel_ir_reconfigure_irte()
|
/Linux-v4.19/drivers/net/usb/ |
D | lan78xx.c | 1916 static void lan78xx_irq_mask(struct irq_data *irqd) in lan78xx_irq_mask() argument 1918 struct irq_domain_data *data = irq_data_get_irq_chip_data(irqd); in lan78xx_irq_mask() 1920 data->irqenable &= ~BIT(irqd_to_hwirq(irqd)); in lan78xx_irq_mask() 1923 static void lan78xx_irq_unmask(struct irq_data *irqd) in lan78xx_irq_unmask() argument 1925 struct irq_domain_data *data = irq_data_get_irq_chip_data(irqd); in lan78xx_irq_unmask() 1927 data->irqenable |= BIT(irqd_to_hwirq(irqd)); in lan78xx_irq_unmask() 1930 static void lan78xx_irq_bus_lock(struct irq_data *irqd) in lan78xx_irq_bus_lock() argument 1932 struct irq_domain_data *data = irq_data_get_irq_chip_data(irqd); in lan78xx_irq_bus_lock() 1937 static void lan78xx_irq_bus_sync_unlock(struct irq_data *irqd) in lan78xx_irq_bus_sync_unlock() argument 1939 struct irq_domain_data *data = irq_data_get_irq_chip_data(irqd); in lan78xx_irq_bus_sync_unlock()
|