Home
last modified time | relevance | path

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

12345678910>>...20

/linux/drivers/gpio/
H A 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 …]
H A Dgpio-em.c29 struct irq_chip irq_chip; member
248 irq_set_chip_and_handler(irq, &p->irq_chip, handle_level_irq); in em_gio_irq_domain_map()
268 struct irq_chip *irq_chip; in em_gio_probe() local
317 irq_chip = &p->irq_chip; in em_gio_probe()
318 irq_chip->name = "gpio-em"; in em_gio_probe()
319 irq_chip->irq_mask = em_gio_irq_disable; in em_gio_probe()
320 irq_chip->irq_unmask = em_gio_irq_enable; in em_gio_probe()
321 irq_chip->irq_set_type = em_gio_irq_set_type; in em_gio_probe()
322 irq_chip->irq_request_resources = em_gio_irq_reqres; in em_gio_probe()
323 irq_chip->irq_release_resources = em_gio_irq_relres; in em_gio_probe()
[all …]
H A Dgpio-uniphier.c29 struct irq_chip irq_chip; member
287 &priv->irq_chip, priv); in uniphier_gpio_irq_domain_alloc()
346 struct irq_chip *irq_chip; in uniphier_gpio_probe() local
391 irq_chip = &priv->irq_chip; in uniphier_gpio_probe()
392 irq_chip->name = dev_name(dev); in uniphier_gpio_probe()
393 irq_chip->irq_mask = uniphier_gpio_irq_mask; in uniphier_gpio_probe()
394 irq_chip->irq_unmask = uniphier_gpio_irq_unmask; in uniphier_gpio_probe()
395 irq_chip->irq_eoi = irq_chip_eoi_parent; in uniphier_gpio_probe()
396 irq_chip->irq_set_affinity = irq_chip_set_affinity_parent; in uniphier_gpio_probe()
397 irq_chip->irq_set_type = uniphier_gpio_irq_set_type; in uniphier_gpio_probe()
H A Dgpio-rtd.c379 struct irq_chip *chip = irq_desc_get_chip(desc); in rtd_gpio_irq_handle()
515 static const struct irq_chip rtd_gpio_irq_chip = {
526 struct gpio_irq_chip *irq_chip; in rtd_gpio_probe() local
571 irq_chip = &data->gpio_chip.irq; in rtd_gpio_probe()
572 irq_chip->handler = handle_bad_irq; in rtd_gpio_probe()
573 irq_chip->default_type = IRQ_TYPE_NONE; in rtd_gpio_probe()
574 irq_chip->parent_handler = rtd_gpio_irq_handle; in rtd_gpio_probe()
575 irq_chip->parent_handler_data = data; in rtd_gpio_probe()
576 irq_chip->num_parents = 2; in rtd_gpio_probe()
577 irq_chip->parents = data->irqs; in rtd_gpio_probe()
[all …]
H A Dgpio-davinci.c41 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq);
287 static struct irq_chip gpio_irqchip = {
416 static struct irq_chip *davinci_gpio_get_irq_chip(unsigned int irq) in davinci_gpio_get_irq_chip()
425 static struct irq_chip *keystone_gpio_get_irq_chip(unsigned int irq) in keystone_gpio_get_irq_chip()
427 static struct irq_chip gpio_unbanked; in keystone_gpio_get_irq_chip()
454 struct irq_chip *irq_chip; in davinci_gpio_irq_setup() local
511 irq_chip = gpio_get_irq_chip(irq); in davinci_gpio_irq_setup()
512 irq_chip->name = "GPIO-AINTC"; in davinci_gpio_irq_setup()
513 irq_chip->irq_set_type = gpio_irq_type_unbanked; in davinci_gpio_irq_setup()
522 irq_set_chip(chips->irqs[gpio], irq_chip); in davinci_gpio_irq_setup()
/linux/drivers/irqchip/
H A 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 …]
H A 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()
H A 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()
H A Dirq-bcm2836.c57 static struct irq_chip bcm2836_arm_irqchip_timer = {
74 static struct irq_chip bcm2836_arm_irqchip_pmu = {
89 static struct irq_chip bcm2836_arm_irqchip_gpu = {
100 static struct irq_chip bcm2836_arm_irqchip_dummy = {
108 struct irq_chip *chip; in bcm2836_map()
158 struct irq_chip *chip = irq_desc_get_chip(desc); in bcm2836_arm_irqchip_handle_ipi()
197 static struct irq_chip bcm2836_arm_irqchip_ipi = {
H A 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/drivers/pinctrl/samsung/
H A Dpinctrl-exynos.c35 struct irq_chip chip;
43 struct exynos_irq_chip *irq_chip);
46 static inline struct exynos_irq_chip *to_exynos_irq_chip(struct irq_chip *chip) in to_exynos_irq_chip()
53 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_mask()
84 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_ack()
107 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_unmask()
149 struct irq_chip *chip = irq_data_get_irq_chip(irqd); in exynos_irq_set_type()
318 irq_set_chip_and_handler(virq, &b->irq_chip->chip, in exynos_eint_irq_map()
400 bank->irq_chip = devm_kmemdup(dev, &exynos_gpio_irq_chip, in exynos_eint_gpio_init()
401 sizeof(*bank->irq_chip), GFP_KERNEL); in exynos_eint_gpio_init()
[all …]
/linux/arch/xtensa/kernel/
H A 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/Documentation/translations/zh_CN/core-api/irq/
H A 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/drivers/mfd/
H A 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()
H A 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 …]
H A 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()
H A 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/arch/arm/mach-omap1/
H A 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/arch/powerpc/include/asm/
H A 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/arch/mips/sgi-ip32/
H A Dip32-irq.c136 static struct irq_chip crime_level_interrupt = {
155 static struct irq_chip crime_edge_interrupt = {
189 static struct irq_chip ip32_macepci_interrupt = {
288 static struct irq_chip ip32_maceisa_level_interrupt = {
294 static struct irq_chip ip32_maceisa_edge_interrupt = {
323 static struct irq_chip ip32_mace_interrupt = {
/linux/kernel/irq/
H A 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()
H A Dchip.c41 int irq_set_chip(unsigned int irq, const struct irq_chip *chip) in irq_set_chip()
49 desc->irq_data.chip = (struct irq_chip *)(chip ?: &no_irq_chip); in irq_set_chip()
445 struct irq_chip *chip = desc->irq_data.chip; in unmask_threaded_irq()
657 static void cond_unmask_eoi_irq(struct irq_desc *desc, struct irq_chip *chip) in cond_unmask_eoi_irq()
689 struct irq_chip *chip = desc->irq_data.chip; in handle_fasteoi_irq()
753 struct irq_chip *chip = irq_desc_get_chip(desc); in handle_fasteoi_nmi()
851 struct irq_chip *chip = irq_desc_get_chip(desc); in handle_edge_eoi_irq()
896 struct irq_chip *chip = irq_desc_get_chip(desc); in handle_percpu_irq()
926 struct irq_chip *chip = irq_desc_get_chip(desc); in handle_percpu_devid_irq()
969 struct irq_chip *chip = irq_desc_get_chip(desc); in handle_percpu_devid_fasteoi_nmi()
[all …]
/linux/arch/mips/sgi-ip22/
H A 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 = {
279 struct irq_chip *handler; in arch_init_irq()
/linux/arch/m68k/kernel/
H A Dints.c36 static struct irq_chip auto_irq_chip = {
42 static struct irq_chip user_irq_chip = {
117 void m68k_setup_irq_controller(struct irq_chip *chip, in m68k_setup_irq_controller()
/linux/drivers/soc/fsl/qe/
H A 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()

12345678910>>...20