[patch -linus] regmap: REMAP_IRQ should select IRQ_DOMAIN itself

From: David Rientjes
Date: Wed May 23 2012 - 02:57:31 EST


On Tue, 22 May 2012, Randy Dunlap wrote:

> on i386:
>
> drivers/base/regmap/regmap-irq.c: In function 'regmap_irq_thread':
> drivers/base/regmap/regmap-irq.c:146:4: error: implicit declaration of function 'irq_find_mapping'
> drivers/base/regmap/regmap-irq.c: At top level:
> drivers/base/regmap/regmap-irq.c:179:11: error: 'irq_domain_xlate_twocell' undeclared here (not in a function)
> drivers/base/regmap/regmap-irq.c: In function 'regmap_add_irq_chip':
> drivers/base/regmap/regmap-irq.c:272:3: error: implicit declaration of function 'irq_domain_add_legacy'
> drivers/base/regmap/regmap-irq.c:272:13: warning: assignment makes pointer from integer without a cast
> drivers/base/regmap/regmap-irq.c:276:3: error: implicit declaration of function 'irq_domain_add_linear'
> drivers/base/regmap/regmap-irq.c:276:13: warning: assignment makes pointer from integer without a cast
> drivers/base/regmap/regmap-irq.c: In function 'regmap_irq_get_virq':
> drivers/base/regmap/regmap-irq.c:349:2: error: implicit declaration of function 'irq_create_mapping'
>
> Full randconfig file is attached.
>

This brekage has already made it to Linus and doesn't only affect i386.
It happens because CONFIG_MFD_PALMAS doesn't select CONFIG_IRQ_DOMAIN like
the rest of the options that were patched in 4af8be67fd99 ("regmap:
Convert regmap_irq to use irq_domain"). This is the only remaining
Kconfig entry that selects CONFIG_REGMAP_IRQ and misses CONFIG_IRQ_DOMAIN.


regmap: REMAP_IRQ should select IRQ_DOMAIN itself

CONFIG_REGMAP_IRQ relies on CONFIG_IRQ_DOMAIN since 4af8be67fd99 ("regmap:
Convert regmap_irq to use irq_domain").

Instead of ensuring all options that select REGMAP_IRQ also select
IRQ_DOMAIN, just make the former select the latter itself.

Cc: Mark Brown <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxx>
Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
---
drivers/base/regmap/Kconfig | 1 +
drivers/mfd/Kconfig | 3 ---
2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/base/regmap/Kconfig b/drivers/base/regmap/Kconfig
--- a/drivers/base/regmap/Kconfig
+++ b/drivers/base/regmap/Kconfig
@@ -19,3 +19,4 @@ config REGMAP_MMIO

config REGMAP_IRQ
bool
+ select IRQ_DOMAIN
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -377,7 +377,6 @@ config PMIC_DA9052

config MFD_DA9052_SPI
bool "Support Dialog Semiconductor DA9052/53 PMIC variants with SPI"
- select IRQ_DOMAIN
select REGMAP_SPI
select REGMAP_IRQ
select PMIC_DA9052
@@ -390,7 +389,6 @@ config MFD_DA9052_SPI

config MFD_DA9052_I2C
bool "Support Dialog Semiconductor DA9052/53 PMIC variants with I2C"
- select IRQ_DOMAIN
select REGMAP_I2C
select REGMAP_IRQ
select PMIC_DA9052
@@ -561,7 +559,6 @@ config MFD_WM8994
bool "Support Wolfson Microelectronics WM8994"
select MFD_CORE
select REGMAP_I2C
- select IRQ_DOMAIN
select REGMAP_IRQ
depends on I2C=y && GENERIC_HARDIRQS
help
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/