/linux/arch/x86/kernel/apic/ |
A D | vector.c | 80 if (!irqd) in apic_chip_data() 84 irqd = irqd->parent_data; in apic_chip_data() 86 return irqd->chip_data; in apic_chip_data() 414 irqd->irq); in activate_reserved() 439 irqd->irq); in activate_managed() 491 if (irqd && irqd->chip_data) { in x86_vector_free_irqs() 556 BUG_ON(!irqd); in x86_vector_alloc_irqs() 616 if (!irqd) { in x86_vector_debug_show() 621 irq = irqd->irq; in x86_vector_debug_show() 891 irq_move_irq(irqd); in apic_ack_irq() [all …]
|
A D | msi.c | 30 irq_data_get_irq_chip(irqd)->irq_write_msi_msg(irqd, msg); in irq_msi_update_msg() 36 struct irq_cfg old_cfg, *cfg = irqd_cfg(irqd); in msi_set_affinity() 37 struct irq_data *parent = irqd->parent_data; in msi_set_affinity() 42 cpu = cpumask_first(irq_data_get_effective_affinity_mask(irqd)); in msi_set_affinity() 64 if (!irqd_msi_nomask_quirk(irqd) || in msi_set_affinity() 67 !irqd_is_started(irqd) || in msi_set_affinity() 69 irq_msi_update_msg(irqd, cfg); in msi_set_affinity() 78 irq_msi_update_msg(irqd, cfg); in msi_set_affinity() 115 irq_msi_update_msg(irqd, &old_cfg); in msi_set_affinity() 118 irq_msi_update_msg(irqd, cfg); in msi_set_affinity() [all …]
|
/linux/drivers/mfd/ |
A D | mt6358-irq.c | 62 irqd->enable_hwirq[hwirq] = true; in pmic_irq_enable() 88 if (irqd->enable_hwirq[i] == irqd->cache_hwirq[i]) in pmic_irq_sync_unlock() 107 irqd->cache_hwirq[i] = irqd->enable_hwirq[i]; in pmic_irq_sync_unlock() 169 irqd->top_int_status_reg, in mt6358_irq_handler() 211 struct pmic_irq_data *irqd; in mt6358_irq_init() local 228 irqd = chip->irq_data; in mt6358_irq_init() 230 irqd->num_pmic_irqs, in mt6358_irq_init() 233 if (!irqd->enable_hwirq) in mt6358_irq_init() 237 irqd->num_pmic_irqs, in mt6358_irq_init() 240 if (!irqd->cache_hwirq) in mt6358_irq_init() [all …]
|
A D | lp8788-irq.c | 80 mutex_lock(&irqd->irq_lock); in lp8788_irq_bus_lock() 95 mutex_unlock(&irqd->irq_lock); in lp8788_irq_bus_sync_unlock() 109 struct lp8788 *lp = irqd->lp; in lp8788_irq_handler() 151 struct lp8788_irq_data *irqd; in lp8788_irq_init() local 159 irqd = devm_kzalloc(lp->dev, sizeof(*irqd), GFP_KERNEL); in lp8788_irq_init() 160 if (!irqd) in lp8788_irq_init() 163 irqd->lp = lp; in lp8788_irq_init() 166 if (!irqd->domain) { in lp8788_irq_init() 171 lp->irqdm = irqd->domain; in lp8788_irq_init() 172 mutex_init(&irqd->irq_lock); in lp8788_irq_init() [all …]
|
/linux/drivers/pinctrl/samsung/ |
A D | pinctrl-s3c64xx.c | 321 s3c64xx_gpio_irq_set_mask(irqd, false); in s3c64xx_gpio_irq_unmask() 326 s3c64xx_gpio_irq_set_mask(irqd, true); in s3c64xx_gpio_irq_mask() 354 s3c64xx_irq_set_handler(irqd, type); in s3c64xx_gpio_irq_set_type() 511 irq_data_get_irq_chip_data(irqd); in s3c64xx_eint0_irq_set_mask() 517 val |= 1 << ddata->eints[irqd->hwirq]; in s3c64xx_eint0_irq_set_mask() 530 s3c64xx_eint0_irq_set_mask(irqd, true); in s3c64xx_eint0_irq_mask() 536 irq_data_get_irq_chip_data(irqd); in s3c64xx_eint0_irq_ack() 539 writel(1 << ddata->eints[irqd->hwirq], in s3c64xx_eint0_irq_ack() 546 irq_data_get_irq_chip_data(irqd); in s3c64xx_eint0_irq_set_type() 560 s3c64xx_irq_set_handler(irqd, type); in s3c64xx_eint0_irq_set_type() [all …]
|
A D | pinctrl-exynos.c | 52 static void exynos_irq_mask(struct irq_data *irqd) in exynos_irq_mask() argument 54 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_mask() 64 mask |= 1 << irqd->hwirq; in exynos_irq_mask() 70 static void exynos_irq_ack(struct irq_data *irqd) in exynos_irq_ack() argument 72 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_ack() 80 static void exynos_irq_unmask(struct irq_data *irqd) in exynos_irq_unmask() argument 98 exynos_irq_ack(irqd); in exynos_irq_unmask() 103 mask &= ~(1 << irqd->hwirq); in exynos_irq_unmask() 140 irq_set_handler_locked(irqd, handle_edge_irq); in exynos_irq_set_type() 142 irq_set_handler_locked(irqd, handle_level_irq); in exynos_irq_set_type() [all …]
|
/linux/kernel/irq/ |
A D | pm.c | 73 struct irq_data *irqd = &desc->irq_data; in suspend_device_irq() local 79 if (irqd_is_wakeup_set(irqd)) { in suspend_device_irq() 80 irqd_set(irqd, IRQD_WAKEUP_ARMED); in suspend_device_irq() 83 irqd_irq_disabled(irqd)) { in suspend_device_irq() 90 irqd_set(irqd, IRQD_IRQ_ENABLED_ON_SUSPEND); in suspend_device_irq() 154 struct irq_data *irqd = &desc->irq_data; in resume_irq() local 156 irqd_clear(irqd, IRQD_WAKEUP_ARMED); in resume_irq() 158 if (irqd_is_enabled_on_suspend(irqd)) { in resume_irq() 165 irqd_clear(irqd, IRQD_IRQ_ENABLED_ON_SUSPEND); in resume_irq()
|
A D | irqdomain.c | 1210 struct irq_data *irqd; in irq_domain_disconnect_hierarchy() local 1213 if (!irqd) in irq_domain_disconnect_hierarchy() 1236 for (irqd = irq_data->parent_data; irqd; irq_data = irqd, irqd = irqd->parent_data) { in irq_domain_trim_hierarchy() 1238 if (irqd->chip && tail) in irq_domain_trim_hierarchy() 1242 if (!irqd->chip && !tail) in irq_domain_trim_hierarchy() 1245 if (IS_ERR(irqd->chip)) { in irq_domain_trim_hierarchy() 1262 irqd = tail; in irq_domain_trim_hierarchy() 1264 irqd->parent_data = NULL; in irq_domain_trim_hierarchy() 1757 if (irqd && irqd->domain) { in __irq_domain_activate_irq() 1760 if (irqd->parent_data) in __irq_domain_activate_irq() [all …]
|
A D | irq_sim.c | 139 struct irq_data *irqd; in irq_sim_domain_unmap() local 141 irqd = irq_domain_get_irq_data(domain, virq); in irq_sim_domain_unmap() 142 irq_ctx = irq_data_get_irq_chip_data(irqd); in irq_sim_domain_unmap() 145 irq_domain_reset_irq_data(irqd); in irq_sim_domain_unmap()
|
/linux/drivers/gpio/ |
A D | gpio-dln2.c | 303 static void dln2_irq_unmask(struct irq_data *irqd) in dln2_irq_unmask() argument 305 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_unmask() 307 int pin = irqd_to_hwirq(irqd); in dln2_irq_unmask() 312 static void dln2_irq_mask(struct irq_data *irqd) in dln2_irq_mask() argument 314 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_mask() 316 int pin = irqd_to_hwirq(irqd); in dln2_irq_mask() 323 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_set_type() 325 int pin = irqd_to_hwirq(irqd); in dln2_irq_set_type() 350 static void dln2_irq_bus_lock(struct irq_data *irqd) in dln2_irq_bus_lock() argument 358 static void dln2_irq_bus_unlock(struct irq_data *irqd) in dln2_irq_bus_unlock() argument [all …]
|
A D | gpio-mlxbf2.c | 232 static void mlxbf2_gpio_irq_enable(struct irq_data *irqd) in mlxbf2_gpio_irq_enable() argument 234 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_enable() 236 int offset = irqd_to_hwirq(irqd); in mlxbf2_gpio_irq_enable() 251 static void mlxbf2_gpio_irq_disable(struct irq_data *irqd) in mlxbf2_gpio_irq_disable() argument 253 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_disable() 255 int offset = irqd_to_hwirq(irqd); in mlxbf2_gpio_irq_disable() 285 mlxbf2_gpio_irq_set_type(struct irq_data *irqd, unsigned int type) in mlxbf2_gpio_irq_set_type() argument 287 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_set_type() 289 int offset = irqd_to_hwirq(irqd); in mlxbf2_gpio_irq_set_type()
|
/linux/drivers/soc/qcom/ |
A D | smsm.c | 236 static void smsm_mask_irq(struct irq_data *irqd) in smsm_mask_irq() argument 238 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_mask_irq() 239 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_mask_irq() 259 static void smsm_unmask_irq(struct irq_data *irqd) in smsm_unmask_irq() argument 261 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_unmask_irq() 262 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_unmask_irq() 288 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_set_irq_type() 289 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smsm_set_irq_type() 307 static int smsm_get_irqchip_state(struct irq_data *irqd, in smsm_get_irqchip_state() argument 310 struct smsm_entry *entry = irq_data_get_irq_chip_data(irqd); in smsm_get_irqchip_state() [all …]
|
A D | smp2p.c | 314 static void smp2p_mask_irq(struct irq_data *irqd) in smp2p_mask_irq() argument 316 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_mask_irq() 317 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_mask_irq() 322 static void smp2p_unmask_irq(struct irq_data *irqd) in smp2p_unmask_irq() argument 324 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_unmask_irq() 325 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_unmask_irq() 330 static int smp2p_set_irq_type(struct irq_data *irqd, unsigned int type) in smp2p_set_irq_type() argument 332 struct smp2p_entry *entry = irq_data_get_irq_chip_data(irqd); in smp2p_set_irq_type() 333 irq_hw_number_t irq = irqd_to_hwirq(irqd); in smp2p_set_irq_type()
|
/linux/drivers/irqchip/ |
A D | irq-keystone.c | 39 struct irq_domain *irqd; member 108 err = generic_handle_domain_irq(kirq->irqd, src); in keystone_irq_handler() 175 kirq->irqd = irq_domain_add_linear(np, KEYSTONE_N_IRQ, in keystone_irq_probe() 177 if (!kirq->irqd) { in keystone_irq_probe() 189 irq_domain_remove(kirq->irqd); in keystone_irq_probe() 209 irq_dispose_mapping(irq_find_mapping(kirq->irqd, hwirq)); in keystone_irq_remove() 211 irq_domain_remove(kirq->irqd); in keystone_irq_remove()
|
A D | irq-sun4i.c | 49 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()
|
A D | irq-zevio.c | 39 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/drivers/mailbox/ |
A D | qcom-ipcc.c | 91 static void qcom_ipcc_mask_irq(struct irq_data *irqd) in qcom_ipcc_mask_irq() argument 93 struct qcom_ipcc *ipcc = irq_data_get_irq_chip_data(irqd); in qcom_ipcc_mask_irq() 94 irq_hw_number_t hwirq = irqd_to_hwirq(irqd); in qcom_ipcc_mask_irq() 99 static void qcom_ipcc_unmask_irq(struct irq_data *irqd) in qcom_ipcc_unmask_irq() argument 101 struct qcom_ipcc *ipcc = irq_data_get_irq_chip_data(irqd); in qcom_ipcc_unmask_irq() 102 irq_hw_number_t hwirq = irqd_to_hwirq(irqd); in qcom_ipcc_unmask_irq()
|
/linux/drivers/gpu/drm/msm/disp/dpu1/ |
A D | dpu_mdss.c | 64 static void dpu_mdss_irq_mask(struct irq_data *irqd) in dpu_mdss_irq_mask() argument 66 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_mask() 70 clear_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_mask() 75 static void dpu_mdss_irq_unmask(struct irq_data *irqd) in dpu_mdss_irq_unmask() argument 77 struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); in dpu_mdss_irq_unmask() 81 set_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); in dpu_mdss_irq_unmask()
|
/linux/drivers/gpu/drm/msm/disp/mdp5/ |
A D | mdp5_mdss.c | 71 static void mdss_hw_mask_irq(struct irq_data *irqd) in mdss_hw_mask_irq() argument 73 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_mask_irq() 76 clear_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_mask_irq() 80 static void mdss_hw_unmask_irq(struct irq_data *irqd) in mdss_hw_unmask_irq() argument 82 struct mdp5_mdss *mdp5_mdss = irq_data_get_irq_chip_data(irqd); in mdss_hw_unmask_irq() 85 set_bit(irqd->hwirq, &mdp5_mdss->irqcontroller.enabled_mask); in mdss_hw_unmask_irq()
|
/linux/arch/mips/sgi-ip27/ |
A D | ip27-irq.c | 160 struct irq_data *irqd; in hub_domain_free() local 165 irqd = irq_domain_get_irq_data(domain, virq); in hub_domain_free() 166 if (irqd && irqd->chip_data) in hub_domain_free() 167 kfree(irqd->chip_data); in hub_domain_free()
|
/linux/drivers/iio/dummy/ |
A D | iio_dummy_evgen.c | 106 struct irq_data *irqd = irq_get_irq_data(irq); in iio_dummy_evgen_release_irq() local 109 iio_evgen->inuse[irqd_to_hwirq(irqd)] = false; in iio_dummy_evgen_release_irq() 117 struct irq_data *irqd = irq_get_irq_data(irq); in iio_dummy_evgen_get_regs() local 119 return &iio_evgen->regs[irqd_to_hwirq(irqd)]; in iio_dummy_evgen_get_regs()
|
/linux/arch/mips/sgi-ip30/ |
A D | ip30-irq.c | 230 struct irq_data *irqd; in heart_domain_free() local 235 irqd = irq_domain_get_irq_data(domain, virq); in heart_domain_free() 236 if (irqd) { in heart_domain_free() 237 clear_bit(irqd->hwirq, heart_irq_map); in heart_domain_free() 238 kfree(irqd->chip_data); in heart_domain_free()
|
/linux/arch/mips/pci/ |
A D | pci-xtalk-bridge.c | 364 struct irq_data *irqd = irq_domain_get_irq_data(domain, virq); in bridge_domain_free() local 369 kfree(irqd->chip_data); in bridge_domain_free() 374 struct irq_data *irqd, bool reserve) in bridge_domain_activate() argument 376 struct bridge_irq_chip_data *data = irqd->chip_data; in bridge_domain_activate() 378 int bit = irqd->parent_data->hwirq; in bridge_domain_activate() 379 int pin = irqd->hwirq; in bridge_domain_activate() 411 struct irq_data *irqd) in bridge_domain_deactivate() argument 413 struct bridge_irq_chip_data *data = irqd->chip_data; in bridge_domain_deactivate() 415 bridge_clr(data->bc, b_int_enable, (1 << irqd->hwirq)); in bridge_domain_deactivate()
|
/linux/arch/powerpc/sysdev/xics/ |
A D | xics-common.c | 202 struct irq_data *irqd; in xics_migrate_irqs_away() local 211 irqd = irq_domain_get_irq_data(xics_host, virq); in xics_migrate_irqs_away() 212 if (!irqd) in xics_migrate_irqs_away() 214 irq = irqd_to_hwirq(irqd); in xics_migrate_irqs_away()
|
/linux/drivers/pinctrl/ |
A D | pinctrl-ingenic.c | 3333 int irq = irqd->hwirq; in ingenic_gpio_irq_mask() 3345 int irq = irqd->hwirq; in ingenic_gpio_irq_unmask() 3357 int irq = irqd->hwirq; in ingenic_gpio_irq_enable() 3366 ingenic_gpio_irq_unmask(irqd); in ingenic_gpio_irq_enable() 3373 int irq = irqd->hwirq; in ingenic_gpio_irq_disable() 3375 ingenic_gpio_irq_mask(irqd); in ingenic_gpio_irq_disable() 3389 int irq = irqd->hwirq; in ingenic_gpio_irq_ack() 3422 irq_set_handler_locked(irqd, handle_edge_irq); in ingenic_gpio_irq_set_type() 3426 irq_set_handler_locked(irqd, handle_level_irq); in ingenic_gpio_irq_set_type() 3429 irq_set_handler_locked(irqd, handle_bad_irq); in ingenic_gpio_irq_set_type() [all …]
|