Skip to content
  1. Apr 14, 2016
  2. Apr 13, 2016
  3. Apr 10, 2016
  4. Apr 05, 2016
    • Paul Gortmaker's avatar
      gpio: tps6586x: make explicitly non-modular · a0e63738
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_TPS6586X
      drivers/gpio/Kconfig:   bool "TPS6586X GPIO"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Laxman Dewangan <ldewangan@nvidia.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      a0e63738
    • Paul Gortmaker's avatar
      gpio: tps65910: make explicitly non-modular · 02c7a13e
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_TPS65910
      drivers/gpio/Kconfig:   bool "TPS65910 GPIO"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Graeme Gregory <gg@slimlogic.co.uk>
      Cc: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      02c7a13e
    • Paul Gortmaker's avatar
      gpio: palmas: make explicitly non-modular · f9f2b5cb
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_PALMAS
      drivers/gpio/Kconfig:   bool "TI PALMAS series PMICs GPIO"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Laxman Dewangan <ldewangan@nvidia.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      f9f2b5cb
    • Paul Gortmaker's avatar
      gpio: sx150x: make explicitly non-modular · 24a876ce
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_SX150X
      drivers/gpio/Kconfig:   bool "Semtech SX150x I2C GPIO expander"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Gregory Bean <gbean@codeaurora.org>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      24a876ce
    • Paul Gortmaker's avatar
      gpio: tc3589x: make explicitly non-modular · 85133341
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_TC3589X
      drivers/gpio/Kconfig:   bool "TC3589X GPIOs"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Rabin Vincent <rabin.vincent@stericsson.com>
      Cc: Hanumath Prasad <hanumath.prasad@stericsson.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      85133341
    • Paul Gortmaker's avatar
      gpio: rc5t583: make explicitly non-modular · fe7b7788
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_RC5T583
      drivers/gpio/Kconfig:   bool "RICOH RC5T583 GPIO"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_init was not in use by this code, the init ordering
      remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Laxman Dewangan <ldewangan@nvidia.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      fe7b7788
    • Linus Walleij's avatar
      gpio: tc3589x: implement open drain/source callback · 8b866b06
      Linus Walleij authored
      
      
      This makes use of the new .set_single_ended() callback to
      set the GPIO line as open drain/open source using hardware.
      The TC3589x can do this by either disabling the N-MOS
      transistor (open drain) or the P-MOS transistor (open source)
      of the output driver stage, in the first case making the signal
      drive actively low and high impedance as "high" and in the second
      case actively high and high impedance, which is as close to native
      open drain support as we come.
      
      Cc: Michael Hennerich <michael.hennerich@analog.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      8b866b06
    • Linus Walleij's avatar
      gpio: tc3589x: use BIT() macro · cee1b40d
      Linus Walleij authored
      
      
      This switch to use BIT(n) instead of (1 << n) which is less
      to the point. Most GPIO drivers do this to avoid mistakes.
      Also switch from using <linux/gpio.h> to the apropriate
      <linux/gpio/driver.h> include.
      
      Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      cee1b40d
    • Linus Walleij's avatar
      gpio: support native single-ended hardware drivers · c663e5f5
      Linus Walleij authored
      
      
      Some GPIO controllers has a special hardware bit we can flip
      to support open drain / source. This means that on these hardwares
      we do not need to emulate OD/OS by setting the line to input
      instead of actively driving it high/low. Add an optional vtable
      callback to the driver set_single_ended() so that driver can
      implement this in hardware if they have it.
      
      We may need a pinctrl_gpio_set_config() call at some point to
      propagate this down to a backing pin control device on systems
      with split GPIO/pin control.
      
      Reported-by: default avatarMichael Hennerich <michael.hennerich@analog.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      c663e5f5
  5. Mar 31, 2016
    • Axel Lin's avatar
      gpio: tpic2810: Make sure cached buffer has consistent status with h/w status · 6e66a659
      Axel Lin authored
      
      
      i2c_smbus_write_byte_data() can fail. To ensure the
      cached buffer has consistent status with h/w status, don't
      update the cached gpio->buffer if write fails.
      
      Also refactor the code a bit by adding a tpic2810_set_mask_bits()
      helper and use it to simplify the code.
      
      Signed-off-by: default avatarAxel Lin <axel.lin@ingics.com>
      Reviewed-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      6e66a659
    • Paul Gortmaker's avatar
      gpio: zx: make explicitly non-modular · 18fb0a98
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      config GPIO_ZX
              bool "ZTE ZX GPIO support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modularity so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Jun Nie <jun.nie@linaro.org>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      18fb0a98
    • Paul Gortmaker's avatar
      gpio: xgene: make explicitly non-modular · b33d12d3
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_XGENE
      drivers/gpio/Kconfig:   bool "APM X-Gene GPIO controller support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Feng Kan <fkan@apm.com>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      b33d12d3
    • Paul Gortmaker's avatar
      gpio: sta2x11: make explicitly non-modular · 3c90c6d6
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_STA2X11
      drivers/gpio/Kconfig:   bool "STA2x11/ConneXt GPIO support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modularity, so that when reading
      the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      3c90c6d6
    • Paul Gortmaker's avatar
      gpio: pl061: make explicitly non-modular · ef3e7100
      Paul Gortmaker authored
      
      
      The Kconfig for this driver is currently:
      
      config GPIO_PL061
              bool "PrimeCell PL061 GPIO support"
      
      ...meaning that it currently is not being built as a module by anyone.
      Lets remove the couple traces of modularity, so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Acked-by: default avatarBaruch Siach <baruch@tkos.co.il>
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      ef3e7100
    • Paul Gortmaker's avatar
      gpio: mvebu: make explicitly non-modular · ed329f3a
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_MVEBU
      drivers/gpio/Kconfig:   def_bool y
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modularity so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      ed329f3a
    • Paul Gortmaker's avatar
      gpio: moxart: make explicitly non-modular · 4bb9f725
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_MOXART
      drivers/gpio/Kconfig:   bool "MOXART GPIO support"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modular references so that when reading
      the driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      We don't replace module.h with init.h since the file already has that.
      
      Cc: Jonas Jensen <jonas.jensen@gmail.com>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      4bb9f725
    • Paul Gortmaker's avatar
      gpio: mc9s08dz60: make explicitly non-modular · 0de6a80d
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      drivers/gpio/Kconfig:config GPIO_MC9S08DZ60
      drivers/gpio/Kconfig:   bool "MX35 3DS BOARD MC9S08DZ60 GPIO functions"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.
      
      Since module_i2c_driver() uses the same init level priority as
      builtin_i2c_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: Wu Guoxing <b39297@freescale.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      0de6a80d
    • Paul Gortmaker's avatar
      gpio: mb86s7x: make explicitly non-modular · d5610e51
      Paul Gortmaker authored
      
      
      The Kconfig for this driver is currently:
      
      config GPIO_MB86S7X
              bool "GPIO support for Fujitsu MB86S7x Platforms"
      
      ...meaning that it currently is not being built as a module by anyone.
      Lets remove the couple traces of modularity, so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      is already contained at the top of the file in the comments.
      
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      d5610e51
    • Paul Gortmaker's avatar
      gpio: bcm-kona: make explicitly non-modular · 8f3e19fa
      Paul Gortmaker authored
      
      
      The Kconfig currently controlling compilation of this code is:
      
      config GPIO_BCM_KONA
              bool "Broadcom Kona GPIO"
      
      ...meaning that it currently is not being built as a module by anyone.
      
      Lets remove the couple traces of modularity so that when reading the
      driver there is no doubt it is builtin-only.
      
      Since module_platform_driver() uses the same init level priority as
      builtin_platform_driver() the init ordering remains unchanged with
      this commit.
      
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      We also delete the MODULE_LICENSE tag etc. since all that information
      was (or is now) contained at the top of the file in the comments.
      
      Cc: Ray Jui <rjui@broadcom.com>
      Cc: Alexandre Courbot <gnurou@gmail.com>
      Cc: bcm-kernel-feedback-list@broadcom.com
      Cc: linux-gpio@vger.kernel.org
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      8f3e19fa
    • Martin Blumenstingl's avatar
      gpio: gpio-it87: Add support for IT8620 and IT8628 · 8fccdb58
      Martin Blumenstingl authored
      
      
      These chips seem to have a 9th GPIO block (thus supporting 72 GPIOs)
      which is configured through SuperIO register 0xd2 (output enable) and
      0xd3 (simple I/O). This is also the reason why io_size is larger than
      on IT8728 / IT8732. Unfortunately I don't have hardware to test this 9th
      GPIO block.
      
      I am also not sure about not configuring the Simple I/O registers as the
      hardware I have only uses GPIO block 8. Reading back the values of
      0xc0-0xc7 (as configured by the BIOS/EFI on my board) shows that all
      have 0xff set.
      
      Signed-off-by: default avatarMartin Blumenstingl <martin.blumenstingl@googlemail.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      8fccdb58
    • Geert Uytterhoeven's avatar
      tools/gpio: Add missing initialization of device_name · 691998fa
      Geert Uytterhoeven authored
      
      
      lsgpio.c: In function ‘main’:
      lsgpio.c:166:7: warning: ‘device_name’ may be used uninitialized in this functio
      n [-Wmaybe-uninitialized]
         ret = list_device(device_name);
             ^
      
      Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      691998fa
    • Geert Uytterhoeven's avatar
    • Linus Walleij's avatar
      gpio: dt-bindings: document the concept of GPIO banks · 75c004df
      Linus Walleij authored
      
      
      Cc: devicetree@vger.kernel.org
      Cc: Neil Armstrong <narmstrong@baylibre.com>
      Cc: Rob Herring <robh@kernel.org>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      75c004df