iio: accel: fix Kconfig warning
authorLinus Walleij <linus.walleij@linaro.org>
Fri, 20 Jan 2017 09:46:05 +0000 (10:46 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 23 Jan 2017 08:27:30 +0000 (09:27 +0100)
commit 762227721fe6225be5b6d233ef681aea5871f5f3
"iio: accel: st_accel: handle deprecated bindings"
attempted to be smart and let users use the old I2C
driver and the new SPI driver, or the old SPI driver and
the new I2C driver in combination for the LIS3LV02,
and put the restrictions on the I2C and SPI subdrivers
not not be combined with the old subdrivers.

This doesn't work since the IIO ST accel top-level
component selects the I2C and SPI subdrivers, resulting
in the following Kconfig noise:

warning: (IIO_ST_ACCEL_3AXIS) selects IIO_ST_ACCEL_I2C_3AXIS
which has unmet direct dependencies (IIO && !SENSORS_LIS3_I2C
&& IIO_ST_ACCEL_3AXIS && IIO_ST_SENSORS_I2C)
warning: (IIO_ST_ACCEL_3AXIS) selects IIO_ST_ACCEL_SPI_3AXIS
which has unmet direct dependencies (IIO && !SENSORS_LIS3_SPI
&& IIO_ST_ACCEL_3AXIS && IIO_ST_SENSORS_SPI)
(...)

This fixes the issue by putting the dependencies directly
in the top-level component instead, so that it never gets
to select its unselectable subcomponent.

Fixes: 762227721fe6 ("iio: accel: st_accel: handle deprecated bindings")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/iio/accel/Kconfig

index ea295fe0f5613b64dbb55e8876239b364c9b70ba..ef8401ac114139f7a183b001b35cd0408aa576d4 100644 (file)
@@ -120,6 +120,8 @@ config HID_SENSOR_ACCEL_3D
 config IIO_ST_ACCEL_3AXIS
        tristate "STMicroelectronics accelerometers 3-Axis Driver"
        depends on (I2C || SPI_MASTER) && SYSFS
+       depends on !SENSORS_LIS3_I2C
+       depends on !SENSORS_LIS3_SPI
        select IIO_ST_SENSORS_CORE
        select IIO_ST_ACCEL_I2C_3AXIS if (I2C)
        select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER)
@@ -140,13 +142,11 @@ config IIO_ST_ACCEL_3AXIS
 
 config IIO_ST_ACCEL_I2C_3AXIS
        tristate
-       depends on !SENSORS_LIS3_I2C
        depends on IIO_ST_ACCEL_3AXIS
        depends on IIO_ST_SENSORS_I2C
 
 config IIO_ST_ACCEL_SPI_3AXIS
        tristate
-       depends on !SENSORS_LIS3_SPI
        depends on IIO_ST_ACCEL_3AXIS
        depends on IIO_ST_SENSORS_SPI