Home
last modified time | relevance | path

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

12345678910>>...24

/Linux-v6.1/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->mask_base = base + GPIO_REG_IE; in sl28cpld_gpio_irq_init()
74 irq_chip->mask_invert = true; in sl28cpld_gpio_irq_init()
[all …]
Dgpio-visconti.c34 struct irq_chip irq_chip; member
126 struct irq_chip *irq_chip; in visconti_gpio_probe() local
167 irq_chip = &priv->irq_chip; in visconti_gpio_probe()
168 irq_chip->name = dev_name(dev); in visconti_gpio_probe()
169 irq_chip->irq_mask = irq_chip_mask_parent; in visconti_gpio_probe()
170 irq_chip->irq_unmask = irq_chip_unmask_parent; in visconti_gpio_probe()
171 irq_chip->irq_eoi = irq_chip_eoi_parent; in visconti_gpio_probe()
172 irq_chip->irq_set_type = visconti_gpio_irq_set_type; in visconti_gpio_probe()
173 irq_chip->flags = IRQCHIP_SET_TYPE_MASKED | IRQCHIP_MASK_ON_SUSPEND; in visconti_gpio_probe()
176 girq->chip = irq_chip; in visconti_gpio_probe()
Dgpio-tqmx86.c37 struct irq_chip irq_chip; member
184 struct irq_chip *irq_chip = irq_desc_get_chip(desc); in tqmx86_gpio_irq_handler() local
189 chained_irq_enter(irq_chip, desc); in tqmx86_gpio_irq_handler()
199 chained_irq_exit(irq_chip, desc); in tqmx86_gpio_irq_handler()
280 struct irq_chip *irq_chip = &gpio->irq_chip; in tqmx86_gpio_probe() local
283 irq_chip->name = chip->label; in tqmx86_gpio_probe()
284 irq_chip->irq_mask = tqmx86_gpio_irq_mask; in tqmx86_gpio_probe()
285 irq_chip->irq_unmask = tqmx86_gpio_irq_unmask; in tqmx86_gpio_probe()
286 irq_chip->irq_set_type = tqmx86_gpio_irq_set_type; in tqmx86_gpio_probe()
296 girq->chip = irq_chip; in tqmx86_gpio_probe()
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-rda.c41 struct irq_chip irq_chip; member
181 struct irq_chip *ic = irq_desc_get_chip(desc); in rda_gpio_irq_handler()
244 rda_gpio->irq_chip.name = "rda-gpio", in rda_gpio_probe()
245 rda_gpio->irq_chip.irq_ack = rda_gpio_irq_ack, in rda_gpio_probe()
246 rda_gpio->irq_chip.irq_mask = rda_gpio_irq_mask, in rda_gpio_probe()
247 rda_gpio->irq_chip.irq_unmask = rda_gpio_irq_unmask, in rda_gpio_probe()
248 rda_gpio->irq_chip.irq_set_type = rda_gpio_irq_set_type, in rda_gpio_probe()
249 rda_gpio->irq_chip.flags = IRQCHIP_SKIP_SET_WAKE, in rda_gpio_probe()
252 girq->chip = &rda_gpio->irq_chip; in rda_gpio_probe()
Dgpio-hisi.c40 struct irq_chip irq_chip; member
184 struct irq_chip *irq_c = irq_desc_get_chip(desc); in hisi_gpio_irq_handler()
200 hisi_gpio->irq_chip.irq_ack = hisi_gpio_set_ack; in hisi_gpio_init_irq()
201 hisi_gpio->irq_chip.irq_mask = hisi_gpio_irq_set_mask; in hisi_gpio_init_irq()
202 hisi_gpio->irq_chip.irq_unmask = hisi_gpio_irq_clr_mask; in hisi_gpio_init_irq()
203 hisi_gpio->irq_chip.irq_set_type = hisi_gpio_irq_set_type; in hisi_gpio_init_irq()
204 hisi_gpio->irq_chip.irq_enable = hisi_gpio_irq_enable; in hisi_gpio_init_irq()
205 hisi_gpio->irq_chip.irq_disable = hisi_gpio_irq_disable; in hisi_gpio_init_irq()
207 girq_chip->chip = &hisi_gpio->irq_chip; in hisi_gpio_init_irq()
Dgpio-altera.c34 struct irq_chip irq_chip; member
187 struct irq_chip *chip; in altera_gpio_irq_edge_handler()
214 struct irq_chip *chip; in altera_gpio_irq_leveL_high_handler()
281 altera_gc->irq_chip.name = "altera-gpio"; in altera_gpio_probe()
282 altera_gc->irq_chip.irq_mask = altera_gpio_irq_mask; in altera_gpio_probe()
283 altera_gc->irq_chip.irq_unmask = altera_gpio_irq_unmask; in altera_gpio_probe()
284 altera_gc->irq_chip.irq_set_type = altera_gpio_irq_set_type; in altera_gpio_probe()
285 altera_gc->irq_chip.irq_startup = altera_gpio_irq_startup; in altera_gpio_probe()
286 altera_gc->irq_chip.irq_shutdown = altera_gpio_irq_mask; in altera_gpio_probe()
289 girq->chip = &altera_gc->irq_chip; in altera_gpio_probe()
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()
Dgpio-davinci.c45 typedef struct irq_chip *(*gpio_get_irq_chip_cb_t)(unsigned int irq);
326 static struct irq_chip gpio_irqchip = {
455 static struct irq_chip *davinci_gpio_get_irq_chip(unsigned int irq) in davinci_gpio_get_irq_chip()
464 static struct irq_chip *keystone_gpio_get_irq_chip(unsigned int irq) in keystone_gpio_get_irq_chip()
466 static struct irq_chip gpio_unbanked; in keystone_gpio_get_irq_chip()
496 struct irq_chip *irq_chip; in davinci_gpio_irq_setup() local
561 irq_chip = gpio_get_irq_chip(irq); in davinci_gpio_irq_setup()
562 irq_chip->name = "GPIO-AINTC"; in davinci_gpio_irq_setup()
563 irq_chip->irq_set_type = gpio_irq_type_unbanked; in davinci_gpio_irq_setup()
572 irq_set_chip(chips->irqs[gpio], irq_chip); in davinci_gpio_irq_setup()
Dgpio-mlxbf2.c68 struct irq_chip irq_chip; member
379 gs->irq_chip.name = name; in mlxbf2_gpio_probe()
380 gs->irq_chip.irq_set_type = mlxbf2_gpio_irq_set_type; in mlxbf2_gpio_probe()
381 gs->irq_chip.irq_enable = mlxbf2_gpio_irq_enable; in mlxbf2_gpio_probe()
382 gs->irq_chip.irq_disable = mlxbf2_gpio_irq_disable; in mlxbf2_gpio_probe()
385 girq->chip = &gs->irq_chip; in mlxbf2_gpio_probe()
/Linux-v6.1/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-v6.1/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.c66 struct irq_chip irq_chip; member
340 irq_set_chip_and_handler(virq, &p->irq_chip, handle_level_irq); in intc_irqpin_irq_domain_map()
378 struct irq_chip *irq_chip; in intc_irqpin_probe() local
509 irq_chip = &p->irq_chip; in intc_irqpin_probe()
510 irq_chip->name = "intc-irqpin"; in intc_irqpin_probe()
511 irq_chip->irq_mask = disable_fn; in intc_irqpin_probe()
512 irq_chip->irq_unmask = enable_fn; in intc_irqpin_probe()
513 irq_chip->irq_set_type = intc_irqpin_irq_set_type; in intc_irqpin_probe()
514 irq_chip->irq_set_wake = intc_irqpin_irq_set_wake; in intc_irqpin_probe()
515 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.c29 struct irq_chip *irq_chip = d->host_data; in xtensa_mx_irq_map() local
30 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_mx_irq_map()
143 static struct irq_chip xtensa_mx_irq_chip = {
/Linux-v6.1/arch/xtensa/kernel/
Dirq.c88 struct irq_chip *irq_chip = d->host_data; in xtensa_irq_map() local
92 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
96 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
100 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
104 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
109 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
115 irq_set_chip_and_handler_name(irq, irq_chip, in xtensa_irq_map()
/Linux-v6.1/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-v6.1/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.mask_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()
188 ddata->irq_chip.mask_invert = true; in sprd_pmic_probe()
196 ddata->irq_chip.irqs = ddata->irqs; in sprd_pmic_probe()
202 &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()
/Linux-v6.1/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-v6.1/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-v6.1/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-v6.1/kernel/irq/
Dipi.c188 static int ipi_send_verify(struct irq_chip *chip, struct irq_data *data, in ipi_send_verify()
226 struct irq_chip *chip = irq_data_get_irq_chip(data); in __ipi_send_single()
268 struct irq_chip *chip = irq_data_get_irq_chip(data); in __ipi_send_mask()
313 struct irq_chip *chip = data ? irq_data_get_irq_chip(data) : NULL; in ipi_send_single()
334 struct irq_chip *chip = data ? irq_data_get_irq_chip(data) : NULL; in ipi_send_mask()

12345678910>>...24