aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/sysdev/qe_lib/qe_ic.c
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ellerman.id.au>2008-05-25 22:12:31 -0400
committerPaul Mackerras <paulus@samba.org>2008-06-08 23:51:15 -0400
commit2272a55f16c998d916904bba018b0f40f430d744 (patch)
tree8dd7212809b64ef3b665d8ecf66de9e1d3bad330 /arch/powerpc/sysdev/qe_lib/qe_ic.c
parent84f1c1e08906f2206f2bbdd19e4ff6a0757ff7f8 (diff)
powerpc: Rework qe_ic_init() so we can avoid freeing the irq_host
If we do the call to of_address_to_resource() first, then we don't need to worry about freeing the irq_host (which the code doesn't do currently anyway). Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/sysdev/qe_lib/qe_ic.c')
-rw-r--r--arch/powerpc/sysdev/qe_lib/qe_ic.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/powerpc/sysdev/qe_lib/qe_ic.c b/arch/powerpc/sysdev/qe_lib/qe_ic.c
index f59444d3be75..c11b313f015b 100644
--- a/arch/powerpc/sysdev/qe_lib/qe_ic.c
+++ b/arch/powerpc/sysdev/qe_lib/qe_ic.c
@@ -329,6 +329,10 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags,
329 struct resource res; 329 struct resource res;
330 u32 temp = 0, ret, high_active = 0; 330 u32 temp = 0, ret, high_active = 0;
331 331
332 ret = of_address_to_resource(node, 0, &res);
333 if (ret)
334 return;
335
332 qe_ic = alloc_bootmem(sizeof(struct qe_ic)); 336 qe_ic = alloc_bootmem(sizeof(struct qe_ic));
333 if (qe_ic == NULL) 337 if (qe_ic == NULL)
334 return; 338 return;
@@ -342,10 +346,6 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags,
342 return; 346 return;
343 } 347 }
344 348
345 ret = of_address_to_resource(node, 0, &res);
346 if (ret)
347 return;
348
349 qe_ic->regs = ioremap(res.start, res.end - res.start + 1); 349 qe_ic->regs = ioremap(res.start, res.end - res.start + 1);
350 350
351 qe_ic->irqhost->host_data = qe_ic; 351 qe_ic->irqhost->host_data = qe_ic;