diff options
-rw-r--r-- | drivers/mfd/ab8500-core.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/mfd/ab8500-core.c b/drivers/mfd/ab8500-core.c index 1667c77b5cde..547fff4901ea 100644 --- a/drivers/mfd/ab8500-core.c +++ b/drivers/mfd/ab8500-core.c | |||
@@ -565,15 +565,10 @@ static int ab8500_irq_init(struct ab8500 *ab8500, struct device_node *np) | |||
565 | else | 565 | else |
566 | num_irqs = AB8500_NR_IRQS; | 566 | num_irqs = AB8500_NR_IRQS; |
567 | 567 | ||
568 | if (ab8500->irq_base) { | 568 | /* If ->irq_base is zero this will give a linear mapping */ |
569 | ab8500->domain = irq_domain_add_legacy( | 569 | ab8500->domain = irq_domain_add_simple(NULL, |
570 | NULL, num_irqs, ab8500->irq_base, | 570 | num_irqs, ab8500->irq_base, |
571 | 0, &ab8500_irq_ops, ab8500); | 571 | &ab8500_irq_ops, ab8500); |
572 | } | ||
573 | else { | ||
574 | ab8500->domain = irq_domain_add_linear( | ||
575 | np, num_irqs, &ab8500_irq_ops, ab8500); | ||
576 | } | ||
577 | 572 | ||
578 | if (!ab8500->domain) { | 573 | if (!ab8500->domain) { |
579 | dev_err(ab8500->dev, "Failed to create irqdomain\n"); | 574 | dev_err(ab8500->dev, "Failed to create irqdomain\n"); |