[POWERPC] Add an optional device_node pointer to the irq_host
The majority of irq_host implementations (3 out of 4) are associated with a device_node, and need to stash it somewhere. Rather than having it somewhere different for each host, add an optional device_node pointer to the irq_host structure. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
committed by
Paul Mackerras
parent
0ae0b54565
commit
52964f87c6
@@ -50,7 +50,6 @@
|
||||
|
||||
static intctl_cpm2_t *cpm2_intctl;
|
||||
|
||||
static struct device_node *cpm2_pic_node;
|
||||
static struct irq_host *cpm2_pic_host;
|
||||
#define NR_MASK_WORDS ((NR_IRQS + 31) / 32)
|
||||
static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS];
|
||||
@@ -208,7 +207,7 @@ unsigned int cpm2_get_irq(void)
|
||||
|
||||
static int cpm2_pic_host_match(struct irq_host *h, struct device_node *node)
|
||||
{
|
||||
return cpm2_pic_node == node;
|
||||
return h->of_node == node;
|
||||
}
|
||||
|
||||
static int cpm2_pic_host_map(struct irq_host *h, unsigned int virq,
|
||||
@@ -273,8 +272,8 @@ void cpm2_pic_init(struct device_node *node)
|
||||
out_be32(&cpm2_intctl->ic_scprrl, 0x05309770);
|
||||
|
||||
/* create a legacy host */
|
||||
cpm2_pic_node = of_node_get(node);
|
||||
cpm2_pic_host = irq_alloc_host(IRQ_HOST_MAP_LINEAR, 64, &cpm2_pic_host_ops, 64);
|
||||
cpm2_pic_host = irq_alloc_host(of_node_get(node), IRQ_HOST_MAP_LINEAR,
|
||||
64, &cpm2_pic_host_ops, 64);
|
||||
if (cpm2_pic_host == NULL) {
|
||||
printk(KERN_ERR "CPM2 PIC: failed to allocate irq host!\n");
|
||||
return;
|
||||
|
Reference in New Issue
Block a user