• Arnd Bergmann's avatar
    gpio: winbond: fix ISA_BUS_API dependency · 92a8046c
    Arnd Bergmann authored
    The newly added GPIO driver for winbond chipsets causes a
    circular dependency warning in Kconfig:
    
    drivers/gpio/Kconfig:13:error: recursive dependency detected!
    drivers/gpio/Kconfig:13:	symbol GPIOLIB is selected by STX104
    drivers/iio/adc/Kconfig:699:	symbol STX104 depends on ISA_BUS_API
    arch/Kconfig:830:	symbol ISA_BUS_API is selected by GPIO_WINBOND
    drivers/gpio/Kconfig:701:	symbol GPIO_WINBOND depends on GPIOLIB
    
    The underlying problem is that ISA_BUS_API is not meant to be selected by
    device drivers, instead it is provided by the architectures that support
    ISA add-on card devices, or in case of x86 have this explicitly enabled.
    
    This particular driver appears to be different from the other ISA_BUS_API
    based drivers, in that it is not normally an add-on card (ISA or PC104)
    but instead is an LPC-attached component on the mainboard. We already
    support other functionality provided by this chip, at least
    drivers/watchdog/w83627hf_wdt.c and drivers/hwmon/w83627ehf.c, plus
    there is a discovery function for this hardware in
    drivers/parport/parport_pc.c.
    
    If we want to use this driver without having to enable CONFIG_EXPERT,
    it might be better to not use the isa_bus_type for it, but rather
    turn it into a platform_driver, acpi_driver or add an MFD for it that
    is shared with the wdt and hwmon portions and does the probing.
    
    For now, this patch fixes the dependency by changing 'select' into
    'depends on'.
    
    Cc: William Breathitt Gray <vilhelm.gray@gmail.com>
    Cc: Guenter Roeck <linux@roeck-us.net>
    Cc: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
    Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Fixes: a0d65009 ("gpio: winbond: Add driver")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    92a8046c
Kconfig 38.2 KB