diff options
author | Michael Hennerich <michael.hennerich@analog.com> | 2017-04-11 08:16:15 -0400 |
---|---|---|
committer | Peter Rosin <peda@axentia.se> | 2017-04-12 11:06:05 -0400 |
commit | 84ffac897161745b173eb879513bfa311549b7e4 (patch) | |
tree | 87850edd36b61bf785f499b90171d0a61926ad25 | |
parent | f089236114cb09594d7e27a15ed72c2ebb669448 (diff) |
dt-bindings: i2c: mux: ltc4306: Add dt-bindings for I2C multiplexer/switch
This patch adds support for the Analog Devices / Linear Technology
LTC4306 and LTC4305 4/2 Channel I2C Bus Multiplexer/Switches.
The LTC4306 optionally provides two general purpose input/output pins
(GPIOs) that can be configured as logic inputs, opendrain outputs or
push-pull outputs via the generic GPIOLIB framework.
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Peter Rosin <peda@axentia.se>
-rw-r--r-- | Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt b/Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt new file mode 100644 index 000000000000..1e98c6b3a721 --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-ltc4306.txt | |||
@@ -0,0 +1,61 @@ | |||
1 | * Linear Technology / Analog Devices I2C bus switch | ||
2 | |||
3 | Required Properties: | ||
4 | |||
5 | - compatible: Must contain one of the following. | ||
6 | "lltc,ltc4305", "lltc,ltc4306" | ||
7 | - reg: The I2C address of the device. | ||
8 | |||
9 | The following required properties are defined externally: | ||
10 | |||
11 | - Standard I2C mux properties. See i2c-mux.txt in this directory. | ||
12 | - I2C child bus nodes. See i2c-mux.txt in this directory. | ||
13 | |||
14 | Optional Properties: | ||
15 | |||
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 | ||
18 | children in idle state. This is necessary for example, if there are several | ||
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 | ||
22 | the second cell is used to specify flags. | ||
23 | See ../gpio/gpio.txt for more information. | ||
24 | - ltc,downstream-accelerators-enable: Enables the rise time accelerators | ||
25 | on the downstream port. | ||
26 | - ltc,upstream-accelerators-enable: Enables the rise time accelerators | ||
27 | on the upstream port. | ||
28 | |||
29 | Example: | ||
30 | |||
31 | ltc4306: i2c-mux@4a { | ||
32 | compatible = "lltc,ltc4306"; | ||
33 | #address-cells = <1>; | ||
34 | #size-cells = <0>; | ||
35 | reg = <0x4a>; | ||
36 | |||
37 | gpio-controller; | ||
38 | #gpio-cells = <2>; | ||
39 | |||
40 | i2c@0 { | ||
41 | #address-cells = <1>; | ||
42 | #size-cells = <0>; | ||
43 | reg = <0>; | ||
44 | |||
45 | eeprom@50 { | ||
46 | compatible = "at,24c02"; | ||
47 | reg = <0x50>; | ||
48 | }; | ||
49 | }; | ||
50 | |||
51 | i2c@1 { | ||
52 | #address-cells = <1>; | ||
53 | #size-cells = <0>; | ||
54 | reg = <1>; | ||
55 | |||
56 | eeprom@50 { | ||
57 | compatible = "at,24c02"; | ||
58 | reg = <0x50>; | ||
59 | }; | ||
60 | }; | ||
61 | }; | ||