[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20181008211205.2900-3-vz@mleia.com>
Date: Tue, 9 Oct 2018 00:12:00 +0300
From: Vladimir Zapolskiy <vz@...ia.com>
To: Lee Jones <lee.jones@...aro.org>,
Linus Walleij <linus.walleij@...aro.org>,
Rob Herring <robh+dt@...nel.org>
Cc: Marek Vasut <marek.vasut@...il.com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Wolfram Sang <wsa@...-dreams.de>, devicetree@...r.kernel.org,
linux-gpio@...r.kernel.org, linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org,
Vladimir Zapolskiy <vladimir_zapolskiy@...tor.com>
Subject: [PATCH 2/7] dt-bindings: mfd: ds90ux9xx: add description of TI DS90Ux9xx I2C bridge
From: Vladimir Zapolskiy <vladimir_zapolskiy@...tor.com>
TI DS90Ux9xx de-/serializers are capable to route I2C messages to
I2C slave devices connected to a remote de-/serializer in a pair,
the change adds description of device tree bindings of the subcontroller
to configure and enable this functionality.
Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@...tor.com>
---
.../bindings/mfd/ti,ds90ux9xx-i2c-bridge.txt | 61 +++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/ti,ds90ux9xx-i2c-bridge.txt
diff --git a/Documentation/devicetree/bindings/mfd/ti,ds90ux9xx-i2c-bridge.txt b/Documentation/devicetree/bindings/mfd/ti,ds90ux9xx-i2c-bridge.txt
new file mode 100644
index 000000000000..4169e382073a
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/ti,ds90ux9xx-i2c-bridge.txt
@@ -0,0 +1,61 @@
+TI DS90Ux9xx de-/serializer I2C bridge subcontroller
+
+Required properties:
+- compatible: Must contain a generic "ti,ds90ux9xx-i2c-bridge" value and
+ may contain one more specific value from the list:
+ "ti,ds90ux925-i2c-bridge",
+ "ti,ds90ux926-i2c-bridge",
+ "ti,ds90ux927-i2c-bridge",
+ "ti,ds90ux928-i2c-bridge",
+ "ti,ds90ux940-i2c-bridge".
+
+Required properties of a de-/serializer device connected to a local I2C bus:
+- ti,i2c-bridges: List of phandles to remote de-/serializer devices with
+ two arguments: id of a local de-/serializer FPD link and an assigned
+ I2C address of a remote de-/serializer to be accessed on a local
+ I2C bus.
+
+Optional properties of a de-/serializer device connected to a local I2C bus:
+- ti,i2c-bridge-maps: List of 3-cell values:
+ - the first argument is id of a local de-/serializer FPD link,
+ - the second argument is an I2C address of a device connected to
+ a remote de-/serializer IC,
+ - the third argument is an I2C address of the remote I2C device
+ for access on a local I2C bus.
+- ti,i2c-bridge-auto-ack: Enables AUTO ACK mode.
+- ti,i2c-bridge-pass-all: Enables PASS ALL mode, remote I2C slave devices
+ are accessible on a local (host) I2C bus without I2C address
+ remappings.
+
+Remote de-/serializer device may contain a list of device nodes, each
+one represents an I2C device connected to that remote de-/serializer IC.
+
+Example (remote device is a deserializer with Atmel MXT touchscreen):
+
+serializer: serializer@c {
+ compatible = "ti,ds90ub927q", "ti,ds90ux9xx";
+ reg = <0xc>;
+
+ i2c-bridge {
+ compatible = "ti,ds90ux927-i2c-bridge",
+ "ti,ds90ux9xx-i2c-bridge";
+ ti,i2c-bridges = <&deserializer 0 0x3b>;
+ ti,i2c-bridge-maps = <0 0x4b 0x64>;
+ };
+};
+
+deserializer: deserializer {
+ compatible = "ti,ds90ub928q", "ti,ds90ux9xx";
+
+ i2c-bridge {
+ compatible = "ti,ds90ux928-i2c-bridge",
+ "ti,ds90ux9xx-i2c-bridge";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ touchscreen@4b {
+ compatible = "atmel,maxtouch";
+ reg = <0x4b>;
+ };
+ };
+};
--
2.17.1
Powered by blists - more mailing lists