/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra210-p2571.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 5 #include "tegra210-p2530.dtsi" 12 pinctrl-names = "boot"; 13 pinctrl-0 = <&state_boot>; 20 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 21 nvidia,open-drain = <TEGRA_PIN_DISABLE>; 22 nvidia,io-hv = <TEGRA_PIN_DISABLE>; 29 nvidia,enable-input = <TEGRA_PIN_DISABLE>; [all …]
|
H A D | tegra210-p2595.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 10 pinctrl-names = "boot"; 11 pinctrl-0 = <&state_boot>; 19 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 20 nvidia,open-drain = <TEGRA_PIN_DISABLE>; 21 nvidia,io-hv = <TEGRA_PIN_ENABLE>; 28 nvidia,enable-input = <TEGRA_PIN_ENABLE>; 29 nvidia,open-drain = <TEGRA_PIN_DISABLE>; 30 nvidia,io-hv = <TEGRA_PIN_ENABLE>; [all …]
|
H A D | tegra210-p2597.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/gpio/tegra-gpio.h> 4 #include <dt-bindings/input/input.h> 5 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 23 avdd-dsi-csi-supply = <&vdd_dsi_csi>; 33 avdd-io-hdmi-dp-supply = <&avdd_1v05>; 34 vdd-hdmi-dp-pll-supply = <&vdd_1v8>; 35 hdmi-supply = <&vdd_hdmi>; 37 nvidia,ddc-i2c-bus = <&hdmi_ddc>; 38 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(CC, 1) [all …]
|
H A D | tegra210-p2894.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/input/input.h> 4 #include <dt-bindings/input/gpio-keys.h> 5 #include <dt-bindings/mfd/max77620.h> 6 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 16 stdout-path = "serial0:115200n8"; 26 pinctrl-names = "boot"; 27 pinctrl-0 = <&state_boot>; 35 nvidia,enable-input = <TEGRA_PIN_DISABLE>; 36 nvidia,open-drain = <TEGRA_PIN_DISABLE>; [all …]
|
/linux/Documentation/devicetree/bindings/i2c/ |
H A D | i2c-gpio.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/i2c/i2c-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Wolfram Sang <wsa@kernel.org> 13 - $ref: /schemas/i2c/i2c-controller.yaml# 18 - const: i2c-gpio 20 sda-gpios: 23 active high using open drain with (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN) 24 from <dt-bindings/gpio/gpio.h> since the signal is by definition [all …]
|
/linux/arch/arm/boot/dts/nuvoton/ |
H A D | nuvoton-npcm730-gsj-gpio.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 6 gpio0pp_pins: gpio0pp-pins { 8 bias-disable; 9 drive-push-pull; 11 gpio1pp_pins: gpio1pp-pins { 13 bias-disable; 14 drive-push-pull; 16 gpio2pp_pins: gpio2pp-pins { 18 bias-disable; 19 drive-push-pull; [all …]
|
/linux/Documentation/driver-api/gpio/ |
H A D | intro.rst | 17 A "General Purpose Input/Output" (GPIO) is a flexible software-controlled 25 System-on-Chip (SOC) processors heavily rely on GPIOs. In some cases, every 26 non-dedicated pin can be configured as a GPIO; and most chips have at least 31 Most PC southbridges have a few dozen GPIO-capable pins (with only the BIOS 36 - Output values are writable (high=1, low=0). Some chips also have 38 value might be driven, supporting "wire-OR" and similar schemes for the 39 other value (notably, "open drain" signaling). 41 - Input values are likewise readable (1, 0). Some chips support readback 42 of pins configured as "output", which is very useful in such "wire-OR" 44 input de-glitch/debounce logic, sometimes with software controls. [all …]
|
H A D | consumer.rst | 21 - Simple compile coverage with e.g. COMPILE_TEST - it does not matter that 25 - Truly optional GPIOLIB support - where the driver does not really make use 26 of the GPIOs on certain compile-time configurations for certain systems, but 27 will use it under other compile-time configurations. In this case the 33 some open coding of error handling should be expected when you do this. 35 All the functions that work with the descriptor-based GPIO interface are 45 With the descriptor-based interface, GPIOs are identified with an opaque, 46 non-forgeable handler that must be obtained through a call to one of the 62 see Documentation/driver-api/gpio/board.rst 73 to be electrically used with open drain. [all …]
|
H A D | driver.rst | 26 between 0 and n-1, n being the number of GPIOs managed by the chip. 29 example if a system uses a memory-mapped set of I/O-registers where 32 GPIO 30 lines are handled by one bit per line in a 32-bit register, it makes sense to 44 So for example one platform could use global numbers 32-159 for GPIOs, with a 46 global numbers 0..63 with one set of GPIO controllers, 64-79 with another type 47 of GPIO controller, and on one particular board 80-95 with an FPGA. The legacy 49 2000-2063 to identify GPIO lines in a bank of I2C GPIO expanders. 60 - methods to establish GPIO line direction 61 - methods used to access GPIO line values 62 - method to set electrical configuration for a given GPIO line [all …]
|
/linux/drivers/w1/masters/ |
H A D | w1-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * w1-gpio - GPIO w1 bus master driver 31 ddata->pullup_duration = delay; in w1_gpio_set_pullup() 33 if (ddata->pullup_duration) { in w1_gpio_set_pullup() 35 * This will OVERRIDE open drain emulation and force-pull in w1_gpio_set_pullup() 38 gpiod_set_raw_value(ddata->gpiod, 1); in w1_gpio_set_pullup() 39 msleep(ddata->pullup_duration); in w1_gpio_set_pullup() 42 * open drain emulation in the GPIO library. in w1_gpio_set_pullup() 44 gpiod_set_value(ddata->gpiod, 1); in w1_gpio_set_pullup() 46 ddata->pullup_duration = 0; in w1_gpio_set_pullup() [all …]
|
/linux/include/linux/platform_data/ |
H A D | i2c-gpio.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * i2c-gpio interface to platform code 11 * struct i2c_gpio_platform_data - Platform-dependent data for i2c-gpio 15 * @sda_is_open_drain: SDA is configured as open drain, i.e. the pin 21 * @sda_has_no_pullup: SDA is used in a non-compliant way and has no pull-up. 22 * Therefore disable open-drain. 23 * @scl_is_open_drain: SCL is set up as open drain. Same requirements 26 * @scl_has_no_pullup: SCL is used in a non-compliant way and has no pull-up. 27 * Therefore disable open-drain.
|
/linux/include/dt-bindings/gpio/ |
H A D | gpio.h | 1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */ 17 /* Bit 1 express single-endedness */ 21 /* Bit 2 express Open drain or open source */ 26 * Open Drain/Collector is the combination of single-ended open drain interface. 27 * Open Source/Emitter is the combination of single-ended open source interface.
|
/linux/Documentation/devicetree/bindings/serio/ |
H A D | ps2-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serio/ps2-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Danilo Krummrich <danilokrummrich@dk-develop.de> 14 const: ps2-gpio 16 data-gpios: 18 the gpio used for the data signal - this should be flagged as 19 active high using open drain with (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN) 20 from <dt-bindings/gpio/gpio.h> since the signal is open drain by [all …]
|
/linux/Documentation/devicetree/bindings/pwm/ |
H A D | nxp,pca9685-pwm.txt | 1 NXP PCA9685 16-channel 12-bit PWM LED controller 5 - compatible: "nxp,pca9685-pwm" 6 - #pwm-cells: Should be 2. See pwm.yaml in this directory for a description of 12 - invert (bool): boolean to enable inverted logic 13 - open-drain (bool): boolean to configure outputs with open-drain structure; 14 if omitted use totem-pole structure 22 compatible = "nxp,pca9685-pwm"; 23 #pwm-cells = <2>; 26 open-drain;
|
/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | pinctrl-palmas.txt | 4 the configuration for Pull UP/DOWN, open drain etc. 7 - compatible: It must be one of following: 8 - "ti,palmas-pinctrl" for Palma series of the pincontrol. 9 - "ti,tps65913-pinctrl" for Palma series device TPS65913. 10 - "ti,tps80036-pinctrl" for Palma series device TPS80036. 12 Please refer to pinctrl-bindings.txt in this directory for details of the 19 those pin(s), and various pin configuration parameters, such as pull-up, 20 open drain. 32 - ti,palmas-enable-dvfs1: Enable DVFS1. Configure pins for DVFS1 mode. 35 - ti,palmas-enable-dvfs2: Enable DVFS2. Configure pins for DVFS2 mode. [all …]
|
H A D | nvidia,tegra-pinmux-common.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pinctrl/nvidia,tegra-pinmux-common.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jonathan Hunter <jonathanh@nvidia.com> 14 Please refer to pinctrl-bindings.txt in this directory for details of the 22 pin configuration parameters, such as pull-up, tristate, drive strength, 46 $ref: /schemas/types.yaml#/definitions/string-array 57 description: Pull-down/up setting to apply to the pin. [all …]
|
H A D | lantiq,pinctrl-xway.txt | 4 - compatible: "lantiq,<chip>-pinctrl", where <chip> is: 10 - reg: Should contain the physical address and length of the gpio/pinmux 13 Please refer to pinctrl-bindings.txt in this directory for details of the 21 pull-up and open-drain 36 Required subnode-properties: 37 - lantiq,groups : An array of strings. Each string contains the name of a group. 39 - lantiq,function: A string containing the name of the function to mux to the 106 Required subnode-properties: 107 - lantiq,pins : An array of strings. Each string contains the name of a pin. 110 Optional subnode-properties: [all …]
|
/linux/drivers/gpio/ |
H A D | gpio-tps65218.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 7 * This driver is based on the gpio-tps65912 implementation. 26 struct tps65218 *tps65218 = tps65218_gpio->tps65218; in tps65218_gpio_get() 30 ret = regmap_read(tps65218->regmap, TPS65218_REG_ENABLE2, &val); in tps65218_gpio_get() 41 struct tps65218 *tps65218 = tps65218_gpio->tps65218; in tps65218_gpio_set() 64 return -EPERM; in tps65218_gpio_input() 70 struct tps65218 *tps65218 = tps65218_gpio->tps65218; in tps65218_gpio_request() 74 dev_err(gc->parent, "can't work as open source\n"); in tps65218_gpio_request() 75 return -EINVAL; in tps65218_gpio_request() 81 dev_err(gc->parent, "GPO1 works only as open drain\n"); in tps65218_gpio_request() [all …]
|
H A D | gpio-tc3589x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) ST-Ericsson SA 2010 5 * Author: Hanumath Prasad <hanumath.prasad@stericsson.com> for ST-Ericsson 6 * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson 40 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_get() 55 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_set() 67 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_direction_output() 80 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_direction_input() 91 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_get_direction() 110 struct tc3589x *tc3589x = tc3589x_gpio->tc3589x; in tc3589x_gpio_set_config() [all …]
|
/linux/arch/arm/boot/dts/st/ |
H A D | ste-href-tvk1281618-r2.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 #include <dt-bindings/interrupt-controller/irq.h> 7 #include <dt-bindings/input/input.h> 11 compatible = "gpio-keys"; 12 #address-cells = <1>; 13 #size-cells = <0>; 14 vdd-supply = <&ab8500_ldo_aux1_reg>; 15 pinctrl-names = "default"; 16 pinctrl-0 = <&prox_tvk_mode>, <&hall_tvk_mode>; 37 interrupt-parent = <&gpio6>; [all …]
|
/linux/Documentation/devicetree/bindings/w1/ |
H A D | w1-gpio.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/w1/w1-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Bitbanged GPIO 1-Wire Bus 10 - Daniel Mack <zonque@gmail.com> 14 const: w1-gpio 19 - description: Data I/O pin 20 - description: Enable pin for an external pull-up resistor 22 linux,open-drain: [all …]
|
/linux/Documentation/devicetree/bindings/regulator/ |
H A D | fixed-regulator.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/regulator/fixed-regulator.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Liam Girdwood <lgirdwood@gmail.com> 11 - Mark Brown <broonie@kernel.org> 16 expected to have the regulator-min-microvolt and regulator-max-microvolt 20 - $ref: regulator.yaml# 21 - if: 25 const: regulator-fixed-clock [all …]
|
/linux/Documentation/devicetree/bindings/iio/humidity/ |
H A D | st,hts221.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lorenzo Bianconi <lorenzo@kernel.org> 23 drive-open-drain: 26 The interrupt/data ready line will be configured as open drain, which 29 vdd-supply: true 35 - compatible 36 - reg 41 - | [all …]
|
/linux/arch/arm/boot/dts/nvidia/ |
H A D | tegra124-nyan-blaze.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra124-nyan.dtsi" 6 #include "tegra124-nyan-blaze-emc.dtsi" 10 compatible = "google,nyan-blaze-rev10", "google,nyan-blaze-rev9", 11 "google,nyan-blaze-rev8", "google,nyan-blaze-rev7", 12 "google,nyan-blaze-rev6", "google,nyan-blaze-rev5", 13 "google,nyan-blaze-rev4", "google,nyan-blaze-rev3", 14 "google,nyan-blaze-rev2", "google,nyan-blaze-rev1", 15 "google,nyan-blaze-rev0", "google,nyan-blaze", [all …]
|
H A D | tegra124-nyan-big.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra124-nyan.dtsi" 6 #include "tegra124-nyan-big-emc.dtsi" 9 model = "Acer Chromebook 13 CB5-311"; 10 compatible = "google,nyan-big-rev7", "google,nyan-big-rev6", 11 "google,nyan-big-rev5", "google,nyan-big-rev4", 12 "google,nyan-big-rev3", "google,nyan-big-rev2", 13 "google,nyan-big-rev1", "google,nyan-big-rev0", 14 "google,nyan-big", "google,nyan", "nvidia,tegra124"; [all …]
|