Lines Matching +full:host +full:- +full:to +full:- +full:chip

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * arch/powerpc/platforms/embedded6xx/hlwd-pic.c
9 #define DRV_MODULE_NAME "hlwd-pic"
19 #include "hlwd-pic.h"
38 * IRQ chip hooks.
81 .name = "hlwd-pic",
89 * IRQ host hooks.
98 irq_set_chip_data(virq, h->host_data); in hlwd_pic_map()
110 void __iomem *io_base = h->host_data; in __hlwd_pic_get_irq()
123 struct irq_chip *chip = irq_desc_get_chip(desc); in hlwd_pic_irq_cascade() local
127 raw_spin_lock(&desc->lock); in hlwd_pic_irq_cascade()
128 chip->irq_mask(&desc->irq_data); /* IRQ_LEVEL */ in hlwd_pic_irq_cascade()
129 raw_spin_unlock(&desc->lock); in hlwd_pic_irq_cascade()
137 raw_spin_lock(&desc->lock); in hlwd_pic_irq_cascade()
138 chip->irq_ack(&desc->irq_data); /* IRQ_LEVEL */ in hlwd_pic_irq_cascade()
139 if (!irqd_irq_disabled(&desc->irq_data) && chip->irq_unmask) in hlwd_pic_irq_cascade()
140 chip->irq_unmask(&desc->irq_data); in hlwd_pic_irq_cascade()
141 raw_spin_unlock(&desc->lock); in hlwd_pic_irq_cascade()
174 pr_info("controller at 0x%pa mapped to 0x%p\n", &res.start, io_base); in hlwd_pic_init()
181 pr_err("failed to allocate irq_domain\n"); in hlwd_pic_init()
202 struct irq_domain *host; in hlwd_pic_probe() local
207 for_each_compatible_node(np, NULL, "nintendo,hollywood-pic") { in hlwd_pic_probe()
210 host = hlwd_pic_init(np); in hlwd_pic_probe()
211 BUG_ON(!host); in hlwd_pic_probe()
213 irq_set_handler_data(cascade_virq, host); in hlwd_pic_probe()
216 hlwd_irq_host = host; in hlwd_pic_probe()
224 * hlwd_quiesce() - quiesce hollywood irq controller
231 void __iomem *io_base = hlwd_irq_host->host_data; in hlwd_quiesce()