| /linux/Documentation/devicetree/bindings/pinctrl/ | 
| H A D | qcom,pmic-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/pinctrl/qcom,pmic-gpio.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Qualcomm PMIC GPIO block
 10   - Bjorn Andersson <bjorn.andersson@linaro.org>
 13   This binding describes the GPIO block(s) found in the 8xxx series of
 19       - enum:
 20           - qcom,pm2250-gpio
 21           - qcom,pm660-gpio
 [all …]
 
 | 
| H A D | marvell,kirkwood-pinctrl.txt | 3 Please refer to marvell,mvebu-pinctrl.txt in this directory for common binding7 - compatible: "marvell,88f6180-pinctrl",
 8               "marvell,88f6190-pinctrl", "marvell,88f6192-pinctrl",
 9               "marvell,88f6281-pinctrl", "marvell,88f6282-pinctrl",
 10               "marvell,98dx4122-pinctrl", "marvell,98dx1135-pinctrl"
 11 - reg: register specifier of MPP registers
 14 It also support the 88f6281-based variant in the 98dx412x Bobcat SoCs.
 24 mpp0          0        gpio, nand(io2), spi(cs)
 28 mpp4          4        gpio, nand(io6), uart0(rxd), ptp(clk)
 32 mpp8          8        gpio, twsi0(sda), uart0(rts), uart1(rts), ptp(clk),
 [all …]
 
 | 
| H A D | marvell,armada-37xx-pinctrl.txt | 1 * Marvell Armada 37xx SoC pin and gpio controller3 Each Armada 37xx SoC come with two pin and gpio controller one for the
 6 Inside this set of register the gpio latch allows exposing some
 11 GPIO and pin controller:
 12 ------------------------
 16 Refer to pinctrl-bindings.txt in this directory for details of the
 22 - compatible:	"marvell,armada3710-sb-pinctrl", "syscon, "simple-mfd"
 24 		"marvell,armada3710-nb-pinctrl", "syscon, "simple-mfd"
 26 - reg: The first set of register are for pinctrl/gpio and the second
 28 - interrupts: list of the interrupt use by the gpio
 [all …]
 
 | 
| H A D | marvell,armada-xp-pinctrl.txt | 3 Please refer to marvell,mvebu-pinctrl.txt in this directory for common binding7 - compatible: "marvell,mv78230-pinctrl", "marvell,mv78260-pinctrl",
 8               "marvell,mv78460-pinctrl"
 9 - reg: register specifier of MPP registers
 21 mpp0          0        gpio, ge0(txclkout), lcd(d0)
 22 mpp1          1        gpio, ge0(txd0), lcd(d1)
 23 mpp2          2        gpio, ge0(txd1), lcd(d2)
 24 mpp3          3        gpio, ge0(txd2), lcd(d3)
 25 mpp4          4        gpio, ge0(txd3), lcd(d4)
 26 mpp5          5        gpio, ge0(txctl), lcd(d5)
 [all …]
 
 | 
| H A D | marvell,armada-375-pinctrl.txt | 3 Please refer to marvell,mvebu-pinctrl.txt in this directory for common binding7 - compatible: "marvell,88f6720-pinctrl"
 8 - reg: register specifier of MPP registers
 16 mpp0          0        gpio, dev(ad2), spi0(cs1), spi1(cs1)
 17 mpp1          1        gpio, dev(ad3), spi0(mosi), spi1(mosi)
 18 mpp2          2        gpio, dev(ad4), ptp(evreq), led(c0), audio(sdi)
 19 mpp3          3        gpio, dev(ad5), ptp(trig), led(p3), audio(mclk)
 20 mpp4          4        gpio, dev(ad6), spi0(miso), spi1(miso)
 21 mpp5          5        gpio, dev(ad7), spi0(cs2), spi1(cs2)
 22 mpp6          6        gpio, dev(ad0), led(p1), audio(lrclk)
 [all …]
 
 | 
| H A D | marvell,orion-pinctrl.txt | 3 Please refer to marvell,mvebu-pinctrl.txt in this directory for common binding7 - compatible: "marvell,88f5181-pinctrl",
 8               "marvell,88f5181l-pinctrl",
 9               "marvell,88f5182-pinctrl",
 10               "marvell,88f5281-pinctrl"
 12 - reg: two register areas, the first one describing the first two
 24 mpp0          0        pcie(rstout), pci(req2), gpio
 25 mpp1          1        gpio, pci(gnt2)
 26 mpp2          2        gpio, pci(req3), pci-1(pme)
 27 mpp3          3        gpio, pci(gnt3)
 [all …]
 
 | 
| /linux/drivers/gpu/drm/amd/display/dc/gpio/ | 
| H A D | gpio_base.c | 2  * Copyright 2012-15 Advanced Micro Devices, Inc.27  * Pre-requisites: headers required by header of this unit
 40  * Post-requisites: headers required by this unit
 53 	struct gpio *gpio,  in dal_gpio_open()  argument
 56 	return dal_gpio_open_ex(gpio, mode);  in dal_gpio_open()
 60 	struct gpio *gpio,  in dal_gpio_open_ex()  argument
 63 	if (gpio->pin) {  in dal_gpio_open_ex()
 68 	// No action if allocation failed during gpio construct  in dal_gpio_open_ex()
 69 	if (!gpio->hw_container.ddc) {  in dal_gpio_open_ex()
 73 	gpio->mode = mode;  in dal_gpio_open_ex()
 [all …]
 
 | 
| /linux/drivers/gpio/ | 
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only3 # GPIO infrastructure and drivers
 10 	bool "GPIO Support"
 12 	  This enables GPIO support through the generic GPIO library.
 14 	  one or more of the GPIO drivers below.
 50 	  this symbol, but new drivers should use the generic gpio-regmap
 54 	bool "Debug GPIO calls"
 57 	  Say Y here to add some extra checks and diagnostics to GPIO calls.
 60 	  non-sleeping contexts.  They can make bitbanged serial protocols
 65 	bool "/sys/class/gpio/... (sysfs interface)" if EXPERT
 [all …]
 
 | 
| H A D | gpio-aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later10 #include <linux/gpio/aspeed.h>
 11 #include <linux/gpio/driver.h>
 26  * These two headers aren't meant to be used by GPIO drivers. We need
 31 #include <linux/gpio/consumer.h>
 34 /* Non-constant mask variant of FIELD_GET() and FIELD_PREP() */
 35 #define field_get(_mask, _reg)	(((_reg) & (_mask)) >> (ffs(_mask) - 1))
 36 #define field_prep(_mask, _val)	(((_val) << (ffs(_mask) - 1)) & (_mask))
 76  * represents disabled debouncing for the GPIO. Any other value for an element
 110  *       line even when the GPIO is configured as an output. Since
 [all …]
 
 | 
| H A D | gpio-zynq.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later3  * Xilinx Zynq GPIO device driver
 5  * Copyright (C) 2009 - 2014 Xilinx, Inc.
 10 #include <linux/gpio/driver.h>
 20 #define DRIVER_NAME "zynq-gpio"
 46 					ZYNQ##str##_GPIO_BANK0_NGPIO - 1)
 49 					ZYNQ##str##_GPIO_BANK1_NGPIO - 1)
 52 					ZYNQ##str##_GPIO_BANK2_NGPIO - 1)
 55 					ZYNQ##str##_GPIO_BANK3_NGPIO - 1)
 58 					ZYNQ##str##_GPIO_BANK4_NGPIO - 1)
 [all …]
 
 | 
| H A D | gpio-npcm-sgpio.c | 1 // SPDX-License-Identifier: GPL-2.03  * Nuvoton NPCM Serial GPIO Driver
 10 #include <linux/gpio/driver.h>
 137 static void __iomem *bank_reg(struct npcm_sgpio *gpio,  in bank_reg()  argument
 143 		return gpio->base + bank->rdata_reg;  in bank_reg()
 145 		return gpio->base + bank->wdata_reg;  in bank_reg()
 147 		return gpio->base + bank->event_config;  in bank_reg()
 149 		return gpio->base + bank->event_status;  in bank_reg()
 152 		dev_WARN(gpio->chip.parent, "Getting here is an error condition");  in bank_reg()
 165 				    struct npcm_sgpio **gpio,  in npcm_sgpio_irqd_to_data()  argument
 [all …]
 
 | 
| H A D | gpio-tps65219.c | 1 // SPDX-License-Identifier: GPL-2.03  * GPIO driver for TI TPS65214/TPS65215/TPS65219 PMICs
 5  * Copyright (C) 2022, 2025 Texas Instruments Incorporated - http://www.ti.com/
 9 #include <linux/gpio/driver.h>
 21  * TPS65214 GPIO mapping
 22  * Linux gpio offset 0 -> GPIO (pin16) -> bit_offset 2
 23  * Linux gpio offset 1 -> GPO1 (pin9 ) -> bit_offset 0
 25  * TPS65215 & TPS65219 GPIO mapping
 26  * Linux gpio offset 0 -> GPIO (pin16) -> bit_offset 2
 27  * Linux gpio offset 1 -> GPO1 (pin8 ) -> bit_offset 0
 [all …]
 
 | 
| /linux/arch/arm/boot/dts/samsung/ | 
| H A D | exynos5410-pinctrl.dtsi | 1 // SPDX-License-Identifier: GPL-2.03  * Exynos5410 SoC pin-mux and pin-config device tree source
 9 #include "exynos-pinctrl.h"
 12 	gpa0: gpa0-gpio-bank {
 13 		gpio-controller;
 14 		#gpio-cells = <2>;
 16 		interrupt-controller;
 17 		#interrupt-cells = <2>;
 20 	gpa1: gpa1-gpio-bank {
 21 		gpio-controller;
 [all …]
 
 | 
| /linux/arch/arc/boot/dts/ | 
| H A D | abilis_tb101.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only15 		bus-frequency	= <166666666>;
 18 			clock-frequency  = <1000000000>;
 21 			clock-mult = <1>;
 22 			clock-div = <2>;
 25 			clock-mult = <1>;
 26 			clock-div = <6>;
 31 			pctl_tsin_s0: pctl-tsin-s0 {   /* Serial TS-in 0 */
 34 			pctl_tsin_s1: pctl-tsin-s1 {   /* Serial TS-in 1 */
 37 			pctl_gpio_a: pctl-gpio-a {     /* GPIO bank A */
 [all …]
 
 | 
| H A D | abilis_tb100.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only15 		bus-frequency	= <166666666>;
 18 			clock-frequency  = <1000000000>;
 21 			clock-mult = <1>;
 22 			clock-div = <2>;
 25 			clock-mult = <1>;
 26 			clock-div = <6>;
 31 			pctl_tsin_s0: pctl-tsin-s0 {   /* Serial TS-in 0 */
 34 			pctl_tsin_s1: pctl-tsin-s1 {   /* Serial TS-in 1 */
 37 			pctl_gpio_a: pctl-gpio-a {     /* GPIO bank A */
 [all …]
 
 | 
| /linux/Documentation/admin-guide/gpio/ | 
| H A D | gpio-sim.rst | 1 .. SPDX-License-Identifier: GPL-2.0-or-later3 Configfs GPIO Simulator
 6 The configfs GPIO Simulator (gpio-sim) provides a way to create simulated GPIO
 8 using the standard GPIO character device interface as well as manipulated
 12 ------------------------
 14 The gpio-sim module registers a configfs subsystem called ``'gpio-sim'``. For
 21 **Group:** ``/config/gpio-sim``
 23 This is the top directory of the gpio-sim configfs tree.
 25 **Group:** ``/config/gpio-sim/gpio-device``
 27 **Attribute:** ``/config/gpio-sim/gpio-device/dev_name``
 [all …]
 
 | 
| /linux/Documentation/driver-api/gpio/ | 
| H A D | drivers-on-gpio.rst | 2 Subsystem drivers using GPIO5 Note that standard kernel drivers exist for common GPIO tasks and will provide
 6 the right in-kernel and userspace APIs/ABIs for the job, and that these
 10 - leds-gpio: drivers/leds/leds-gpio.c will handle LEDs connected to  GPIO
 13 - ledtrig-gpio: drivers/leds/trigger/ledtrig-gpio.c will provide a LED trigger,
 14   i.e. a LED will turn on/off in response to a GPIO line going high or low
 15   (and that LED may in turn use the leds-gpio as per above).
 17 - gpio-keys: drivers/input/keyboard/gpio_keys.c is used when your GPIO line
 20 - gpio-keys-polled: drivers/input/keyboard/gpio_keys_polled.c is used when your
 21   GPIO line cannot generate interrupts, so it needs to be periodically polled
 [all …]
 
 | 
| /linux/Documentation/devicetree/bindings/gpio/ | 
| H A D | fsl-imx-gpio.yaml | 1 # SPDX-License-Identifier: GPL-2.03 ---
 4 $id: http://devicetree.org/schemas/gpio/fsl-imx-gpio.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Freescale i.MX/MXC GPIO controller
 10   - Shawn Guo <shawnguo@kernel.org>
 11   - Sascha Hauer <s.hauer@pengutronix.de>
 12   - Fabio Estevam <festevam@gmail.com>
 17       - enum:
 18           - fsl,imx1-gpio
 [all …]
 
 | 
| H A D | renesas,rcar-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/gpio/renesas,rcar-gpio.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Renesas R-Car General-Purpose Input/Output Ports (GPIO)
 10   - Geert Uytterhoeven <geert+renesas@glider.be>
 15       - items:
 16           - enum:
 17               - renesas,gpio-r8a7778      # R-Car M1
 18               - renesas,gpio-r8a7779      # R-Car H1
 [all …]
 
 | 
| H A D | gpio-ep9301.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/gpio/gpio-ep9301.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: EP93xx GPIO controller
 10   - Linus Walleij <linus.walleij@linaro.org>
 11   - Bartosz Golaszewski <brgl@bgdev.pl>
 12   - Nikita Shubin <nikita.shubin@maquefel.me>
 17       - const: cirrus,ep9301-gpio
 18       - items:
 [all …]
 
 | 
| H A D | fsl,qoriq-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/gpio/fsl,qoriq-gpio.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Freescale MPC512x/MPC8xxx/QorIQ/Layerscape GPIO controller
 10   - Frank Li <Frank.Li@nxp.com>
 15       - enum:
 16           - fsl,mpc5121-gpio
 17           - fsl,mpc5125-gpio
 18           - fsl,mpc8314-gpio
 [all …]
 
 | 
| /linux/arch/mips/include/asm/mach-au1x00/ | 
| H A D | gpio-au1000.h | 2  * GPIO functions for Au1000, Au1500, Au1100, Au1550, Au120012 #include <asm/mach-au1x00/au1000.h>
 14 /* The default GPIO numberspace as documented in the Alchemy manuals.
 15  * GPIO0-31 from GPIO1 block,	GPIO200-215 from GPIO2 block.
 22 #define ALCHEMY_GPIO1_MAX	(ALCHEMY_GPIO1_BASE + ALCHEMY_GPIO1_NUM - 1)
 23 #define ALCHEMY_GPIO2_MAX	(ALCHEMY_GPIO2_BASE + ALCHEMY_GPIO2_NUM - 1)
 43 struct gpio;
 45 static inline int au1000_gpio1_to_irq(int gpio)  in au1000_gpio1_to_irq()  argument
 47 	return MAKE_IRQ(1, gpio - ALCHEMY_GPIO1_BASE);  in au1000_gpio1_to_irq()
 50 static inline int au1000_gpio2_to_irq(int gpio)  in au1000_gpio2_to_irq()  argument
 [all …]
 
 | 
| /linux/drivers/ssb/ | 
| H A D | driver_gpio.c | 3  * GPIO driver6  * Copyright 2012, Hauke Mehrtens <hauke@hauke-m.de>
 13 #include <linux/gpio/driver.h>
 26 static int ssb_gpio_to_irq(struct gpio_chip *chip, unsigned int gpio)  in ssb_gpio_to_irq()  argument
 30 	if (bus->bustype == SSB_BUSTYPE_SSB)  in ssb_gpio_to_irq()
 31 		return irq_find_mapping(bus->irq_domain, gpio);  in ssb_gpio_to_irq()
 33 		return -EINVAL;  in ssb_gpio_to_irq()
 41 static int ssb_gpio_chipco_get_value(struct gpio_chip *chip, unsigned int gpio)  in ssb_gpio_chipco_get_value()  argument
 45 	return !!ssb_chipco_gpio_in(&bus->chipco, 1 << gpio);  in ssb_gpio_chipco_get_value()
 48 static int ssb_gpio_chipco_set_value(struct gpio_chip *chip, unsigned int gpio,  in ssb_gpio_chipco_set_value()  argument
 [all …]
 
 | 
| /linux/arch/arm64/boot/dts/amlogic/ | 
| H A D | amlogic-s6.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)6 #include <dt-bindings/interrupt-controller/irq.h>
 7 #include <dt-bindings/interrupt-controller/arm-gic.h>
 8 #include <dt-bindings/gpio/gpio.h>
 9 #include <dt-bindings/pinctrl/amlogic,pinctrl.h>
 12 		#address-cells = <2>;
 13 		#size-cells = <0>;
 17 			compatible = "arm,cortex-a510";
 19 			enable-method = "psci";
 24 			compatible = "arm,cortex-a510";
 [all …]
 
 | 
| /linux/arch/arm64/boot/dts/ti/ | 
| H A D | k3-am65-iot2050-arduino-connector.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only3  * Copyright (c) Siemens AG, 2018-2023
 13 	pinctrl-names =
 15 		"d0-uart0-rxd",  "d0-gpio",  "d0-gpio-pullup",  "d0-gpio-pulldown",
 16 		"d1-uart0-txd",  "d1-gpio",  "d1-gpio-pullup",  "d1-gpio-pulldown",
 17 		"d2-uart0-ctsn", "d2-gpio",  "d2-gpio-pullup",  "d2-gpio-pulldown",
 18 		"d3-uart0-rtsn", "d3-gpio",  "d3-gpio-pullup",  "d3-gpio-pulldown",
 19 		"d10-spi0-cs0",  "d10-gpio", "d10-gpio-pullup", "d10-gpio-pulldown",
 20 		"d11-spi0-d0",   "d11-gpio", "d11-gpio-pullup", "d11-gpio-pulldown",
 21 		"d12-spi0-d1",   "d12-gpio", "d12-gpio-pullup", "d12-gpio-pulldown",
 [all …]
 
 |