Browse Source

i2c: Fix Kconfig dependencies

drivers/i2c/algos/Kconfig makes all the algorithms dependent on
!I2C_HELPER_AUTO, which triggers a Kconfig warning about broken
dependencies when some driver selects one of the algorithms. Ideally
we would make only the prompts dependent on !I2C_HELPER_AUTO, however
Kconfig doesn't currently support that. So we have to redefine the
symbols separately for the I2C_HELPER_AUTO=y case.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Michal Marek <mmarek@suse.cz>
Jean Delvare 15 years ago
parent
commit
0a57274ea0
2 changed files with 14 additions and 1 deletions
  1. 2 1
      drivers/i2c/Kconfig
  2. 12 0
      drivers/i2c/algos/Kconfig

+ 2 - 1
drivers/i2c/Kconfig

@@ -75,7 +75,8 @@ config I2C_HELPER_AUTO
 	  In doubt, say Y.
 	  In doubt, say Y.
 
 
 config I2C_SMBUS
 config I2C_SMBUS
-	tristate "SMBus-specific protocols" if !I2C_HELPER_AUTO
+	tristate
+	prompt "SMBus-specific protocols" if !I2C_HELPER_AUTO
 	help
 	help
 	  Say Y here if you want support for SMBus extensions to the I2C
 	  Say Y here if you want support for SMBus extensions to the I2C
 	  specification. At the moment, the only supported extension is
 	  specification. At the moment, the only supported extension is

+ 12 - 0
drivers/i2c/algos/Kconfig

@@ -15,3 +15,15 @@ config I2C_ALGOPCA
 	tristate "I2C PCA 9564 interfaces"
 	tristate "I2C PCA 9564 interfaces"
 
 
 endmenu
 endmenu
+
+# In automatic configuration mode, we still have to define the
+# symbols to avoid unmet dependencies.
+
+if I2C_HELPER_AUTO
+config I2C_ALGOBIT
+	tristate
+config I2C_ALGOPCF
+	tristate
+config I2C_ALGOPCA
+	tristate
+endif