zephyr/dts/bindings/i2c/ti,tca954x-base.yaml

59 lines
1.5 KiB
YAML

# Copyright (c) 2020, Innoseis BV
# SPDX-License-Identifier: Apache-2.0
# Common fields for TI TCA954X I2C mux family
description: |
TCA954x I2C switch
Each channel is represented by a separate devicetree child node.
The channel node can then be used as a standard i2c bus controller
like in the following simplified example:
/* The tca954x node must be a child of an i2c controller */
mux: tca9546a@77 {
compatible = "ti,tca9546a";
reg = <0x77>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
mux_i2c@0 {
compatible: "ti,tca9546a-channel"
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
temp_sens_0: tmp116@49 {
compatible = "ti,tmp116";
reg = <0x49>;
};
};
mux_i2c@1 {
compatible: "ti,tca9546a-channel"
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
temp_sens_1: tmp116@49 {
compatible = "ti,tmp116";
reg = <0x49>;
};
};
};
include: [i2c-device.yaml]
properties:
reset-gpios:
type: phandle-array
description: |
GPIO connected to the controller RESET pin. This pin is active-low.
child-binding:
description: TCA954x I2C switch channel node
include: [i2c-controller.yaml]
on-bus: i2c