An error occurred fetching the project authors.
- 14 Dec, 2020 1 commit
-
-
Luo Jiaxing authored
This GPIO driver is for HiSilicon's ARM SoC. HiSilicon's GPIO controller support double-edge interrupt and multi-core concurrent access. ACPI table example for this GPIO controller: Device (GPO0) { Name (_HID, "HISI0184") Device (PRTA) { Name (_ADR, Zero) Name (_UID, Zero) Name (_DSD, Package (0x01) { Package (0x02) { "ngpios", 0x20 } }) } } Signed-off-by:
Luo Jiaxing <luojiaxing@huawei.com> Link: https://lore.kernel.org/r/1607934255-52544-2-git-send-email-luojiaxing@huawei.comSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 05 Dec, 2020 1 commit
-
-
Daniel Palmer authored
This adds a driver that supports the GPIO block found in MStar/SigmaStar ARMv7 SoCs. The controller seems to have enough register for 128 lines but where they are wired up differs between chips and no currently known chip uses anywhere near 128 lines so there needs to be some per-chip data to collect together what lines actually have physical pins attached and map the right names to them. The core peripherals seem to use the same lines on the currently known chips but the lines used for the sensor interface, lcd controller etc pins seem to be totally different between the infinity and mercury chips The code tries to collect all of the re-usable names, offsets etc together so that it's easy to build the extra per-chip data for other chips in the future. So far this only supports the MSC313 and MSC313E chips. Support for the SSC8336N (mercury5) is trivial to add once all of the lines have been mapped out. Signed-off-by:
Daniel Palmer <daniel@0x0f.com> Link: https://lore.kernel.org/r/20201129110803.2461700-4-daniel@0x0f.comSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 30 Sep, 2020 1 commit
-
-
Kent Gibson authored
Make the gpiolib-cdev module a build option. This allows the CDEV interface to be removed from the kernel to reduce kernel size in applications where is it not required, and provides the parent for other CDEV interface specific build options to follow. Suggested-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by:
Kent Gibson <warthog618@gmail.com> Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com>
-
- 17 Sep, 2020 1 commit
-
-
Michael Walle authored
Add support for the GPIO controller of the sl28 board management controller. This driver is part of a multi-function device. A controller has 8 lines. There are three different flavors: full-featured GPIO with interrupt support, input-only and output-only. Signed-off-by:
Michael Walle <michael@walle.cc> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Reviewed-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 14 Sep, 2020 1 commit
-
-
Bartosz Golaszewski authored
Now that devprop_gpiochip_set_names() is only used in a single place inside drivers/gpio/gpiolib.c, there's no need anymore for it to be exported or to even live in its own source file. Pull this function into the core source file for gpiolib. Signed-off-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by:
Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
-
- 16 Jul, 2020 1 commit
-
-
Sungbo Eo authored
NXP PCA9570 is a 4-bit I2C GPO expander without interrupt functionality. Its ports are controlled only by a data byte without register address. Signed-off-by:
Sungbo Eo <mans0n@gorani.run> Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Datasheet: https://www.nxp.com/docs/en/data-sheet/PCA9570.pdf Link: https://lore.kernel.org/r/20200709134829.216393-1-mans0n@gorani.runSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 20 Jun, 2020 1 commit
-
-
Kent Gibson authored
Split the cdev specific functionality out of gpiolib.c and into gpiolib-cdev.c. This improves the readability and maintainability of both the cdev and core gpiolib code. Suggested-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by:
Kent Gibson <warthog618@gmail.com> Link: https://lore.kernel.org/r/20200616093615.5167-1-warthog618@gmail.comSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 03 Jun, 2020 1 commit
-
-
Michael Walle authored
There are quite a lot simple GPIO controller which are using regmap to access the hardware. This driver tries to be a base to unify existing code into one place. This won't cover everything but it should be a good starting point. It does not implement its own irq_chip because there is already a generic one for regmap based devices. Instead, the irq_chip will be instantiated in the parent driver and its irq domain will be associate to this driver. For now it consists of the usual registers, like set (and an optional clear) data register, an input register and direction registers. Out-of-the-box, it supports consecutive register mappings and mappings where the registers have gaps between them with a linear mapping between GPIO offset and bit position. For weirder mappings the user can register its own .xlate(). Signed-off-by:
Michael Walle <michael@walle.cc> Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200528145845.31436-3-michael@walle.ccSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 18 May, 2020 1 commit
-
-
Geert Uytterhoeven authored
GPIO controllers are exported to userspace using /dev/gpiochip* character devices. Access control to these devices is provided by standard UNIX file system permissions, on an all-or-nothing basis: either a GPIO controller is accessible for a user, or it is not. Currently no mechanism exists to control access to individual GPIOs. Hence add a GPIO driver to aggregate existing GPIOs, and expose them as a new gpiochip. This supports the following use cases: - Aggregating GPIOs using Sysfs This is useful for implementing access control, and assigning a set of GPIOs to a specific user or virtual machine. - Generic GPIO Driver This is useful for industrial control, where it can provide userspace access to a simple GPIO-operated device described in DT, cfr. e.g. spidev for SPI-operated devices. Signed-off-by:
Geert Uytterhoeven <geert+renesas@glider.be> Tested-by:
Eugeniu Rosca <erosca@de.adit-jv.com> Reviewed-by:
Eugeniu Rosca <erosca@de.adit-jv.com> Link: https://lore.kernel.org/r/20200511145257.22970-5-geert+renesas@glider.beSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 09 Mar, 2020 1 commit
-
-
Asmaa Mnebhi authored
This patch adds support for the GPIO controller used by Mellanox BlueField 2 SOCs. Signed-off-by:
Asmaa Mnebhi <Asmaa@mellanox.com> Link: https://lore.kernel.org/r/1680de9eb6d2b8855228dde9a2dd065f0dcbe1fb.1583182325.git.Asmaa@mellanox.comSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 24 Jan, 2020 1 commit
-
-
Matti Vaittinen authored
ROHM BD71828 PMIC contains 4 pins which can be configured by OTP to be used for general purposes. First 3 can be used as outputs and 4.th pin can be used as input. Allow them to be controlled via GPIO framework. The driver assumes all of the pins are configured as GPIOs and trusts that the reserved pins in other OTP configurations are excluded from control using "gpio-reserved-ranges" device tree property (or left untouched by GPIO users). Typical use for 4.th pin (input) is to use it as HALL sensor input so that this pin state is toggled when HALL sensor detects LID position change (from close to open or open to close). PMIC HW implements some extra logic which allows PMIC to power-up the system when this pin is toggled. Please see the data sheet for details of GPIO options which can be selected by OTP settings. Signed-off-by:
Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> Reviewed-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 20 Jan, 2020 1 commit
-
-
Yash Shah authored
Adds the GPIO driver for SiFive RISC-V SoCs. Signed-off-by:
Wesley W. Terpstra <wesley@sifive.com> [Atish: Various fixes and code cleanup] Signed-off-by:
Atish Patra <atish.patra@wdc.com> Signed-off-by:
Yash Shah <yash.shah@sifive.com> Signed-off-by:
Marc Zyngier <maz@kernel.org> Reviewed-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/1575976274-13487-6-git-send-email-yash.shah@sifive.com
-
- 15 Jan, 2020 1 commit
-
-
Srinivas Kandagatla authored
This patch adds support to wcd934x gpio block found in WCD9340/WC9341 Audio codecs. Signed-off-by:
Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Link: https://lore.kernel.org/r/20200107130844.20763-3-srinivas.kandagatla@linaro.orgSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 13 Dec, 2019 2 commits
-
-
Andy Shevchenko authored
Move Lynxpoint GPIO driver under Intel pin control umbrella for further transformation to a real pin control driver. Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by:
Mika Westerberg <mika.westerberg@linux.intel.com>
-
Paul Kocialkowski authored
The LogiCVC display hardware block comes with GPIO capabilities that must be exposed separately from the main driver (as GPIOs) for use with regulators and panels. A syscon is used to share the same regmap across the two drivers. Add a minimalistic GPIO driver to drive these GPIOs, using a syscon regmap when available. Signed-off-by:
Paul Kocialkowski <paul.kocialkowski@bootlin.com> Link: https://lore.kernel.org/r/20191203141243.251058-5-paul.kocialkowski@bootlin.comSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 29 Oct, 2019 2 commits
-
-
Chris Packham authored
This driver supports the Chip Common A GPIO controller present on a number of Broadcom switch ASICs with integrated SoCs. The controller is similar to the pinctrl-nsp-gpio and pinctrl-iproc-gpio blocks but different enough that a separate driver is required. This has been ported from Broadcom's XLDK 5.0.3 retaining only the CCA support (pinctrl-iproc-gpio covers CCB). Signed-off-by:
Chris Packham <chris.packham@alliedtelesis.co.nz> Link: https://lore.kernel.org/r/20191024202703.8017-3-chris.packham@alliedtelesis.co.nzAcked-by:
Scott Branden <scott.branden@broadcom.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
Manivannan Sadhasivam authored
Add support for GPIO controller from RDA Micro. This GPIO controller is an in house IP, developed by RDA Micro (now Unisoc) for the use in RDA88* series of SoCs. There are multiple GPIO ports present in all SoCs, each capable of addressing 32 GPIOs. But only first 8 pins have the interrupt capability. Signed-off-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Link: https://lore.kernel.org/r/20191021064413.19840-4-manivannan.sadhasivam@linaro.orgReviewed-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 30 Sep, 2019 1 commit
-
-
Linus Walleij authored
This renames the "gpio-aspeed" driver to conform with other GPIO drivers as "gpio-aspeed-sgpio.c". All GPIO drivers should start with the string "gpio-" no special exceptions. Also the Kconfig and Makefile entries should normally go with the driver but I missed this in my review, sorry for mistake. "CONFIG_GPIO_ASPEED_SGPIO" is used to activate this driver. Cc: Hongwei Zhang <hongweiz@ami.com> Fixes: 7db47faa ("gpio: aspeed: Add SGPIO driver") Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Acked-by:
Andrew Jeffery <andrew@aj.id.au> Link: https://lore.kernel.org/r/20190927114833.12551-1-linus.walleij@linaro.org
-
- 15 Aug, 2019 1 commit
-
-
Arnd Bergmann authored
The driver uses hardwire MMIO addresses instead of the data that is passed in device tree. Change it over to only hardcode the register offset values and allow compile-testing. Link: https://lore.kernel.org/r/20190809144043.476786-6-arnd@arndb.deAcked-by:
Sylvain Lemieux <slemieux.tyco@gmail.com> Tested-by:
Sylvain Lemieux <slemieux.tyco@gmail.com> Signed-off-by:
Arnd Bergmann <arnd@arndb.de>
-
- 14 Aug, 2019 1 commit
-
-
Marek Behún authored
This adds support for interpreting the input and output bits of one device on Moxtet bus as GPIOs. This is needed for example by the SFP cage module of Turris Mox. Link: https://lore.kernel.org/r/20190812161118.21476-5-marek.behun@nic.czSigned-off-by:
Marek Behún <marek.behun@nic.cz> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Arnd Bergmann <arnd@arndb.de>
-
- 12 Aug, 2019 1 commit
-
-
Arnd Bergmann authored
The driver uses hardwire MMIO addresses instead of the data that is passed in device tree. Change it over to only hardcode the register offset values and allow compile-testing. Acked-by:
Sylvain Lemieux <slemieux.tyco@gmail.com> Tested-by:
Sylvain Lemieux <slemieux.tyco@gmail.com> Signed-off-by:
Arnd Bergmann <arnd@arndb.de> Signed-off-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com>
-
- 10 Aug, 2019 1 commit
-
-
Arnd Bergmann authored
The platform is getting removed, so there are no remaining users of this driver. Signed-off-by:
Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20190809202749.742267-4-arnd@arndb.deSigned-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 27 Jun, 2019 2 commits
-
-
Geert Uytterhoeven authored
Sort the definitions for the individual GPIO drivers in the Makefile by object file name. Align all entries while we're at it. Signed-off-by:
Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
Matti Vaittinen authored
ROHM BD70528 PMIC has 4 GPIO pins. Allow them to be controlled by GPIO framework. IRQs are handled by regmap-irq and GPIO driver is not aware of the irq usage. Signed-off-by:
Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 08 May, 2019 1 commit
-
-
Bartosz Golaszewski authored
Add GPIO support for max77650 mfd device. This PMIC exposes a single GPIO line. Signed-off-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 23 Apr, 2019 1 commit
-
-
Linus Walleij authored
This adds a driver for the IXP4xx GPIO block found in the Intel XScale IXP4xx systems. The GPIO part of this block is pretty straight-forward and just uses the generic MMIO GPIO library. The irqchip side of this driver is hierarchical where the main irqchip will receive a processed level trigger in response to the edge detector of the GPIO block, so for this reason the v2 version of the irqdomain API is used (as well as in the parent IXP4xx irqchip) and masking, unmasking and setting up the type on IRQ happens on several levels. Currently this GPIO controller will grab the parent irqdomain using a special function, but as the platform move toward device tree probing, this will not be needed: we can just look up the parent irqdomain from the device tree. Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 26 Mar, 2019 1 commit
-
-
Shravan Kumar Ramani authored
This patch adds support for the GPIO controller used by Mellanox BlueField SOCs. Reviewed-by:
David Woods <dwoods@mellanox.com> Signed-off-by:
Shravan Kumar Ramani <sramani@mellanox.com> Signed-off-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com>
-
- 22 Feb, 2019 1 commit
-
-
Enrico Weigelt, metux IT consult authored
GPIO platform driver for the AMD G-series PCH (eg. on GX-412TC) This driver doesn't registers itself automatically, as it needs to be provided with platform specific configuration, provided by some board driver setup code. Didn't implement oftree probing yet, as it's rarely found on x86. Cc: linux-gpio@vger.kernel.org Cc: linus.walleij@linaro.org Cc: bgolaszewski@baylibre.com Cc: dvhart@infradead.org Cc: platform-driver-x86@vger.kernel.org Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by:
Enrico Weigelt, metux IT consult <info@metux.net> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 09 Feb, 2019 1 commit
-
-
Linus Walleij authored
This adds a driver for Gateworks PLD GPIO, that exist in two instances on the Gateworks Cambria GW2358-4 router platform at least. Cc: Imre Kaloz <kaloz@openwrt.org> Cc: Tim Harvey <tharvey@gateworks.com> Reviewed-by:
Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 28 Jan, 2019 1 commit
-
-
Andrew Lunn authored
Some TQ-Systems ComExpress modules contain an IO controller with 8 GPIO lines. Signed-off-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 21 Dec, 2018 2 commits
-
-
Jan Kotas authored
This patch adds a driver for Cadence GPIO controller. It can be enabled with GPIO_CADENCE Kconfig option. It uses generic GPIO infrastructure and works as an interrupt controller. At the moment it only supports level sensitive irqs. Signed-off-by:
Jan Kotas <jank@cadence.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
Andrei.Stefanescu@microchip.com authored
PIOBU pins do not lose their voltage during Backup/Self-refresh. This patch adds a simple GPIO controller for them and a maintainer for the driver. This driver adds support for using the pins as GPIO offering the possibility to read/set the voltage. Signed-off-by:
Andrei Stefanescu <andrei.stefanescu@microchip.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 10 Oct, 2018 1 commit
-
-
Eugeniy Paltsev authored
Add single-register MMIO GPIO driver for complex cases where only several fields in register belong to GPIO lines and each GPIO line owns a field with different length and on/off value. Such CREG GPIOs are used in Synopsys AXS10x and HSDK boards. Signed-off-by:
Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 28 Sep, 2018 1 commit
-
-
Uwe Kleine-König authored
This driver controls a SIOX device that provides 20 I/O lines. The first twelve are fixed inputs, the remaining eight are outputs. Acked-by:
Gavin Schenk <g.schenk@eckelmann.de> Signed-off-by:
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 25 Sep, 2018 1 commit
-
-
Linus Walleij authored
All the other core files are named "gpiolib-<something>" so let's rename the devres as well so we have some logical namespacing here. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 29 Aug, 2018 1 commit
-
-
Paul Cercueil authored
The pinctrl-ingenic driver is now handling the GPIO chips directly. Signed-off-by:
Paul Cercueil <paul@crapouillou.net> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 09 Jul, 2018 1 commit
-
-
Sergio Paracuellos authored
Add driver support for gpio of MT7621 SoC. Signed-off-by:
Sergio Paracuellos <sergio.paracuellos@gmail.com> Reviewed-by:
NeilBrown <neil@brown.name> [Switched wording WIDTH to STRIDE] Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 05 Jun, 2018 1 commit
-
-
Richard Fitzgerald authored
This adds support for the GPIOs on Cirrus Logic Madera class codecs. Any pins not used for special functions (see the pinctrl driver) can be used as general single-bit input or output lines. The number of available GPIOs varies between codecs. Note that this is part of a composite MFD for these codecs and can only be used with the corresponding MFD and other child drivers on those silicon. The GPIO block on these codecs does not exist indepedently of the rest of the MFD. Signed-off-by:
Nariman Poushin <nariman@opensource.cirrus.com> Signed-off-by:
Richard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by:
Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 27 Mar, 2018 2 commits
-
-
Baolin Wang authored
The Spreadtrum PMIC EIC controller contains only one bank of debounce EIC, and this bank contains 16 EICs. Each EIC can only be used as input mode, as well as supporting the debounce and the capability to trigger interrupts when detecting input signals. Signed-off-by:
Baolin Wang <baolin.wang@linaro.org> Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
Baolin Wang authored
The Spreadtrum digital-chip EIC controller has 4 sub-modules: debounce EIC, latch EIC, async EIC and sync EIC, and each sub-module can has multiple banks and each bank contains 8 EICs. Each EIC can only be used as input mode, and has the capability to trigger interrupts when detecting input signals. Signed-off-by:
Baolin Wang <baolin.wang@linaro.org> Reviewed-by:
Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-