Lines Matching +full:set +full:- +full:gpios
1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
4 $id: http://devicetree.org/schemas/i2c/i2c-mux-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO-based I2C Bus Mux
10 - Wolfram Sang <wsa@kernel.org>
13 This binding describes an I2C bus multiplexer that uses GPIOs to route the I2C signals.
15 +-----+ +-----+
17 +------------+ +-----+ +-----+
19 | | /--------+--------+
20 | +------+ | +------+ child bus A, on GPIO value set to 0
21 | | I2C |-|--| Mux |
22 | +------+ | +--+---+ child bus B, on GPIO value set to 1
23 | | | \----------+--------+--------+
24 | +------+ | | | | |
25 | | GPIO |-|-----+ +-----+ +-----+ +-----+
26 | +------+ | | dev | | dev | | dev |
27 +------------+ +-----+ +-----+ +-----+
32 Whenever an access is made to a device on a child bus, the value set in the relevant node's reg
33 property will be output using the list of GPIOs, the first in the list holding the least-
36 If an idle state is defined, using the idle-state (optional) property, whenever an access is not
37 being made to a device on a child bus, the GPIOs will be set according to the idle value.
44 const: i2c-mux-gpio
46 i2c-parent:
47 description: phandle of the I2C bus that this multiplexer's master-side port is connected to
50 mux-gpios:
51 description: list of GPIOs used to control the muxer
55 idle-state:
56 description: Value to set the muxer to when idle. When no value is given, it defaults to the
60 settle-time-us:
64 - $ref: i2c-mux.yaml
69 - compatible
70 - i2c-parent
71 - mux-gpios
74 - |
76 compatible = "i2c-mux-gpio";
77 #address-cells = <1>;
78 #size-cells = <0>;
79 mux-gpios = <&gpio1 22 0>, <&gpio1 23 0>;
80 i2c-parent = <&i2c1>;
84 #address-cells = <1>;
85 #size-cells = <0>;
88 compatible = "solomon,ssd1307fb-i2c";
91 reset-gpios = <&gpio2 7 1>;
97 #address-cells = <1>;
98 #size-cells = <0>;
102 gpio-controller;
103 #gpio-cells = <2>;