Commit 7d14f6c6 authored by Cédric Le Goater's avatar Cédric Le Goater Committed by Michael Ellerman

powerpc/xics: Give a name to the default XICS IRQ domain

and clean up the error path.
Signed-off-by: default avatarCédric Le Goater <clg@kaod.org>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210701132750.1475580-19-clg@kaod.org
parent 248af248
...@@ -412,11 +412,22 @@ static const struct irq_domain_ops xics_host_ops = { ...@@ -412,11 +412,22 @@ static const struct irq_domain_ops xics_host_ops = {
.xlate = xics_host_xlate, .xlate = xics_host_xlate,
}; };
static void __init xics_init_host(void) static int __init xics_allocate_domain(void)
{ {
xics_host = irq_domain_add_tree(NULL, &xics_host_ops, NULL); struct fwnode_handle *fn;
BUG_ON(xics_host == NULL);
fn = irq_domain_alloc_named_fwnode("XICS");
if (!fn)
return -ENOMEM;
xics_host = irq_domain_create_tree(fn, &xics_host_ops, NULL);
if (!xics_host) {
irq_domain_free_fwnode(fn);
return -ENOMEM;
}
irq_set_default_host(xics_host); irq_set_default_host(xics_host);
return 0;
} }
void __init xics_register_ics(struct ics *ics) void __init xics_register_ics(struct ics *ics)
...@@ -480,6 +491,8 @@ void __init xics_init(void) ...@@ -480,6 +491,8 @@ void __init xics_init(void)
/* Initialize common bits */ /* Initialize common bits */
xics_get_server_size(); xics_get_server_size();
xics_update_irq_servers(); xics_update_irq_servers();
xics_init_host(); rc = xics_allocate_domain();
if (rc < 0)
pr_err("XICS: Failed to create IRQ domain");
xics_setup_cpu(); xics_setup_cpu();
} }
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