Commit 7602e05d authored by Grygorii Strashko's avatar Grygorii Strashko Committed by Lee Jones

mfd: ab8500: Fix dt irq mapping

The AD8500 defines itself as interrupt-controller in DT,
but it doesn't assign DT node to IRQ domain when creates it.
As result, of_irq_xx() helpers don't work because they can't
find necessary IRQ domain.

Hence, fix it by assigning AD8500 core device DT node to IRQ
domain when it's created.

This patch fixes STE u8500 Snowball boot failure reported by Kevin Hilman
https://lkml.org/lkml/2014/5/27/624Reported-and-tested-by: default avatarKevin Hilman <khilman@linaro.org>
Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
parent 9e888487
...@@ -591,7 +591,7 @@ static int ab8500_irq_init(struct ab8500 *ab8500, struct device_node *np) ...@@ -591,7 +591,7 @@ static int ab8500_irq_init(struct ab8500 *ab8500, struct device_node *np)
num_irqs = AB8500_NR_IRQS; num_irqs = AB8500_NR_IRQS;
/* If ->irq_base is zero this will give a linear mapping */ /* If ->irq_base is zero this will give a linear mapping */
ab8500->domain = irq_domain_add_simple(NULL, ab8500->domain = irq_domain_add_simple(ab8500->dev->of_node,
num_irqs, 0, num_irqs, 0,
&ab8500_irq_ops, ab8500); &ab8500_irq_ops, ab8500);
......
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