/kernel/linux/linux-5.10/arch/x86/kernel/apic/ |
H A D | vector.c | 78 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() 131 apic_update_vector(struct irq_data *irqd, unsigned int newvec, unsigned int newcpu) apic_update_vector() argument 177 vector_assign_managed_shutdown(struct irq_data *irqd) vector_assign_managed_shutdown() argument 184 reserve_managed_vector(struct irq_data *irqd) reserve_managed_vector() argument 199 reserve_irq_vector_locked(struct irq_data *irqd) reserve_irq_vector_locked() argument 211 reserve_irq_vector(struct irq_data *irqd) reserve_irq_vector() argument 222 assign_vector_locked(struct irq_data *irqd, const struct cpumask *dest) assign_vector_locked() argument 258 assign_irq_vector(struct irq_data *irqd, const struct cpumask *dest) assign_irq_vector() argument 270 assign_irq_vector_any_locked(struct irq_data *irqd) assign_irq_vector_any_locked() argument 299 assign_irq_vector_policy(struct irq_data *irqd, struct irq_alloc_info *info) assign_irq_vector_policy() argument 313 assign_managed_vector(struct irq_data *irqd, const struct cpumask *dest) assign_managed_vector() argument 334 clear_irq_vector(struct irq_data *irqd) clear_irq_vector() argument 364 x86_vector_deactivate(struct irq_domain *dom, struct irq_data *irqd) x86_vector_deactivate() argument 388 activate_reserved(struct irq_data *irqd) activate_reserved() argument 420 activate_managed(struct irq_data *irqd) activate_managed() argument 444 x86_vector_activate(struct irq_domain *dom, struct irq_data *irqd, bool reserve) x86_vector_activate() argument 467 vector_free_reserved_and_managed(struct irq_data *irqd) vector_free_reserved_and_managed() argument 485 struct irq_data *irqd; x86_vector_free_irqs() local 503 vector_configure_legacy(unsigned int virq, struct irq_data *irqd, struct apic_chip_data *apicd) vector_configure_legacy() argument 536 struct irq_data *irqd; x86_vector_alloc_irqs() local 601 x86_vector_debug_show(struct seq_file *m, struct irq_domain *d, struct irq_data *irqd, int ind) x86_vector_debug_show() argument 799 apic_set_affinity(struct irq_data *irqd, const struct cpumask *dest, bool force) apic_set_affinity() argument 821 apic_retrigger_irq(struct irq_data *irqd) apic_retrigger_irq() argument 833 apic_ack_irq(struct irq_data *irqd) apic_ack_irq() argument 839 apic_ack_edge(struct irq_data *irqd) apic_ack_edge() argument 961 struct irq_data *irqd; irq_force_complete_move() local [all...] |
H A D | msi.c | 53 static void irq_msi_update_msg(struct irq_data *irqd, struct irq_cfg *cfg) in irq_msi_update_msg() argument 58 irq_data_get_irq_chip(irqd)->irq_write_msi_msg(irqd, msg); in irq_msi_update_msg() 62 msi_set_affinity(struct irq_data *irqd, const struct cpumask *mask, bool force) in msi_set_affinity() argument 64 struct irq_cfg old_cfg, *cfg = irqd_cfg(irqd); in msi_set_affinity() 65 struct irq_data *parent = irqd->parent_data; in msi_set_affinity() 70 cpu = cpumask_first(irq_data_get_effective_affinity_mask(irqd)); in msi_set_affinity() 92 if (!irqd_msi_nomask_quirk(irqd) || in msi_set_affinity() 95 !irqd_is_started(irqd) || in msi_set_affinity() 97 irq_msi_update_msg(irqd, cf in msi_set_affinity() [all...] |
/kernel/linux/linux-6.6/arch/x86/kernel/apic/ |
H A D | vector.c | 89 static struct apic_chip_data *apic_chip_data(struct irq_data *irqd) in apic_chip_data() argument 91 if (!irqd) in apic_chip_data() 94 while (irqd->parent_data) in apic_chip_data() 95 irqd = irqd->parent_data; in apic_chip_data() 97 return irqd->chip_data; in apic_chip_data() 100 struct irq_cfg *irqd_cfg(struct irq_data *irqd) in irqd_cfg() argument 102 struct apic_chip_data *apicd = apic_chip_data(irqd); in irqd_cfg() 128 static void apic_update_irq_cfg(struct irq_data *irqd, unsigned int vector, in apic_update_irq_cfg() argument 131 struct apic_chip_data *apicd = apic_chip_data(irqd); in apic_update_irq_cfg() 142 apic_update_vector(struct irq_data *irqd, unsigned int newvec, unsigned int newcpu) apic_update_vector() argument 188 vector_assign_managed_shutdown(struct irq_data *irqd) vector_assign_managed_shutdown() argument 195 reserve_managed_vector(struct irq_data *irqd) reserve_managed_vector() argument 210 reserve_irq_vector_locked(struct irq_data *irqd) reserve_irq_vector_locked() argument 222 reserve_irq_vector(struct irq_data *irqd) reserve_irq_vector() argument 233 assign_vector_locked(struct irq_data *irqd, const struct cpumask *dest) assign_vector_locked() argument 269 assign_irq_vector(struct irq_data *irqd, const struct cpumask *dest) assign_irq_vector() argument 281 assign_irq_vector_any_locked(struct irq_data *irqd) assign_irq_vector_any_locked() argument 310 assign_irq_vector_policy(struct irq_data *irqd, struct irq_alloc_info *info) assign_irq_vector_policy() argument 324 assign_managed_vector(struct irq_data *irqd, const struct cpumask *dest) assign_managed_vector() argument 345 clear_irq_vector(struct irq_data *irqd) clear_irq_vector() argument 375 x86_vector_deactivate(struct irq_domain *dom, struct irq_data *irqd) x86_vector_deactivate() argument 399 activate_reserved(struct irq_data *irqd) activate_reserved() argument 431 activate_managed(struct irq_data *irqd) activate_managed() argument 455 x86_vector_activate(struct irq_domain *dom, struct irq_data *irqd, bool reserve) x86_vector_activate() argument 478 vector_free_reserved_and_managed(struct irq_data *irqd) vector_free_reserved_and_managed() argument 496 struct irq_data *irqd; x86_vector_free_irqs() local 514 vector_configure_legacy(unsigned int virq, struct irq_data *irqd, struct apic_chip_data *apicd) vector_configure_legacy() argument 547 struct irq_data *irqd; x86_vector_alloc_irqs() local 616 x86_vector_debug_show(struct seq_file *m, struct irq_domain *d, struct irq_data *irqd, int ind) x86_vector_debug_show() argument 873 apic_set_affinity(struct irq_data *irqd, const struct cpumask *dest, bool force) apic_set_affinity() argument 895 apic_retrigger_irq(struct irq_data *irqd) apic_retrigger_irq() argument 907 apic_ack_irq(struct irq_data *irqd) apic_ack_irq() argument 913 apic_ack_edge(struct irq_data *irqd) apic_ack_edge() argument 1077 struct irq_data *irqd; irq_force_complete_move() local [all...] |
H A D | msi.c | 26 static void irq_msi_update_msg(struct irq_data *irqd, struct irq_cfg *cfg) in irq_msi_update_msg() argument 31 irq_data_get_irq_chip(irqd)->irq_write_msi_msg(irqd, msg); in irq_msi_update_msg() 35 msi_set_affinity(struct irq_data *irqd, const struct cpumask *mask, bool force) in msi_set_affinity() argument 37 struct irq_cfg old_cfg, *cfg = irqd_cfg(irqd); in msi_set_affinity() 38 struct irq_data *parent = irqd->parent_data; in msi_set_affinity() 43 cpu = cpumask_first(irq_data_get_effective_affinity_mask(irqd)); in msi_set_affinity() 65 if (!irqd_can_reserve(irqd) || in msi_set_affinity() 68 !irqd_is_started(irqd) || in msi_set_affinity() 70 irq_msi_update_msg(irqd, cf in msi_set_affinity() [all...] |
/kernel/linux/linux-6.6/arch/riscv/kvm/ |
H A D | aia_aplic.c | 44 struct aplic_irq *irqd; in aplic_read_sourcecfg() local 48 irqd = &aplic->irqs[irq]; in aplic_read_sourcecfg() 50 raw_spin_lock_irqsave(&irqd->lock, flags); in aplic_read_sourcecfg() 51 ret = irqd->sourcecfg; in aplic_read_sourcecfg() 52 raw_spin_unlock_irqrestore(&irqd->lock, flags); in aplic_read_sourcecfg() 60 struct aplic_irq *irqd; in aplic_write_sourcecfg() local 64 irqd = &aplic->irqs[irq]; in aplic_write_sourcecfg() 71 raw_spin_lock_irqsave(&irqd->lock, flags); in aplic_write_sourcecfg() 72 irqd->sourcecfg = val; in aplic_write_sourcecfg() 73 raw_spin_unlock_irqrestore(&irqd in aplic_write_sourcecfg() 80 struct aplic_irq *irqd; aplic_read_target() local 96 struct aplic_irq *irqd; aplic_write_target() local 115 struct aplic_irq *irqd; aplic_read_pending() local 131 struct aplic_irq *irqd; aplic_write_pending() local 158 struct aplic_irq *irqd; aplic_read_enabled() local 174 struct aplic_irq *irqd; aplic_write_enabled() local 192 struct aplic_irq *irqd; aplic_read_input() local 222 struct aplic_irq *irqd; aplic_update_irq_range() local 255 struct aplic_irq *irqd; kvm_riscv_aia_aplic_inject() local [all...] |
/kernel/linux/linux-5.10/drivers/mfd/ |
H A D | lp8788-irq.c | 64 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 in lp8788_irq_bus_sync_unlock() 108 struct lp8788_irq_data *irqd = ptr; lp8788_irq_handler() local 134 struct lp8788_irq_data *irqd = d->host_data; lp8788_irq_map() local 151 struct lp8788_irq_data *irqd; lp8788_irq_init() local [all...] |
H A D | mt6358-irq.c | 31 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_enable() local 33 irqd->enable_hwirq[hwirq] = true; in pmic_irq_enable() 40 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_disable() local 42 irqd->enable_hwirq[hwirq] = false; in pmic_irq_disable() 56 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_sync_unlock() local 58 for (i = 0; i < irqd->num_pmic_irqs; i++) { in pmic_irq_sync_unlock() 59 if (irqd->enable_hwirq[i] == irqd->cache_hwirq[i]) in pmic_irq_sync_unlock() 64 while ((top_gp + 1) < irqd->num_top && in pmic_irq_sync_unlock() 76 irqd in pmic_irq_sync_unlock() 181 struct pmic_irq_data *irqd; mt6358_irq_init() local [all...] |
/kernel/linux/linux-6.6/drivers/mfd/ |
H A D | lp8788-irq.c | 64 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 in lp8788_irq_bus_sync_unlock() 108 struct lp8788_irq_data *irqd = ptr; lp8788_irq_handler() local 134 struct lp8788_irq_data *irqd = d->host_data; lp8788_irq_map() local 151 struct lp8788_irq_data *irqd; lp8788_irq_init() local [all...] |
H A D | mt6358-irq.c | 79 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_enable() local 81 irqd->enable_hwirq[hwirq] = true; in pmic_irq_enable() 88 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_disable() local 90 irqd->enable_hwirq[hwirq] = false; in pmic_irq_disable() 104 struct pmic_irq_data *irqd = chip->irq_data; in pmic_irq_sync_unlock() local 106 for (i = 0; i < irqd->num_pmic_irqs; i++) { in pmic_irq_sync_unlock() 107 if (irqd->enable_hwirq[i] == irqd->cache_hwirq[i]) in pmic_irq_sync_unlock() 112 while ((top_gp + 1) < irqd->num_top && in pmic_irq_sync_unlock() 113 i >= irqd in pmic_irq_sync_unlock() 146 struct pmic_irq_data *irqd = chip->irq_data; mt6358_irq_sp_handler() local 183 struct pmic_irq_data *irqd = chip->irq_data; mt6358_irq_handler() local 230 struct pmic_irq_data *irqd; mt6358_irq_init() local [all...] |
/kernel/linux/linux-5.10/drivers/pinctrl/samsung/ |
H A 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 in s3c64xx_gpio_irq_ack() 339 s3c64xx_gpio_irq_set_type(struct irq_data *irqd, unsigned int type) s3c64xx_gpio_irq_set_type() argument 510 s3c64xx_eint0_irq_set_mask(struct irq_data *irqd, bool mask) s3c64xx_eint0_irq_set_mask() argument 525 s3c64xx_eint0_irq_unmask(struct irq_data *irqd) s3c64xx_eint0_irq_unmask() argument 530 s3c64xx_eint0_irq_mask(struct irq_data *irqd) s3c64xx_eint0_irq_mask() argument 535 s3c64xx_eint0_irq_ack(struct irq_data *irqd) s3c64xx_eint0_irq_ack() argument 545 s3c64xx_eint0_irq_set_type(struct irq_data *irqd, unsigned int type) s3c64xx_eint0_irq_set_type() argument [all...] |
H 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() 56 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(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() 74 struct samsung_pin_bank *bank = irq_data_get_irq_chip_data(irqd); in exynos_irq_ack() 77 writel(1 << irqd->hwirq, bank->eint_base + reg_pend); in exynos_irq_ack() 80 static void exynos_irq_unmask(struct irq_data *irqd) in exynos_irq_unmask() argument 82 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_unmask() 109 exynos_irq_set_type(struct irq_data *irqd, unsigned int type) exynos_irq_set_type() argument 152 exynos_irq_request_resources(struct irq_data *irqd) exynos_irq_request_resources() argument 184 exynos_irq_release_resources(struct irq_data *irqd) exynos_irq_release_resources() argument 339 exynos_wkup_irq_set_wake(struct irq_data *irqd, unsigned int on) exynos_wkup_irq_set_wake() argument [all...] |
/kernel/linux/linux-6.6/drivers/pinctrl/samsung/ |
H A 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 in s3c64xx_gpio_irq_ack() 339 s3c64xx_gpio_irq_set_type(struct irq_data *irqd, unsigned int type) s3c64xx_gpio_irq_set_type() argument 508 s3c64xx_eint0_irq_set_mask(struct irq_data *irqd, bool mask) s3c64xx_eint0_irq_set_mask() argument 523 s3c64xx_eint0_irq_unmask(struct irq_data *irqd) s3c64xx_eint0_irq_unmask() argument 528 s3c64xx_eint0_irq_mask(struct irq_data *irqd) s3c64xx_eint0_irq_mask() argument 533 s3c64xx_eint0_irq_ack(struct irq_data *irqd) s3c64xx_eint0_irq_ack() argument 543 s3c64xx_eint0_irq_set_type(struct irq_data *irqd, unsigned int type) s3c64xx_eint0_irq_set_type() argument [all...] |
H A 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() 107 exynos_irq_set_type(struct irq_data *irqd, unsigned int type) exynos_irq_set_type() argument 150 exynos_irq_request_resources(struct irq_data *irqd) exynos_irq_request_resources() argument 182 exynos_irq_release_resources(struct irq_data *irqd) exynos_irq_release_resources() argument 338 exynos_wkup_irq_set_wake(struct irq_data *irqd, unsigned int on) exynos_wkup_irq_set_wake() argument [all...] |
/kernel/linux/linux-5.10/drivers/irqchip/ |
H A 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()
|
H 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()
|
H A D | irq-keystone.c | 39 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()
|
/kernel/linux/linux-5.10/kernel/irq/ |
H 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()
|
/kernel/linux/linux-6.6/kernel/irq/ |
H 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() 153 struct irq_data *irqd = &desc->irq_data; in resume_irq() local 155 irqd_clear(irqd, IRQD_WAKEUP_ARMED); in resume_irq() 157 if (irqd_is_enabled_on_suspend(irqd)) { in resume_irq() 164 irqd_clear(irqd, IRQD_IRQ_ENABLED_ON_SUSPEND); in resume_irq()
|
/kernel/linux/linux-6.6/drivers/gpio/ |
H A D | gpio-mlxbf3.c | 54 static void mlxbf3_gpio_irq_enable(struct irq_data *irqd) in mlxbf3_gpio_irq_enable() argument 56 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf3_gpio_irq_enable() 58 irq_hw_number_t offset = irqd_to_hwirq(irqd); in mlxbf3_gpio_irq_enable() 73 static void mlxbf3_gpio_irq_disable(struct irq_data *irqd) in mlxbf3_gpio_irq_disable() argument 75 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf3_gpio_irq_disable() 77 irq_hw_number_t offset = irqd_to_hwirq(irqd); in mlxbf3_gpio_irq_disable() 107 mlxbf3_gpio_irq_set_type(struct irq_data *irqd, unsigned int type) in mlxbf3_gpio_irq_set_type() argument 109 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf3_gpio_irq_set_type() 111 irq_hw_number_t offset = irqd_to_hwirq(irqd); in mlxbf3_gpio_irq_set_type() 143 irq_set_handler_locked(irqd, handle_edge_ir in mlxbf3_gpio_irq_set_type() [all...] |
H A D | gpio-ljca.c | 273 static void ljca_irq_unmask(struct irq_data *irqd) in ljca_irq_unmask() argument 275 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ljca_irq_unmask() 277 int gpio_id = irqd_to_hwirq(irqd); in ljca_irq_unmask() 283 static void ljca_irq_mask(struct irq_data *irqd) in ljca_irq_mask() argument 285 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ljca_irq_mask() 287 int gpio_id = irqd_to_hwirq(irqd); in ljca_irq_mask() 293 static int ljca_irq_set_type(struct irq_data *irqd, unsigned int type) in ljca_irq_set_type() argument 295 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in ljca_irq_set_type() 297 int gpio_id = irqd_to_hwirq(irqd); in ljca_irq_set_type() 322 static void ljca_irq_bus_lock(struct irq_data *irqd) in ljca_irq_bus_lock() argument 330 ljca_irq_bus_unlock(struct irq_data *irqd) ljca_irq_bus_unlock() argument [all...] |
H A D | gpio-dln2.c | 302 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() 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() 322 static int dln2_irq_set_type(struct irq_data *irqd, unsigned type) in dln2_irq_set_type() argument 324 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in dln2_irq_set_type() 326 int pin = irqd_to_hwirq(irqd); in dln2_irq_set_type() 351 static void dln2_irq_bus_lock(struct irq_data *irqd) in dln2_irq_bus_lock() argument 359 dln2_irq_bus_unlock(struct irq_data *irqd) dln2_irq_bus_unlock() argument [all...] |
H A D | gpio-mlxbf2.c | 233 static void mlxbf2_gpio_irq_enable(struct irq_data *irqd) in mlxbf2_gpio_irq_enable() argument 235 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_enable() 237 int offset = irqd_to_hwirq(irqd); in mlxbf2_gpio_irq_enable() 241 gpiochip_enable_irq(gc, irqd_to_hwirq(irqd)); in mlxbf2_gpio_irq_enable() 253 static void mlxbf2_gpio_irq_disable(struct irq_data *irqd) in mlxbf2_gpio_irq_disable() argument 255 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_disable() 257 int offset = irqd_to_hwirq(irqd); in mlxbf2_gpio_irq_disable() 266 gpiochip_disable_irq(gc, irqd_to_hwirq(irqd)); in mlxbf2_gpio_irq_disable() 286 mlxbf2_gpio_irq_set_type(struct irq_data *irqd, unsigned int type) in mlxbf2_gpio_irq_set_type() argument 288 struct gpio_chip *gc = irq_data_get_irq_chip_data(irqd); in mlxbf2_gpio_irq_set_type() 328 mlxbf2_gpio_irq_print_chip(struct irq_data *irqd, struct seq_file *p) mlxbf2_gpio_irq_print_chip() argument [all...] |
/kernel/linux/linux-5.10/drivers/gpio/ |
H 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() 321 static int dln2_irq_set_type(struct irq_data *irqd, unsigned type) in dln2_irq_set_type() argument 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 dln2_irq_bus_unlock(struct irq_data *irqd) dln2_irq_bus_unlock() argument [all...] |
/kernel/linux/linux-6.6/drivers/irqchip/ |
H 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()
|
/kernel/linux/linux-6.6/arch/x86/hyperv/ |
H A D | irqdomain.c | 256 static void hv_teardown_msi_irq(struct pci_dev *dev, struct irq_data *irqd) in hv_teardown_msi_irq() argument 262 if (!irqd->chip_data) { in hv_teardown_msi_irq() 267 old_entry = *(struct hv_interrupt_entry *)irqd->chip_data; in hv_teardown_msi_irq() 270 kfree(irqd->chip_data); in hv_teardown_msi_irq() 271 irqd->chip_data = NULL; in hv_teardown_msi_irq() 282 struct irq_data *irqd = irq_get_irq_data(virq); in hv_msi_free_irq() local 285 if (!irqd) in hv_msi_free_irq() 288 desc = irq_data_get_msi_desc(irqd); in hv_msi_free_irq() 292 hv_teardown_msi_irq(to_pci_dev(desc->dev), irqd); in hv_msi_free_irq()
|