/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: 22 gpio used for the sda signal, this should be flagged as 23 active high using open drain with (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN) [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 19 * @sda_is_output_only: SDA output drivers can't be turned off. 20 * This is for clients that can only read SDA/SCL. 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. [all …]
|
/linux/drivers/i2c/busses/ |
H A D | i2c-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <linux/i2c-algo-bit.h> 16 #include <linux/platform_data/i2c-gpio.h> 22 struct gpio_desc *sda; member 35 * Toggle SDA by changing the output value of the pin. This is only 36 * valid for pins configured as open drain (i.e. setting the value 43 gpiod_set_value_cansleep(priv->sda, state); in i2c_gpio_setsda_val() 48 * for pins that are configured as open drain and for output-only 56 gpiod_set_value_cansleep(priv->scl, state); in i2c_gpio_setscl_val() 63 return gpiod_get_value_cansleep(priv->sda); in i2c_gpio_getsda() [all …]
|
/linux/arch/arm/boot/dts/microchip/ |
H A D | at91sam9x5.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9x5.dtsi - Device Tree Include file for AT91SAM9x5 family SoC 11 #include <dt-bindings/dma/at91.h> 12 #include <dt-bindings/pinctrl/at91.h> 13 #include <dt-bindings/interrupt-controller/irq.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/clock/at91.h> 16 #include <dt-bindings/mfd/at91-usart.h> 19 #address-cells = <1>; 20 #size-cells = <1>; [all …]
|
H A D | at91-foxg20.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91-foxg20.dts - Device Tree file for Acme Systems FoxG20 board 9 /dts-v1/; 26 clock-frequency = <32768>; 30 clock-frequency = <18432000>; 38 compatible = "atmel,tcb-timer"; 43 compatible = "atmel,tcb-timer"; 49 atmel,vbus-gpio = <&pioC 6 GPIO_ACTIVE_HIGH>; 54 pinctrl-0 = < 58 pinctrl-names = "default"; [all …]
|
H A D | at91sam9rl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9rl.dtsi - Device Tree Include file for AT91SAM9RL family SoC 6 * Alexandre Belloni <alexandre.belloni@free-electrons.com> 9 #include <dt-bindings/pinctrl/at91.h> 10 #include <dt-bindings/clock/at91.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/pwm/pwm.h> 14 #include <dt-bindings/mfd/at91-usart.h> 17 #address-cells = <1>; [all …]
|
H A D | at91sam9261.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * at91sam9261.dtsi - Device Tree Include file for AT91SAM9261 SoC 5 * Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot@traphandler.com> 8 #include <dt-bindings/pinctrl/at91.h> 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/clock/at91.h> 12 #include <dt-bindings/mfd/at91-usart.h> 15 #address-cells = <1>; 16 #size-cells = <1>; [all …]
|
H A D | at91rm9200.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91rm9200.dtsi - Device Tree Include file for AT91RM9200 family SoC 12 #include <dt-bindings/pinctrl/at91.h> 13 #include <dt-bindings/interrupt-controller/irq.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/clock/at91.h> 16 #include <dt-bindings/mfd/at91-usart.h> 19 #address-cells = <1>; 20 #size-cells = <1>; 23 interrupt-parent = <&aic>; [all …]
|
H A D | at91sam9260.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9260.dtsi - Device Tree Include file for AT91SAM9260 family SoC 7 * 2011 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> 10 #include <dt-bindings/pinctrl/at91.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/clock/at91.h> 14 #include <dt-bindings/mfd/at91-usart.h> 17 #address-cells = <1>; 18 #size-cells = <1>; [all …]
|
H A D | at91sam9n12.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9n12.dtsi - Device Tree include file for AT91SAM9N12 SoC 9 #include <dt-bindings/dma/at91.h> 10 #include <dt-bindings/pinctrl/at91.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/clock/at91.h> 14 #include <dt-bindings/mfd/at91-usart.h> 17 #address-cells = <1>; 18 #size-cells = <1>; [all …]
|
H A D | at91sam9263.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * at91sam9263.dtsi - Device Tree Include file for AT91SAM9263 family SoC 5 * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> 8 #include <dt-bindings/pinctrl/at91.h> 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/clock/at91.h> 12 #include <dt-bindings/mfd/at91-usart.h> 15 #address-cells = <1>; 16 #size-cells = <1>; [all …]
|
H A D | at91sam9g45.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9g45.dtsi - Device Tree Include file for AT91SAM9G45 family SoC 11 #include <dt-bindings/dma/at91.h> 12 #include <dt-bindings/pinctrl/at91.h> 13 #include <dt-bindings/interrupt-controller/irq.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/clock/at91.h> 16 #include <dt-bindings/mfd/at91-usart.h> 19 #address-cells = <1>; 20 #size-cells = <1>; [all …]
|
/linux/arch/powerpc/boot/dts/ |
H A D | wii.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (C) 2008-2009 The GameCube Linux Team 10 /dts-v1/; 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/input/input.h> 15 * This is commented-out for now. 25 #address-cells = <1>; 26 #size-cells = <1>; 29 bootargs = "root=/dev/mmcblk0p2 rootwait udbg-immortal"; 34 reg = <0x00000000 0x01800000 /* MEM1 24MB 1T-SRAM */ [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
H A D | as3722.txt | 4 ------------------- 5 - compatible: Must be "ams,as3722". 6 - reg: I2C device address. 7 - interrupt-controller: AS3722 has internal interrupt controller which takes the 8 interrupt request from internal sub-blocks like RTC, regulators, GPIOs as well 10 - #interrupt-cells: Should be set to 2 for IRQ number and flags. 12 of AS3722 are defined at dt-bindings/mfd/as3722.h 14 interrupts.txt, using dt-bindings/irq. 17 -------------------- 18 - ams,enable-internal-int-pullup: Boolean property, to enable internal pullup on [all …]
|
/linux/Documentation/driver-api/ |
H A D | i2c.rst | 5 the "Inter-IC" bus, a simple bus protocol which is widely used where low 7 some vendors use another name (such as "Two-Wire Interface", TWI) for 8 the same bus. I2C only needs two signals (SCL for clock, SDA for data), 12 I2C is a multi-master bus; open drain signaling is used to arbitrate 38 .. kernel-doc:: include/linux/i2c.h 41 .. kernel-doc:: drivers/i2c/i2c-boardinfo.c 44 .. kernel-doc:: drivers/i2c/i2c-core-base.c 47 .. kernel-doc:: drivers/i2c/i2c-core-smbus.c
|
H A D | pin-control.rst | 9 - Enumerating and naming controllable pins 11 - Multiplexing of pins, pads, fingers (etc) see below for details 13 - Configuration of pins, pads, fingers (etc), such as software-controlled 14 biasing and driving mode specific pins, such as pull-up, pull-down, open drain, 17 Top-level interface 22 - A PIN CONTROLLER is a piece of hardware, usually a set of registers, that 26 - PINS are equal to pads, fingers, balls or whatever packaging input or 30 be sparse - i.e. there may be gaps in the space with numbers where no 60 .. code-block:: c 97 See ``arch/arm/mach-ux500/Kconfig`` for an example. [all …]
|
/linux/arch/arm/boot/dts/nvidia/ |
H A D | tegra124-apalis-v1.2.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 3 * Copyright 2016-2018 Toradex AG 7 #include "tegra124-apalis-emc.dtsi" 21 avddio-pex-supply = <®_1v05_vdd>; 22 avdd-pex-pll-supply = <®_1v05_vdd>; 23 avdd-pll-erefe-supply = <®_1v05_avdd>; 24 dvddio-pex-supply = <®_1v05_vdd>; 25 hvdd-pex-pll-e-supply = <®_module_3v3>; 26 hvdd-pex-supply = <®_module_3v3>; 27 vddio-pex-ctl-supply = <®_module_3v3>; [all …]
|
H A D | tegra124-apalis.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR X11 3 * Copyright 2016-2019 Toradex AG 7 #include "tegra124-apalis-emc.dtsi" 20 avddio-pex-supply = <®_1v05_vdd>; 21 avdd-pex-pll-supply = <®_1v05_vdd>; 22 avdd-pll-erefe-supply = <®_1v05_avdd>; 23 dvddio-pex-supply = <®_1v05_vdd>; 24 hvdd-pex-pll-e-supply = <®_module_3v3>; 25 hvdd-pex-supply = <®_module_3v3>; 26 vddio-pex-ctl-supply = <®_module_3v3>; [all …]
|
H A D | tegra30-apalis-v1.1.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 16 avdd-pexa-supply = <&vdd2_reg>; 17 avdd-pexb-supply = <&vdd2_reg>; 18 avdd-pex-pll-supply = <&vdd2_reg>; 19 avdd-plle-supply = <&ldo6_reg>; 20 hvdd-pex-supply = <®_module_3v3>; 21 vddio-pex-ctl-supply = <®_module_3v3>; 22 vdd-pexa-supply = <&vdd2_reg>; 23 vdd-pexb-supply = <&vdd2_reg>; 27 nvidia,num-lanes = <4>; [all …]
|
H A D | tegra30-apalis.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 15 avdd-pexa-supply = <&vdd2_reg>; 16 avdd-pexb-supply = <&vdd2_reg>; 17 avdd-pex-pll-supply = <&vdd2_reg>; 18 avdd-plle-supply = <&ldo6_reg>; 19 hvdd-pex-supply = <®_module_3v3>; 20 vddio-pex-ctl-supply = <®_module_3v3>; 21 vdd-pexa-supply = <&vdd2_reg>; 22 vdd-pexb-supply = <&vdd2_reg>; 26 nvidia,num-lanes = <4>; [all …]
|
H A D | tegra30-lg-x3.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/input/gpio-keys.h> 4 #include <dt-bindings/input/input.h> 5 #include <dt-bindings/leds/common.h> 6 #include <dt-bindings/mfd/max77620.h> 7 #include <dt-bindings/thermal/thermal.h> 10 #include "tegra30-cpu-opp.dtsi" 11 #include "tegra30-cpu-opp-microvolt.dtsi" 14 chassis-type = "handset"; 30 * pre-existing /chosen node to be available to insert the [all …]
|
/linux/Documentation/driver-api/gpio/ |
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/arch/arm/boot/dts/st/ |
H A D | stm32f7-pinctrl.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 3 * Copyright (C) STMicroelectronics 2017 - All Rights Reserved 7 #include <dt-bindings/pinctrl/stm32-pinfunc.h> 8 #include <dt-bindings/mfd/stm32f7-rcc.h> 13 #address-cells = <1>; 14 #size-cells = <1>; 16 interrupt-parent = <&exti>; 20 gpio-controller; 21 #gpio-cells = <2>; 22 interrupt-controller; [all …]
|
/linux/fs/kernfs/ |
H A D | file.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * fs/kernfs/file.c - kernfs file implementation 5 * Copyright (c) 2001-3 Patrick Mochel 19 #include "kernfs-internal.h" 47 return &kernfs_locks->open_file_mutex[idx]; in kernfs_open_file_mutex_ptr() 62 * of_on - Get the kernfs_open_node of the specified kernfs_open_file 69 return rcu_dereference_protected(of->kn->attr.open, in of_on() 70 !list_empty(&of->list)); in of_on() 74 * kernfs_deref_open_node_locked - Get kernfs_open_node corresponding to @kn 78 * Fetch and return ->attr.open of @kn when caller holds the [all …]
|
/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8mp-phyboard-pollux-rdk.dts | 1 // SPDX-License-Identifier: GPL-2.0 7 /dts-v1/; 9 #include <dt-bindings/phy/phy-imx8-pcie.h> 10 #include <dt-bindings/leds/leds-pca9532.h> 11 #include <dt-bindings/pwm/pwm.h> 12 #include "imx8mp-phycore-som.dtsi" 15 model = "PHYTEC phyBOARD-Pollux i.MX8MP"; 16 compatible = "phytec,imx8mp-phyboard-pollux-rdk", 17 "phytec,imx8mp-phycore-som", "fsl,imx8mp"; 20 stdout-path = &uart1; [all …]
|