1. 15 Dec, 2015 1 commit
    • Robert Jarzmik's avatar
      gpio: pxa: add pin control gpio direction and request · a770d946
      Robert Jarzmik authored
      If a pin control driver is available, use it to change the gpio
      direction. If not fallback to directly manipulating the gpio direction
      register.
      
      The reason to use the pin control driver first is that pin control in
      pxa2xx architecture implies changing the gpio direction, even for non
      gpio functions. In order to do it atomically, only one driver should
      control the gpio direction, and if a pin controller is available, it has
      to be him.
      
      There is a small catch : if CONFIG_PINCTRL is selected, then a pinctrl
      driver has to be probed. If not, gpio_request() will return
      -EPROBE_DEFER as pinctrl_request_gpio() returns it in that case.
      Signed-off-by: default avatarRobert Jarzmik <robert.jarzmik@free.fr>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      a770d946
  2. 14 Dec, 2015 2 commits
  3. 11 Dec, 2015 3 commits
  4. 10 Dec, 2015 17 commits
  5. 09 Dec, 2015 3 commits
    • Linus Walleij's avatar
      gpio: pca953x: make inclusion of <linux/of_platform.h> unconditional · c2369d3f
      Linus Walleij authored
      After adding the DT matching in
      commit 6f29c9af
      "gpio: pca935x: fix of-only probed devices"
      compilation fails like this:
      
      CC [M]  drivers/gpio/gpio-pca953x.o
      gpio-pca953x.c: In function ‘pca953x_probe’:
      gpio-pca953x.c:693:11: error: implicit declaration of
      function ‘of_match_device’ [-Werror=implicit-function-declaration]
      match = of_match_device(pca953x_dt_ids, &client->dev);
              ^
      gpio-pca953x.c:693:9: warning: assignment makes pointer from
      integer without a cast [-Wint-conversion]
      match = of_match_device(pca953x_dt_ids, &client->dev);
              ^
      cc1: some warnings being treated as errors
      ../scripts/Makefile.build:264: recipe for target
      'drivers/gpio/gpio-pca953x.o' failed
      
      After removing the conditional inclusion guards compilation
      works fine again. Might be a module problem so that
      fix.
      
      Cc: Ben Dooks <ben.dooks@codethink.co.uk>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      c2369d3f
    • Ben Dooks's avatar
      gpio: pca935x: fix of-only probed devices · 6f29c9af
      Ben Dooks authored
      If the pca953x device is probed from OF using the proper OF probing then
      the i2c-client will be NULL and the device probe will fail as id is NULL
      and it isn't an ACPI device (previous drivers would simply OOPS out).
      
      Add support for the of_device_id table having the same data as the others
      so that the correct paths will be taken when registering a device.
      
      An example of current valid of node which did not work:
      
      	gpio@38 {
      		compatible = "onsemi,pca9654", "nxp,pca9534";
      		reg = <0x38>;
      		interrupt-parent = <&gpio5>;
      		interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
      	};
      Signed-off-by: default avatarBen Dooks <ben.dooks@codethink.co.uk>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      6f29c9af
    • Ben Dooks's avatar
      gpio: pca953x: add onsemi,pca9654 id · 9f49f6dd
      Ben Dooks authored
      Add onsemi,pca9654 which is also compatible with the nxp,pca9524 as it
      is an 8bit expander with an interrupt output.
      Signed-off-by: default avatarBen Dooks <ben.dooks@codethink.co.uk>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      9f49f6dd
  6. 07 Dec, 2015 2 commits
  7. 04 Dec, 2015 1 commit
  8. 01 Dec, 2015 1 commit
    • William Breathitt Gray's avatar
      gpio: Add GPIO support for the ACCES 104-IDI-48 · 6ddcf9b4
      William Breathitt Gray authored
      The ACCES 104-IDI-48 family of PC/104 utility boards feature 48
      individually optically isolated digital inputs. Enabled inputs feature
      change-of-state detection capability; if change-of-state detection is
      enabled, an interrupt is fired off if a change of input level
      (low-to-high or high-to-low) is detected. Change-of-state IRQs are
      enabled/disabled on 8-bit boundaries, for a total of six boundaries.
      
      This driver provides GPIO and IRQ support for these 48 channels of
      digital input. The base port address for the device may be configured
      via the idi_48_base module parameter. The interrupt line number for the
      device may be configured via the idi_48_irq module parameter.
      Signed-off-by: default avatarWilliam Breathitt Gray <vilhelm.gray@gmail.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      6ddcf9b4
  9. 30 Nov, 2015 3 commits
  10. 29 Nov, 2015 1 commit
  11. 19 Nov, 2015 6 commits