Commit 84f1c1e0 authored by Michael Ellerman's avatar Michael Ellerman Committed by Paul Mackerras

powerpc: Rework ipic_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: default avatarMichael Ellerman <michael@ellerman.id.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 997526db
...@@ -725,6 +725,10 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags) ...@@ -725,6 +725,10 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags)
struct resource res; struct resource res;
u32 temp = 0, ret; u32 temp = 0, ret;
ret = of_address_to_resource(node, 0, &res);
if (ret)
return NULL;
ipic = alloc_bootmem(sizeof(struct ipic)); ipic = alloc_bootmem(sizeof(struct ipic));
if (ipic == NULL) if (ipic == NULL)
return NULL; return NULL;
...@@ -739,12 +743,6 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags) ...@@ -739,12 +743,6 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags)
return NULL; return NULL;
} }
ret = of_address_to_resource(node, 0, &res);
if (ret) {
of_node_put(node);
return NULL;
}
ipic->regs = ioremap(res.start, res.end - res.start + 1); ipic->regs = ioremap(res.start, res.end - res.start + 1);
ipic->irqhost->host_data = ipic; ipic->irqhost->host_data = ipic;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment