Home
last modified time | relevance | path

Searched refs:parent_irq (Results 1 – 25 of 36) sorted by relevance

12

/linux/drivers/irqchip/
H A Dirq-versatile-fpga.c160 static void __init fpga_irq_init(void __iomem *base, int parent_irq, in fpga_irq_init() argument
174 if (parent_irq != -1) { in fpga_irq_init()
175 irq_set_chained_handler_and_data(parent_irq, fpga_irq_handle, in fpga_irq_init()
192 if (parent_irq != -1) in fpga_irq_init()
193 pr_cont(", parent IRQ: %d\n", parent_irq); in fpga_irq_init()
207 int parent_irq; in fpga_irq_of_init() local
225 parent_irq = irq_of_parse_and_map(node, 0); in fpga_irq_of_init()
226 if (!parent_irq) { in fpga_irq_of_init()
228 parent_irq = -1; in fpga_irq_of_init()
231 fpga_irq_init(base, parent_irq, valid_mas in fpga_irq_of_init()
[all...]
H A Dirq-al-fic.c40 unsigned int parent_irq; member
165 irq_set_chained_handler_and_data(fic->parent_irq, in al_fic_register()
191 unsigned int parent_irq) in al_fic_wire_init() argument
202 fic->parent_irq = parent_irq; in al_fic_wire_init()
220 fic->name, parent_irq); in al_fic_wire_init()
234 unsigned int parent_irq; in al_fic_init_dt() local
249 parent_irq = irq_of_parse_and_map(node, 0); in al_fic_init_dt()
250 if (!parent_irq) { in al_fic_init_dt()
259 parent_irq); in al_fic_init_dt()
271 irq_dispose_mapping(parent_irq); in al_fic_init_dt()
H A Dirq-realtek-rtl.c131 int parent_irq; in realtek_rtl_of_init() local
153 parent_irq = irq_create_of_mapping(&oirq); in realtek_rtl_of_init()
157 parent_irq = of_irq_get(node, 0); in realtek_rtl_of_init()
160 if (parent_irq < 0) in realtek_rtl_of_init()
161 return parent_irq; in realtek_rtl_of_init()
162 else if (!parent_irq) in realtek_rtl_of_init()
169 irq_set_chained_handler_and_data(parent_irq, realtek_irq_dispatch, domain); in realtek_rtl_of_init()
H A Dirq-aspeed-i2c-ic.c23 int parent_irq; member
79 i2c_ic->parent_irq = irq_of_parse_and_map(node, 0); in aspeed_i2c_ic_of_init()
80 if (!i2c_ic->parent_irq) { in aspeed_i2c_ic_of_init()
95 irq_set_chained_handler_and_data(i2c_ic->parent_irq, in aspeed_i2c_ic_of_init()
98 pr_info("i2c controller registered, irq %d\n", i2c_ic->parent_irq); in aspeed_i2c_ic_of_init()
H A Dirq-mvebu-pic.c31 u32 parent_irq; member
123 enable_percpu_irq(pic->parent_irq, IRQ_TYPE_NONE); in mvebu_pic_enable_percpu_irq()
130 disable_percpu_irq(pic->parent_irq); in mvebu_pic_disable_percpu_irq()
147 pic->parent_irq = irq_of_parse_and_map(node, 0); in mvebu_pic_probe()
148 if (pic->parent_irq <= 0) { in mvebu_pic_probe()
160 irq_set_chained_handler(pic->parent_irq, mvebu_pic_handle_cascade_irq); in mvebu_pic_probe()
161 irq_set_handler_data(pic->parent_irq, pic); in mvebu_pic_probe()
H A Dirq-ingenic.c67 int parent_irq, err = 0; in ingenic_intc_of_init() local
76 parent_irq = irq_of_parse_and_map(node, 0); in ingenic_intc_of_init()
77 if (!parent_irq) { in ingenic_intc_of_init()
82 err = irq_set_handler_data(parent_irq, intc); in ingenic_intc_of_init()
127 if (request_irq(parent_irq, intc_cascade, IRQF_NO_SUSPEND, in ingenic_intc_of_init()
137 irq_dispose_mapping(parent_irq); in ingenic_intc_of_init()
H A Dirq-loongson-htvec.c186 int num_parents, int parent_irq[], struct fwnode_handle *domain_handle) in htvec_init() argument
211 irq_set_chained_handler_and_data(parent_irq[i], in htvec_init()
234 int parent_irq[8]; in htvec_of_init() local
243 parent_irq[i] = irq_of_parse_and_map(node, i); in htvec_of_init()
244 if (parent_irq[i] <= 0) in htvec_of_init()
251 num_parents, parent_irq, of_fwnode_handle(node)); in htvec_of_init()
298 int num_parents, parent_irq[8]; in htvec_acpi_init() local
314 parent_irq[i] = irq_create_mapping(parent, acpi_htvec->cascade[i]); in htvec_acpi_init()
317 num_parents, parent_irq, domain_handle); in htvec_acpi_init()
H A Dirq-idt3243x.c52 unsigned int parent_irq; in idt_pic_init() local
61 parent_irq = irq_of_parse_and_map(of_node, 0); in idt_pic_init()
62 if (!parent_irq) { in idt_pic_init()
104 irq_set_chained_handler_and_data(parent_irq, in idt_pic_init()
114 irq_dispose_mapping(parent_irq); in idt_pic_init()
H A Dirq-goldfish-pic.c61 unsigned int parent_irq; in goldfish_pic_of_init() local
70 parent_irq = irq_of_parse_and_map(of_node, 0); in goldfish_pic_of_init()
71 if (!parent_irq) { in goldfish_pic_of_init()
113 irq_set_chained_handler_and_data(parent_irq, in goldfish_pic_of_init()
125 irq_dispose_mapping(parent_irq); in goldfish_pic_of_init()
H A Dirq-starfive-jh8100-intc.c123 int parent_irq; in starfive_intc_init() local
169 parent_irq = of_irq_get(intc, 0); in starfive_intc_init()
170 if (parent_irq < 0) { in starfive_intc_init()
171 pr_err("Failed to get main IRQ: %d\n", parent_irq); in starfive_intc_init()
172 ret = parent_irq; in starfive_intc_init()
176 irq_set_chained_handler_and_data(parent_irq, starfive_intc_irq_handler, in starfive_intc_init()
H A Dirq-loongson-htpic.c85 unsigned int parent_irq[4]; in htpic_of_init() local
113 parent_irq[i] = irq_of_parse_and_map(node, i); in htpic_of_init()
114 if (parent_irq[i] <= 0) in htpic_of_init()
129 irq_set_chained_handler_and_data(parent_irq[i], in htpic_of_init()
H A Dirq-dw-apb-ictl.c121 int ret, nrirqs, parent_irq, i; in dw_apb_ictl_init() local
126 parent_irq = 0; in dw_apb_ictl_init()
130 parent_irq = irq_of_parse_and_map(np, 0); in dw_apb_ictl_init()
131 if (parent_irq <= 0) { in dw_apb_ictl_init()
200 if (parent_irq) { in dw_apb_ictl_init()
201 irq_set_chained_handler_and_data(parent_irq, in dw_apb_ictl_init()
H A Dirq-loongson-eiointc.c427 static int __init eiointc_init(struct eiointc_priv *priv, int parent_irq, in eiointc_init() argument
466 irq_set_chained_handler_and_data(parent_irq, eiointc_irq_dispatch, priv); in eiointc_init()
481 int parent_irq, ret; in eiointc_acpi_init() local
499 parent_irq = irq_create_mapping(parent, acpi_eiointc->cascade); in eiointc_acpi_init()
501 ret = eiointc_init(priv, parent_irq, acpi_eiointc->node_map); in eiointc_acpi_init()
530 int parent_irq, ret; in eiointc_of_init() local
537 parent_irq = irq_of_parse_and_map(of_node, 0); in eiointc_of_init()
538 if (parent_irq <= 0) { in eiointc_of_init()
543 ret = irq_set_handler_data(parent_irq, priv); in eiointc_of_init()
559 ret = eiointc_init(priv, parent_irq, in eiointc_of_init()
[all...]
H A Dirq-ts4800.c109 int parent_irq; in ts4800_ic_probe() local
122 parent_irq = irq_of_parse_and_map(node, 0); in ts4800_ic_probe()
123 if (!parent_irq) { in ts4800_ic_probe()
134 irq_set_chained_handler_and_data(parent_irq, in ts4800_ic_probe()
H A Dspear-shirq.c204 int parent_irq) in spear_shirq_register() argument
211 irq_set_chained_handler_and_data(parent_irq, shirq_handler, shirq); in spear_shirq_register()
223 int i, parent_irq, virq_base, hwirq = 0, nr_irqs = 0; in shirq_init() local
254 parent_irq = irq_of_parse_and_map(np, i); in shirq_init()
255 spear_shirq_register(shirq_blocks[i], parent_irq); in shirq_init()
H A Dirq-bcm6345-l1.c86 unsigned int parent_irq; member
259 cpu->parent_irq = irq_of_parse_and_map(dn, idx); in bcm6345_l1_init_one()
260 if (!cpu->parent_irq) { in bcm6345_l1_init_one()
261 pr_err("failed to map parent interrupt %d\n", cpu->parent_irq); in bcm6345_l1_init_one()
264 irq_set_chained_handler_and_data(cpu->parent_irq, in bcm6345_l1_init_one()
332 pr_info(" CPU%u (irq = %d)\n", idx, cpu->parent_irq); in bcm6345_l1_of_init()
H A Dirq-ls1x.c109 int parent_irq, err = 0; in ls1x_intc_of_init() local
121 parent_irq = irq_of_parse_and_map(node, 0); in ls1x_intc_of_init()
122 if (!parent_irq) { in ls1x_intc_of_init()
178 irq_set_chained_handler_and_data(parent_irq, in ls1x_intc_of_init()
H A Dirq-loongson-liointc.c171 static int parent_irq[LIOINTC_NUM_PARENT]; variable
301 if (parent_irq[i] <= 0) in liointc_init()
305 irq_set_chained_handler_and_data(parent_irq[i], in liointc_init()
343 parent_irq[i] = of_irq_get_byname(node, parent_names[i]); in liointc_of_init()
344 if (parent_irq[i] > 0) in liointc_of_init()
403 parent_irq[0] = irq_create_mapping(parent, acpi_liointc->cascade[0]); in liointc_acpi_init()
404 parent_irq[1] = irq_create_mapping(parent, acpi_liointc->cascade[1]); in liointc_acpi_init()
H A Dqcom-irq-combiner.c33 int parent_irq; member
246 combiner->parent_irq = platform_get_irq(pdev, 0); in combiner_probe()
247 if (combiner->parent_irq <= 0) in combiner_probe()
256 irq_set_chained_handler_and_data(combiner->parent_irq, in combiner_probe()
260 combiner->parent_irq, combiner->nirqs, combiner->regs[0].addr); in combiner_probe()
H A Dirq-i8259.c346 unsigned int parent_irq; in i8259_of_init() local
350 parent_irq = irq_of_parse_and_map(node, 0); in i8259_of_init()
351 if (!parent_irq) { in i8259_of_init()
357 irq_set_chained_handler_and_data(parent_irq, i8259_irq_dispatch, in i8259_of_init()
H A Dirq-mscc-ocelot.c128 int parent_irq, ret; in vcoreiii_irq_init() local
130 parent_irq = irq_of_parse_and_map(node, 0); in vcoreiii_irq_init()
131 if (!parent_irq) in vcoreiii_irq_init()
179 irq_set_chained_handler_and_data(parent_irq, ocelot_irq_handler, in vcoreiii_irq_init()
H A Dexynos-combiner.c33 unsigned int parent_irq; member
97 struct irq_chip *chip = irq_get_chip(chip_data->parent_irq); in combiner_set_affinity()
98 struct irq_data *data = irq_get_irq_data(chip_data->parent_irq); in combiner_set_affinity()
130 combiner_data->parent_irq = irq; in combiner_init_one()
/linux/drivers/gpio/
H A Dgpio-brcmstb.c53 int parent_irq; member
380 if (priv->parent_irq > 0) in brcmstb_gpio_remove()
381 irq_set_chained_handler_and_data(priv->parent_irq, NULL, NULL); in brcmstb_gpio_remove()
431 /* priv->parent_irq and priv->num_gpios must be set before calling */
481 irq_set_chained_handler_and_data(priv->parent_irq, in brcmstb_gpio_irq_setup()
483 irq_set_status_flags(priv->parent_irq, IRQ_DISABLE_UNLAZY); in brcmstb_gpio_irq_setup()
512 if (priv->parent_irq >= 0) in brcmstb_gpio_quiesce()
513 disable_irq(priv->parent_irq); in brcmstb_gpio_quiesce()
570 if (priv->parent_irq >= 0) in brcmstb_gpio_resume()
571 enable_irq(priv->parent_irq); in brcmstb_gpio_resume()
[all...]
H A Dgpio-idt3243x.c140 int parent_irq; in idt_gpio_probe() local
171 parent_irq = platform_get_irq(pdev, 0); in idt_gpio_probe()
172 if (parent_irq < 0) in idt_gpio_probe()
173 return parent_irq; in idt_gpio_probe()
186 girq->parents[0] = parent_irq; in idt_gpio_probe()
/linux/drivers/platform/x86/intel/
H A Dint0002_vgpio.c54 int parent_irq; member
189 int0002->parent_irq = irq; in int0002_probe()
253 enable_irq_wake(int0002->parent_irq); in int0002_suspend()
263 disable_irq_wake(int0002->parent_irq); in int0002_resume()

12