1. 11 1月, 2018 1 次提交
    • A
      gpio: winbond: fix ISA_BUS_API dependency · 92a8046c
      Arnd Bergmann 提交于
      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: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      92a8046c
  2. 10 1月, 2018 2 次提交
  3. 09 1月, 2018 4 次提交
  4. 05 1月, 2018 1 次提交
    • L
      gpio: label descriptors using the device name · 24e78079
      Linus Walleij 提交于
      Some GPIO lines appear named "?" in the lsgpio dump due to their
      requesting drivers not passing a reasonable label.
      
      Most typically this happens if a device tree node just defines
      gpios = <...> and not foo-gpios = <...>, the former gets named
      "foo" and the latter gets named "?".
      
      However the struct device passed in is always valid so let's
      just label the GPIO with dev_name() on the device if no proper
      label was passed.
      
      Cc: Reported-by: Jason Kridner <jkridner@beagleboard.org>
      Reported-by: NJason Kridner <jkridner@beagleboard.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      24e78079
  5. 03 1月, 2018 1 次提交
    • L
      gpio: omap: Give unique labels to each GPIO bank/chip · 088413bc
      Linus Walleij 提交于
      As we need to add GPIO lookup tables to the OMAP platforms, we
      need to reference each GPIO chip with a unique label. Use the GPIO
      base to name each chip, "gpio-0-31", "gpio-32-63" etc.
      
      Cc: Grygorii Strashko <grygorii.strashko@ti.com>
      Cc: Santosh Shilimkar <ssantosh@kernel.org>
      Cc: Kevin Hilman <khilman@kernel.org>
      Cc: linux-omap@vger.kernel.org
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      088413bc
  6. 02 1月, 2018 3 次提交
  7. 28 12月, 2017 2 次提交
  8. 22 12月, 2017 2 次提交
  9. 21 12月, 2017 4 次提交
  10. 20 12月, 2017 8 次提交
  11. 08 12月, 2017 2 次提交
    • B
      gpio: mockup: fix a return value check · c4b54e13
      Bartosz Golaszewski 提交于
      The return value of platform_device_register_resndata() on error is
      an error code converted to pointer with ERR_PTR(), not NULL.
      
      Check the return value correctly.
      
      Fixes: 8a39f597 ("gpio: mockup: rework device probing")
      Signed-off-by: NBartosz Golaszewski <brgl@bgdev.pl>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      c4b54e13
    • L
      w1: w1-gpio: Convert to use GPIO descriptors · e0fc62a6
      Linus Walleij 提交于
      The w1 master driver includes a complete open drain emulation
      reimplementation among other things.
      
      This converts the driver and all board files using it to use
      GPIO descriptors associated with the device to look up the
      GPIO wire, as well ass the optional pull-up GPIO line.
      
      When probed from the device tree, the driver will just pick
      descriptors and use them right off. For the two board files
      in the kernel, we add descriptor lookups so we do not need
      to keep any old platform data handling around for the GPIO
      lines.
      
      As the platform data is also a state container for this driver,
      we augment it to contain the GPIO descriptors.
      
      w1_gpio_write_bit_dir() and w1_gpio_write_bit_val() are gone
      since this pair was a reimplementation of open drain emulation
      which is now handled by gpiolib.
      
      The special "linux,open-drain" flag is a bit of mishap here:
      it has the same semantic as the same flags in I2C: it means
      that something in the platform is setting up the line as
      open drain behind our back. We handle this the same way as
      in I2C.
      
      To drive the pull-up, we need to bypass open drain emulation
      in gpiolib for the line, and this is done by driving it high
      using gpiod_set_raw_value() which has been augmented to have
      the semantic of overriding the open drain emulation.
      
      We also augment the documentation to reflect the way to pass
      GPIO descriptors from the machine.
      Acked-by: NEvgeniy Polyakov <zbr@ioremap.net>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      e0fc62a6
  12. 07 12月, 2017 9 次提交
  13. 03 12月, 2017 1 次提交