Home
last modified time | relevance | path

Searched +full:i2c +full:- +full:gpio (Results 1 – 25 of 1116) sorted by relevance

12345678910>>...45

/kernel/linux/linux-4.19/Documentation/devicetree/bindings/i2c/
Di2c-gpio.txt1 Device-Tree bindings for i2c gpio driver
4 - compatible = "i2c-gpio";
5 - sda-gpios: gpio used for the sda signal, this should be flagged as
7 from <dt-bindings/gpio/gpio.h> since the signal is by definition
9 - scl-gpios: gpio used for the scl signal, this should be flagged as
11 from <dt-bindings/gpio/gpio.h> since the signal is by definition
15 - i2c-gpio,scl-output-only: scl as output only
16 - i2c-gpio,delay-us: delay between GPIO operations (may depend on each platform)
17 - i2c-gpio,timeout-ms: timeout to get data
20 - gpios: sda and scl gpio, alternative for {sda,scl}-gpios
[all …]
Di2c-mux.txt1 Common i2c bus multiplexer/switch properties.
3 An i2c bus multiplexer/switch will have several child busses that are
4 numbered uniquely in a device dependent manner. The nodes for an i2c bus
8 - #address-cells = <1>;
9 This property is required if the i2c-mux child node does not exist.
11 - #size-cells = <0>;
12 This property is required if the i2c-mux child node does not exist.
14 - i2c-mux
15 For i2c multiplexers/switches that have child nodes that are a mixture
16 of both i2c child busses and other child nodes, the 'i2c-mux' subnode
[all …]
Di2c-mux-ltc4306.txt1 * Linear Technology / Analog Devices I2C bus switch
5 - compatible: Must contain one of the following.
7 - reg: The I2C address of the device.
11 - Standard I2C mux properties. See i2c-mux.txt in this directory.
12 - I2C child bus nodes. See i2c-mux.txt in this directory.
16 - enable-gpios: Reference to the GPIO connected to the enable input.
17 - i2c-mux-idle-disconnect: Boolean; if defined, forces mux to disconnect all
19 multiplexers on the bus and the devices behind them use same I2C addresses.
20 - gpio-controller: Marks the device node as a GPIO Controller.
21 - #gpio-cells: Should be two. The first cell is the pin number and
[all …]
Di2c-mux-gpio.txt1 GPIO-based I2C Bus Mux
3 This binding describes an I2C bus multiplexer that uses GPIOs to
4 route the I2C signals.
6 +-----+ +-----+
8 +------------+ +-----+ +-----+
10 | | /--------+--------+
11 | +------+ | +------+ child bus A, on GPIO value set to 0
12 | | I2C |-|--| Mux |
13 | +------+ | +--+---+ child bus B, on GPIO value set to 1
14 | | | \----------+--------+--------+
[all …]
Di2c-arb-gpio-challenge.txt1 GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
3 This uses GPIO lines and a challenge & response mechanism to arbitrate who is
4 the master of an I2C bus in a multimaster situation.
7 the standard I2C multi-master rules. Using GPIOs is generally useful in
12 * It is nonstandard (not using standard I2C multimaster)
14 problems (hard to tell if i2c issues were caused by one master, another, or
21 others can see. These are all active low with pull-ups enabled. We'll
24 - OUR_CLAIM: output from us signaling to other hosts that we want the bus
25 - THEIR_CLAIMS: output from others signaling that they want the bus
43 - compatible: i2c-arb-gpio-challenge
[all …]
Di2c-imx.txt1 * Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX
4 - compatible :
5 - "fsl,imx1-i2c" for I2C compatible with the one integrated on i.MX1 SoC
6 - "fsl,imx21-i2c" for I2C compatible with the one integrated on i.MX21 SoC
7 - "fsl,vf610-i2c" for I2C compatible with the one integrated on Vybrid vf610 SoC
8 - reg : Should contain I2C/HS-I2C registers location and length
9 - interrupts : Should contain I2C/HS-I2C interrupt
10 - clocks : Should contain the I2C/HS-I2C clock specifier
13 - clock-frequency : Constains desired I2C/HS-I2C bus clock frequency in Hz.
15 - dmas: A list of two dma specifiers, one for each entry in dma-names.
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/i2c/
Di2c-gpio.yaml1 # 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#
7 title: Bindings for GPIO bitbanged I2C
10 - Wolfram Sang <wolfram@the-dreams.de>
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
[all …]
Di2c-mux.txt1 Common i2c bus multiplexer/switch properties.
3 An i2c bus multiplexer/switch will have several child busses that are
4 numbered uniquely in a device dependent manner. The nodes for an i2c bus
8 - #address-cells = <1>;
9 This property is required if the i2c-mux child node does not exist.
11 - #size-cells = <0>;
12 This property is required if the i2c-mux child node does not exist.
14 - i2c-mux
15 For i2c multiplexers/switches that have child nodes that are a mixture
16 of both i2c child busses and other child nodes, the 'i2c-mux' subnode
[all …]
Di2c-mux-ltc4306.txt1 * Linear Technology / Analog Devices I2C bus switch
5 - compatible: Must contain one of the following.
7 - reg: The I2C address of the device.
11 - Standard I2C mux properties. See i2c-mux.txt in this directory.
12 - I2C child bus nodes. See i2c-mux.txt in this directory.
16 - enable-gpios: Reference to the GPIO connected to the enable input.
17 - i2c-mux-idle-disconnect: Boolean; if defined, forces mux to disconnect all
19 multiplexers on the bus and the devices behind them use same I2C addresses.
20 - gpio-controller: Marks the device node as a GPIO Controller.
21 - #gpio-cells: Should be two. The first cell is the pin number and
[all …]
Di2c-mux-gpio.txt1 GPIO-based I2C Bus Mux
3 This binding describes an I2C bus multiplexer that uses GPIOs to
4 route the I2C signals.
6 +-----+ +-----+
8 +------------+ +-----+ +-----+
10 | | /--------+--------+
11 | +------+ | +------+ child bus A, on GPIO value set to 0
12 | | I2C |-|--| Mux |
13 | +------+ | +--+---+ child bus B, on GPIO value set to 1
14 | | | \----------+--------+--------+
[all …]
Di2c-arb-gpio-challenge.txt1 GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
3 This uses GPIO lines and a challenge & response mechanism to arbitrate who is
4 the master of an I2C bus in a multimaster situation.
7 the standard I2C multi-master rules. Using GPIOs is generally useful in
12 * It is nonstandard (not using standard I2C multimaster)
14 problems (hard to tell if i2c issues were caused by one master, another, or
21 others can see. These are all active low with pull-ups enabled. We'll
24 - OUR_CLAIM: output from us signaling to other hosts that we want the bus
25 - THEIR_CLAIMS: output from others signaling that they want the bus
43 - compatible: i2c-arb-gpio-challenge
[all …]
/kernel/linux/linux-4.19/Documentation/i2c/muxes/
Di2c-mux-gpio1 Kernel driver i2c-mux-gpio
6 -----------
8 i2c-mux-gpio is an i2c mux driver providing access to I2C bus segments
9 from a master I2C bus and a hardware MUX controlled through GPIO pins.
13 ---------- ---------- Bus segment 1 - - - - -
14 | | SCL/SDA | |-------------- | |
15 | |------------| |
17 | Linux | GPIO 1..N | MUX |--------------- Devices
18 | |------------| | | |
20 | | | |---------------| |
[all …]
/kernel/linux/linux-5.10/Documentation/i2c/muxes/
Di2c-mux-gpio.rst2 Kernel driver i2c-mux-gpio
8 -----------
10 i2c-mux-gpio is an i2c mux driver providing access to I2C bus segments
11 from a master I2C bus and a hardware MUX controlled through GPIO pins.
15 ---------- ---------- Bus segment 1 - - - - -
16 | | SCL/SDA | |-------------- | |
17 | |------------| |
19 | Linux | GPIO 1..N | MUX |--------------- Devices
20 | |------------| | | |
22 | | | |---------------| |
[all …]
/kernel/linux/linux-5.10/drivers/staging/sm750fb/
Dddk750_swi2c.c1 // SPDX-License-Identifier: GPL-2.0
5 * swi2c.c --- SM750/SM718 DDK
6 * This file contains the source code for I2C using software
16 * I2C Software Master Driver:
18 * Each i2c cycle is split into 4 sections. Each of these section marks
22 * +-------------+-------------+-------------+-------------+
37 * ---------------+---+---+---+---+
40 * ---------------+---+---+---+---+
43 * ---------------+---+---+---+---+
46 * ---------------+---+---+---+---+
[all …]
/kernel/linux/linux-4.19/drivers/staging/sm750fb/
Dddk750_swi2c.c7 * swi2c.c --- SM750/SM718 DDK
8 * This file contains the source code for I2C using software
18 * I2C Software Master Driver:
20 * Each i2c cycle is split into 4 sections. Each of these section marks
24 * +-------------+-------------+-------------+-------------+
39 * ---------------+---+---+---+---+
42 * ---------------+---+---+---+---+
45 * ---------------+---+---+---+---+
48 * ---------------+---+---+---+---+
51 * ---------------+---+---+---+---+
[all …]
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Daspeed-bmc-opp-tacoma.dts1 // SPDX-License-Identifier: GPL-2.0-or-later
3 /dts-v1/;
5 #include "aspeed-g6.dtsi"
6 #include <dt-bindings/gpio/aspeed-gpio.h>
7 #include <dt-bindings/i2c/i2c.h>
8 #include <dt-bindings/leds/leds-pca955x.h>
12 compatible = "ibm,tacoma-bmc", "aspeed,ast2600";
15 stdout-path = &uart5;
24 reserved-memory {
25 #address-cells = <1>;
[all …]
Daspeed-bmc-opp-mihawk.dts1 // SPDX-License-Identifier: GPL-2.0+
2 /dts-v1/;
3 #include "aspeed-g5.dtsi"
4 #include <dt-bindings/gpio/aspeed-gpio.h>
5 #include <dt-bindings/leds/leds-pca955x.h>
9 compatible = "ibm,mihawk-bmc", "aspeed,ast2500";
59 stdout-path = &uart5;
67 reserved-memory {
68 #address-cells = <1>;
69 #size-cells = <1>;
[all …]
/kernel/linux/linux-5.10/drivers/i2c/muxes/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 # Multiplexer I2C chip drivers configuration
6 menu "Multiplexer I2C Chip support"
10 tristate "GPIO-based I2C arbitration"
15 I2C multimaster arbitration scheme using GPIOs and a challenge &
17 a GPIO.
20 will be called i2c-arb-gpio-challenge.
23 tristate "GPIO-based I2C multiplexer"
27 GPIO based I2C multiplexer. This driver provides access to
28 I2C busses connected through a MUX, which is controlled
[all …]
/kernel/linux/linux-4.19/drivers/i2c/muxes/
DKconfig2 # Multiplexer I2C chip drivers configuration
5 menu "Multiplexer I2C Chip support"
9 tristate "GPIO-based I2C arbitration"
14 I2C multimaster arbitration scheme using GPIOs and a challenge &
16 a GPIO.
19 will be called i2c-arb-gpio-challenge.
22 tristate "GPIO-based I2C multiplexer"
26 GPIO based I2C multiplexer. This driver provides access to
27 I2C busses connected through a MUX, which is controlled
28 through GPIO pins.
[all …]
Di2c-arb-gpio-challenge.c2 * GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
18 #include <linux/gpio.h>
20 #include <linux/i2c.h>
21 #include <linux/i2c-mux.h>
29 * struct i2c_arbitrator_data - Driver data for I2C arbitrator
31 * @our_gpio: GPIO we'll use to claim.
32 * @our_gpio_release: 0 if active high; 1 if active low; AKA if the GPIO ==
34 * @their_gpio: GPIO that the other side will use to claim.
35 * @their_gpio_release: 0 if active high; 1 if active low; AKA if the GPIO ==
37 * @slew_delay_us: microseconds to wait for a GPIO to go high.
[all …]
/kernel/linux/linux-5.10/sound/soc/codecs/
Dwm1250-ev1.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Driver for the 1250-EV1 audio I/O module
11 #include <linux/i2c.h>
12 #include <linux/gpio.h>
15 #include <sound/soc-dapm.h>
16 #include <sound/wm1250-ev1.h>
27 struct gpio gpios[WM1250_EV1_NUM_GPIOS];
33 struct wm1250_priv *wm1250 = dev_get_drvdata(component->dev); in wm1250_ev1_set_bias_level()
37 ena = wm1250->gpios[WM1250_EV1_GPIO_CLK_ENA].gpio; in wm1250_ev1_set_bias_level()
39 ena = -1; in wm1250_ev1_set_bias_level()
[all …]
/kernel/linux/linux-4.19/sound/soc/codecs/
Dwm1250-ev1.c2 * Driver for the 1250-EV1 audio I/O module
16 #include <linux/i2c.h>
17 #include <linux/gpio.h>
20 #include <sound/soc-dapm.h>
21 #include <sound/wm1250-ev1.h>
32 struct gpio gpios[WM1250_EV1_NUM_GPIOS];
38 struct wm1250_priv *wm1250 = dev_get_drvdata(component->dev); in wm1250_ev1_set_bias_level()
42 ena = wm1250->gpios[WM1250_EV1_GPIO_CLK_ENA].gpio; in wm1250_ev1_set_bias_level()
44 ena = -1; in wm1250_ev1_set_bias_level()
68 SND_SOC_DAPM_ADC("ADC", "wm1250-ev1 Capture", SND_SOC_NOPM, 0, 0),
[all …]
/kernel/linux/linux-5.10/drivers/i2c/busses/
Di2c-pca-platform.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Platform driver for the PCA9564 I2C controller.
17 #include <linux/i2c.h>
20 #include <linux/i2c-algo-pca.h>
21 #include <linux/platform_data/i2c-pca-platform.h>
22 #include <linux/gpio/consumer.h>
32 struct gpio_desc *gpio; member
44 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte8() local
45 return ioread8(i2c->reg_base + reg); in i2c_pca_pf_readbyte8()
50 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte16() local
[all …]
/kernel/linux/linux-4.19/drivers/i2c/busses/
Di2c-pca-platform.c4 * Platform driver for the PCA9564 I2C controller.
19 #include <linux/i2c.h>
22 #include <linux/i2c-algo-pca.h>
23 #include <linux/platform_data/i2c-pca-platform.h>
24 #include <linux/gpio/consumer.h>
34 struct gpio_desc *gpio; member
46 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte8() local
47 return ioread8(i2c->reg_base + reg); in i2c_pca_pf_readbyte8()
52 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte16() local
53 return ioread8(i2c->reg_base + reg * 2); in i2c_pca_pf_readbyte16()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/pinctrl/
Dpinctrl-mcp23s08.txt2 8-/16-bit I/O expander with serial interface (I2C/SPI)
5 - compatible : Should be
6 - "mcp,mcp23s08" (DEPRECATED) for 8 GPIO SPI version
7 - "mcp,mcp23s17" (DEPRECATED) for 16 GPIO SPI version
8 - "mcp,mcp23008" (DEPRECATED) for 8 GPIO I2C version or
9 - "mcp,mcp23017" (DEPRECATED) for 16 GPIO I2C version of the chip
11 - "microchip,mcp23s08" for 8 GPIO SPI version
12 - "microchip,mcp23s17" for 16 GPIO SPI version
13 - "microchip,mcp23s18" for 16 GPIO SPI version
14 - "microchip,mcp23008" for 8 GPIO I2C version or
[all …]

12345678910>>...45