Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[pandora-kernel.git] / arch / powerpc / sysdev / qe_lib / qe_ic.c
index e1c0fd6..63cdf98 100644 (file)
@@ -329,21 +329,19 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags,
        struct resource res;
        u32 temp = 0, ret, high_active = 0;
 
+       ret = of_address_to_resource(node, 0, &res);
+       if (ret)
+               return;
+
        qe_ic = alloc_bootmem(sizeof(struct qe_ic));
        if (qe_ic == NULL)
                return;
 
        memset(qe_ic, 0, sizeof(struct qe_ic));
 
-       qe_ic->irqhost = irq_alloc_host(of_node_get(node), IRQ_HOST_MAP_LINEAR,
+       qe_ic->irqhost = irq_alloc_host(node, IRQ_HOST_MAP_LINEAR,
                                        NR_QE_IC_INTS, &qe_ic_host_ops, 0);
-       if (qe_ic->irqhost == NULL) {
-               of_node_put(node);
-               return;
-       }
-
-       ret = of_address_to_resource(node, 0, &res);
-       if (ret)
+       if (qe_ic->irqhost == NULL)
                return;
 
        qe_ic->regs = ioremap(res.start, res.end - res.start + 1);
@@ -483,7 +481,7 @@ int qe_ic_set_high_priority(unsigned int virq, unsigned int priority, int high)
 }
 
 static struct sysdev_class qe_ic_sysclass = {
-       set_kset_name("qe_ic"),
+       .name = "qe_ic",
 };
 
 static struct sys_device device_qe_ic = {