[PATCH 3/4] dt-bindings: drm/bridge: analogix-anx78xx: support bypass GPIO

From: Hsin-Yi Wang
Date: Mon Dec 09 2019 - 07:20:51 EST


Support optional feature: bypass GPIO.

Some SoC (eg. mt8173) have a hardware mux that connects to 2 ports:
anx7688 and hdmi. When the GPIO is active, the bridge is bypassed.

Signed-off-by: Hsin-Yi Wang <hsinyi@xxxxxxxxxxxx>
---
.../bindings/display/bridge/anx7688.txt | 40 ++++++++++++++++++-
1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/display/bridge/anx7688.txt b/Documentation/devicetree/bindings/display/bridge/anx7688.txt
index 78b55bdb18f7..44185dcac839 100644
--- a/Documentation/devicetree/bindings/display/bridge/anx7688.txt
+++ b/Documentation/devicetree/bindings/display/bridge/anx7688.txt
@@ -15,10 +15,13 @@ Required properties:
Optional properties:

- Video port for HDMI input, using the DT bindings defined in [1].
+ - bypass-gpios : External GPIO. If this GPIO is active, we assume
+ the bridge is bypassed (e.g. by a mux).
+ - pinctrl-0, pinctrl-names: the pincontrol settings to configure bypass GPIO.

[1]: Documentation/devicetree/bindings/media/video-interfaces.txt

-Example:
+Example 1:

anx7688: anx7688@2c {
compatible = "analogix,anx7688";
@@ -30,3 +33,38 @@ Example:
};
};
};
+
+Example 2:
+
+ anx7688: anx7688@2c {
+ compatible = "analogix,anx7688";
+ status = "okay";
+ reg = <0x2c>;
+ ddc-i2c-bus = <&hdmiddc0>;
+
+ bypass-gpios = <&pio 36 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&hdmi_mux_pins>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 { /* input */
+ reg = <0>;
+
+ anx7688_in: endpoint {
+ remote-endpoint = <&hdmi_out_anx>;
+ };
+ };
+
+ port@1 { /* output */
+ reg = <1>;
+
+ anx7688_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+ };
+ };
+ };
+
--
2.24.0.393.g34dc348eaf-goog