]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/powerpc/sysdev/ipic.c
Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
[linux-2.6-omap-h63xx.git] / arch / powerpc / sysdev / ipic.c
index 473c415e9e253bfd5a911274c5a5b42a90780929..05a56e55804c3ab4395671b9bd2a4713972cbf20 100644 (file)
@@ -511,10 +511,8 @@ static struct irq_chip ipic_irq_chip = {
 
 static int ipic_host_match(struct irq_host *h, struct device_node *node)
 {
-       struct ipic *ipic = h->host_data;
-
        /* Exact match, unless ipic node is NULL */
-       return ipic->of_node == NULL || ipic->of_node == node;
+       return h->of_node == NULL || h->of_node == node;
 }
 
 static int ipic_host_map(struct irq_host *h, unsigned int virq,
@@ -568,9 +566,8 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags)
                return NULL;
 
        memset(ipic, 0, sizeof(struct ipic));
-       ipic->of_node = of_node_get(node);
 
-       ipic->irqhost = irq_alloc_host(IRQ_HOST_MAP_LINEAR,
+       ipic->irqhost = irq_alloc_host(of_node_get(node), IRQ_HOST_MAP_LINEAR,
                                       NR_IPIC_INTS,
                                       &ipic_host_ops, 0);
        if (ipic->irqhost == NULL) {