i2c: mux: fix up dependencies
authorLinus Walleij <linus.walleij@linaro.org>
Mon, 14 Nov 2016 14:34:17 +0000 (15:34 +0100)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 14 Nov 2016 17:23:30 +0000 (18:23 +0100)
commit93d710a65ef02fb7fd48ae207e78f460bd7a6089
treead8822ecd5dc2fe64af69fa68d3230ca6c1fcda9
parentf10a59eb8c1087f0ce03cf0392cd483922187066
i2c: mux: fix up dependencies

We get the following build error from UM Linux after adding
an entry to drivers/iio/gyro/Kconfig that issues "select I2C_MUX":

ERROR: "devm_ioremap_resource"
   [drivers/i2c/muxes/i2c-mux-reg.ko] undefined!
ERROR: "of_address_to_resource"
   [drivers/i2c/muxes/i2c-mux-reg.ko] undefined!

It appears that the I2C mux core code depends on HAS_IOMEM
for historical reasons, while CONFIG_I2C_MUX_REG does *not*
have a direct dependency on HAS_IOMEM.

This creates a situation where a allyesconfig or allmodconfig
for UM Linux will select I2C_MUX, and will implicitly enable
I2C_MUX_REG as well, and the compilation will fail for the
register driver.

Fix this up by making I2C_MUX_REG depend on HAS_IOMEM and
removing the dependency from I2C_MUX.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Reported-by: Jonathan Cameron <jic23@jic23.retrosnub.co.uk>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Jonathan Cameron <jic23@kernel.org>
Acked-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
drivers/i2c/Kconfig
drivers/i2c/muxes/Kconfig