Home
last modified time | relevance | path

Searched refs:irq_chip (Results 1 – 25 of 573) sorted by relevance

12345678910>>...23

/linux-6.6.21/drivers/gpio/
Dgpio-sl28cpld.c53 struct regmap_irq_chip *irq_chip; in sl28cpld_gpio_irq_init() local
64 irq_chip = devm_kzalloc(dev, sizeof(*irq_chip), GFP_KERNEL); in sl28cpld_gpio_irq_init()
65 if (!irq_chip) in sl28cpld_gpio_irq_init()
68 irq_chip->name = "sl28cpld-gpio-irq"; in sl28cpld_gpio_irq_init()
69 irq_chip->irqs = sl28cpld_gpio_irqs; in sl28cpld_gpio_irq_init()
70 irq_chip->num_irqs = ARRAY_SIZE(sl28cpld_gpio_irqs); in sl28cpld_gpio_irq_init()
71 irq_chip->num_regs = 1; in sl28cpld_gpio_irq_init()
72 irq_chip->status_base = base + GPIO_REG_IP; in sl28cpld_gpio_irq_init()
73 irq_chip->unmask_base = base + GPIO_REG_IE; in sl28cpld_gpio_irq_init()
74 irq_chip->ack_base = base + GPIO_REG_IP; in sl28cpld_gpio_irq_init()
[all …]
Dgpio-em.c29 struct irq_chip irq_chip; member
253 irq_set_chip_and_handler(irq, &p->irq_chip, handle_level_irq); in em_gio_irq_domain_map()
273 struct irq_chip *irq_chip; in em_gio_probe() local
322 irq_chip = &p->irq_chip; in em_gio_probe()
323 irq_chip->name = "gpio-em"; in em_gio_probe()
324 irq_chip->irq_mask = em_gio_irq_disable; in em_gio_probe()
325 irq_chip->irq_unmask = em_gio_irq_enable; in em_gio_probe()
326 irq_chip->irq_set_type = em_gio_irq_set_type; in em_gio_probe()
327 irq_chip->irq_request_resources = em_gio_irq_reqres; in em_gio_probe()
328 irq_chip->irq_release_resources = em_gio_irq_relres; in em_gio_probe()
[all …]
Dgpio-uniphier.c28 struct irq_chip irq_chip; member
286 &priv->irq_chip, priv); in uniphier_gpio_irq_domain_alloc()
345 struct irq_chip *irq_chip; in uniphier_gpio_probe() local
390 irq_chip = &priv->irq_chip; in uniphier_gpio_probe()
391 irq_chip->name = dev_name(dev); in uniphier_gpio_probe()
392 irq_chip->irq_mask = uniphier_gpio_irq_mask; in uniphier_gpio_probe()
393 irq_chip->irq_unmask = uniphier_gpio_irq_unmask; in uniphier_gpio_probe()
394 irq_chip->irq_eoi = irq_chip_eoi_parent; in uniphier_gpio_probe()
395 irq_chip->irq_set_affinity = irq_chip_set_affinity_parent; in uniphier_gpio_probe()
396 irq_chip->irq_set_type = uniphier_gpio_irq_set_type; in uniphier_gpio_probe()
Dgpio-davinci.c43 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq);
320 static struct irq_chip gpio_irqchip = {
449 static struct irq_chip *davinci_gpio_get_irq_chip(unsigned int irq) in davinci_gpio_get_irq_chip()
458 static struct irq_chip *keystone_gpio_get_irq_chip(unsigned int irq) in keystone_gpio_get_irq_chip()
460 static struct irq_chip gpio_unbanked; in keystone_gpio_get_irq_chip()
490 struct irq_chip *irq_chip; in davinci_gpio_irq_setup() local
555 irq_chip = gpio_get_irq_chip(irq); in davinci_gpio_irq_setup()
556 irq_chip->name = "GPIO-AINTC"; in davinci_gpio_irq_setup()
557 irq_chip->irq_set_type = gpio_irq_type_unbanked; in davinci_gpio_irq_setup()
566 irq_set_chip(chips->irqs[gpio], irq_chip); in davinci_gpio_irq_setup()
Dgpio-brcmstb.c51 struct irq_chip irq_chip; member
286 struct irq_chip *chip = irq_desc_get_chip(desc); in brcmstb_gpio_irq_handler()
340 irq_set_chip_and_handler(irq, &priv->irq_chip, handle_level_irq); in brcmstb_gpio_irq_map()
475 priv->irq_chip.name = dev_name(dev); in brcmstb_gpio_irq_setup()
476 priv->irq_chip.irq_disable = brcmstb_gpio_irq_mask; in brcmstb_gpio_irq_setup()
477 priv->irq_chip.irq_mask = brcmstb_gpio_irq_mask; in brcmstb_gpio_irq_setup()
478 priv->irq_chip.irq_unmask = brcmstb_gpio_irq_unmask; in brcmstb_gpio_irq_setup()
479 priv->irq_chip.irq_ack = brcmstb_gpio_irq_ack; in brcmstb_gpio_irq_setup()
480 priv->irq_chip.irq_set_type = brcmstb_gpio_irq_set_type; in brcmstb_gpio_irq_setup()
483 priv->irq_chip.irq_set_wake = brcmstb_gpio_irq_set_wake; in brcmstb_gpio_irq_setup()
/linux-6.6.21/drivers/pinctrl/samsung/
Dpinctrl-exynos.c34 struct irq_chip chip;
42 struct exynos_irq_chip *irq_chip);
45 static inline struct exynos_irq_chip *to_exynos_irq_chip(struct irq_chip *chip) in to_exynos_irq_chip()
52 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_mask()
70 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_ack()
80 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_unmask()
109 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_set_type()
230 irq_set_chip_and_handler(virq, &b->irq_chip->chip, in exynos_eint_irq_map()
300 bank->irq_chip = devm_kmemdup(dev, &exynos_gpio_irq_chip, in exynos_eint_gpio_init()
301 sizeof(*bank->irq_chip), GFP_KERNEL); in exynos_eint_gpio_init()
[all …]
/linux-6.6.21/drivers/irqchip/
Dspear-shirq.c49 struct irq_chip *irq_chip; member
82 static struct irq_chip shirq_chip = {
92 .irq_chip = &shirq_chip,
108 .irq_chip = &dummy_irq_chip,
116 .irq_chip = &dummy_irq_chip,
124 .irq_chip = &dummy_irq_chip,
132 .irq_chip = &dummy_irq_chip,
152 .irq_chip = &dummy_irq_chip,
160 .irq_chip = &dummy_irq_chip,
168 .irq_chip = &dummy_irq_chip,
[all …]
Dirq-partition-percpu.c34 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_mask()
45 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_unmask()
58 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_set_irqchip_state()
73 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_get_irqchip_state()
86 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_set_type()
98 struct irq_chip *chip = irq_desc_get_chip(part->chained_desc); in partition_irq_print_chip()
104 static struct irq_chip partition_irq_chip = {
116 struct irq_chip *chip = irq_desc_get_chip(desc); in partition_handle_irq()
Dirq-renesas-intc-irqpin.c65 struct irq_chip irq_chip; member
339 irq_set_chip_and_handler(virq, &p->irq_chip, handle_level_irq); in intc_irqpin_irq_domain_map()
377 struct irq_chip *irq_chip; in intc_irqpin_probe() local
508 irq_chip = &p->irq_chip; in intc_irqpin_probe()
509 irq_chip->name = "intc-irqpin"; in intc_irqpin_probe()
510 irq_chip->irq_mask = disable_fn; in intc_irqpin_probe()
511 irq_chip->irq_unmask = enable_fn; in intc_irqpin_probe()
512 irq_chip->irq_set_type = intc_irqpin_irq_set_type; in intc_irqpin_probe()
513 irq_chip->irq_set_wake = intc_irqpin_irq_set_wake; in intc_irqpin_probe()
514 irq_chip->flags = IRQCHIP_MASK_ON_SUSPEND; in intc_irqpin_probe()
Dirq-bcm2836.c57 static struct irq_chip bcm2836_arm_irqchip_timer = {
73 static struct irq_chip bcm2836_arm_irqchip_pmu = {
87 static struct irq_chip bcm2836_arm_irqchip_gpu = {
97 static struct irq_chip bcm2836_arm_irqchip_dummy = {
105 struct irq_chip *chip; in bcm2836_map()
155 struct irq_chip *chip = irq_desc_get_chip(desc); in bcm2836_arm_irqchip_handle_ipi()
194 static struct irq_chip bcm2836_arm_irqchip_ipi = {
Dirq-xtensa-mx.c30 struct irq_chip *irq_chip = d->host_data; in xtensa_mx_irq_map() local
31 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_mx_irq_map()
144 static struct irq_chip xtensa_mx_irq_chip = {
/linux-6.6.21/arch/xtensa/kernel/
Dirq.c89 struct irq_chip *irq_chip = d->host_data; in xtensa_irq_map() local
93 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
97 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
101 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
105 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
110 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
116 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
/linux-6.6.21/Documentation/translations/zh_CN/core-api/irq/
Dirq-domain.rst73 如在irq_chip回调中),那么可以直接从irq_data->hwirq中获得。
224 栈式(层次结构)的irq_chip。也就是说,一个irq_chip与层次结构中的每个irq_data相关联。
225 一个子irq_chip可以自己或通过与它的父irq_chip合作来实现一个所需的操作。
227 通过堆栈式的irq_chip,中断控制器驱动只需要处理自己管理的硬件,在需要的时候可以向其父
228 irq_chip请求服务。所以我们可以实现更简洁的软件架构。
234 3) 可选择地实现一个irq_chip来管理中断控制器硬件。
/linux-6.6.21/drivers/mfd/
Dsprd-sc27xx-spi.c41 struct regmap_irq_chip irq_chip; member
181 ddata->irq_chip.name = dev_name(&spi->dev); in sprd_pmic_probe()
182 ddata->irq_chip.status_base = in sprd_pmic_probe()
184 ddata->irq_chip.unmask_base = pdata->irq_base + SPRD_PMIC_INT_EN; in sprd_pmic_probe()
185 ddata->irq_chip.ack_base = 0; in sprd_pmic_probe()
186 ddata->irq_chip.num_regs = 1; in sprd_pmic_probe()
187 ddata->irq_chip.num_irqs = pdata->num_irqs; in sprd_pmic_probe()
195 ddata->irq_chip.irqs = ddata->irqs; in sprd_pmic_probe()
201 &ddata->irq_chip, &ddata->irq_data); in sprd_pmic_probe()
Dmc13xxx-core.c447 mc13xxx->irq_chip.name = dev_name(dev); in mc13xxx_common_init()
448 mc13xxx->irq_chip.status_base = MC13XXX_IRQSTAT0; in mc13xxx_common_init()
449 mc13xxx->irq_chip.mask_base = MC13XXX_IRQMASK0; in mc13xxx_common_init()
450 mc13xxx->irq_chip.ack_base = MC13XXX_IRQSTAT0; in mc13xxx_common_init()
451 mc13xxx->irq_chip.irq_reg_stride = MC13XXX_IRQSTAT1 - MC13XXX_IRQSTAT0; in mc13xxx_common_init()
452 mc13xxx->irq_chip.init_ack_masked = true; in mc13xxx_common_init()
453 mc13xxx->irq_chip.use_ack = true; in mc13xxx_common_init()
454 mc13xxx->irq_chip.num_regs = MC13XXX_IRQ_REG_CNT; in mc13xxx_common_init()
455 mc13xxx->irq_chip.irqs = mc13xxx->irqs; in mc13xxx_common_init()
456 mc13xxx->irq_chip.num_irqs = ARRAY_SIZE(mc13xxx->irqs); in mc13xxx_common_init()
[all …]
Dtwl6030-irq.c112 struct irq_chip irq_chip; member
339 irq_set_chip_and_handler(virq, &pdata->irq_chip, handle_simple_irq); in twl6030_irq_map()
405 twl6030_irq->irq_chip = dummy_irq_chip; in twl6030_init_irq()
406 twl6030_irq->irq_chip.name = "twl6030"; in twl6030_init_irq()
407 twl6030_irq->irq_chip.irq_set_type = NULL; in twl6030_init_irq()
408 twl6030_irq->irq_chip.irq_set_wake = twl6030_irq_set_wake; in twl6030_init_irq()
Dda9063-irq.c173 const struct regmap_irq_chip *irq_chip; in da9063_irq_init() local
182 irq_chip = &da9063_irq_chip; in da9063_irq_init()
184 irq_chip = &da9063l_irq_chip; in da9063_irq_init()
189 da9063->irq_base, irq_chip, &da9063->regmap_irq); in da9063_irq_init()
/linux-6.6.21/arch/arm/mach-omap1/
Dams-delta-fiq.c44 static struct irq_chip *irq_chip; variable
75 if (!WARN_ON_ONCE(!irq_chip->irq_unmask)) in deferred_fiq()
76 irq_chip->irq_unmask(d); in deferred_fiq()
95 irq_chip = chip->irq.chip; in ams_delta_init_fiq()
96 if (!irq_chip) { in ams_delta_init_fiq()
/linux-6.6.21/arch/powerpc/include/asm/
Dmpic.h265 struct irq_chip hc_irq;
267 struct irq_chip hc_ht_irq;
270 struct irq_chip hc_ipi;
272 struct irq_chip hc_tm;
273 struct irq_chip hc_err;
/linux-6.6.21/arch/mips/sgi-ip32/
Dip32-irq.c138 static struct irq_chip crime_level_interrupt = {
157 static struct irq_chip crime_edge_interrupt = {
191 static struct irq_chip ip32_macepci_interrupt = {
290 static struct irq_chip ip32_maceisa_level_interrupt = {
296 static struct irq_chip ip32_maceisa_edge_interrupt = {
325 static struct irq_chip ip32_mace_interrupt = {
/linux-6.6.21/kernel/irq/
Dipi.c188 static int ipi_send_verify(struct irq_chip *chip, struct irq_data *data, in ipi_send_verify()
230 struct irq_chip *chip = irq_data_get_irq_chip(data); in __ipi_send_single()
272 struct irq_chip *chip = irq_data_get_irq_chip(data); in __ipi_send_mask()
317 struct irq_chip *chip = data ? irq_data_get_irq_chip(data) : NULL; in ipi_send_single()
338 struct irq_chip *chip = data ? irq_data_get_irq_chip(data) : NULL; in ipi_send_mask()
/linux-6.6.21/arch/mips/sgi-ip22/
Dip22-int.c48 static struct irq_chip ip22_local0_irq_type = {
67 static struct irq_chip ip22_local1_irq_type = {
86 static struct irq_chip ip22_local2_irq_type = {
105 static struct irq_chip ip22_local3_irq_type = {
281 struct irq_chip *handler; in arch_init_irq()
/linux-6.6.21/arch/m68k/kernel/
Dints.c34 static struct irq_chip auto_irq_chip = {
40 static struct irq_chip user_irq_chip = {
115 void m68k_setup_irq_controller(struct irq_chip *chip, in m68k_setup_irq_controller()
/linux-6.6.21/drivers/soc/fsl/qe/
Dqe_ic.c54 struct irq_chip hc_irq;
287 static struct irq_chip qe_ic_irq_chip = {
306 struct irq_chip *chip; in qe_ic_host_map()
370 struct irq_chip *chip = irq_desc_get_chip(desc); in qe_ic_cascade_low()
383 struct irq_chip *chip = irq_desc_get_chip(desc); in qe_ic_cascade_high()
396 struct irq_chip *chip = irq_desc_get_chip(desc); in qe_ic_cascade_muxed_mpic()
/linux-6.6.21/include/linux/irqchip/
Dchained_irq.h16 static inline void chained_irq_enter(struct irq_chip *chip, in chained_irq_enter()
32 static inline void chained_irq_exit(struct irq_chip *chip, in chained_irq_exit()

12345678910>>...23