[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1467013727-11482-5-git-send-email-drinkcat@chromium.org>
Date: Mon, 27 Jun 2016 15:48:47 +0800
From: Nicolas Boichat <drinkcat@...omium.org>
To: dri-devel@...ts.freedesktop.org
Cc: Archit Taneja <architt@...eaurora.org>,
Thierry Reding <treding@...dia.com>,
Nicolas Boichat <drinkcat@...omium.org>,
Russell King <rmk+kernel@....linux.org.uk>,
linux-kernel@...r.kernel.org, p.zabel@...gutronix.de,
marcheu@...omium.org
Subject: [RFC PATCH 4/4] CHROMIUM: devicetree: Add GPIO display mux binding
Signed-off-by: Nicolas Boichat <drinkcat@...omium.org>
---
.../devicetree/bindings/drm/bridge/gpio-mux.txt | 59 ++++++++++++++++++++++
1 file changed, 59 insertions(+)
create mode 100644 Documentation/devicetree/bindings/drm/bridge/gpio-mux.txt
diff --git a/Documentation/devicetree/bindings/drm/bridge/gpio-mux.txt b/Documentation/devicetree/bindings/drm/bridge/gpio-mux.txt
new file mode 100644
index 0000000..cce410c
--- /dev/null
+++ b/Documentation/devicetree/bindings/drm/bridge/gpio-mux.txt
@@ -0,0 +1,59 @@
+Generic display mux (1 input, 2 outputs)
+----------------------------------------
+
+This bindings describes a simple display (e.g. HDMI) mux, that has 2
+inputs, and 1 output. The mux status is controlled by hardware, and
+its status is read back using a GPIO.
+
+Required properties:
+
+ - compatible : "gpio-display-mux"
+ - detect-gpios : GPIO that indicates the active output
+
+ - Video port for input, using the DT bindings defined in [1].
+ - 2 video port for output, using the DT bindings defined in [1].
+ The reg value in the endpoints matches the GPIO status: when
+ GPIO is active, endpoint with reg value <1> is selected,.
+
+[1]: Documentation/devicetree/bindings/media/video-interfaces.txt
+
+Example:
+
+ hdmi_mux: hdmi_mux {
+ compatible = "gpio-display-mux";
+ status = "okay";
+ detect-gpios = <&pio 36 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&hdmi_mux_pins>;
+ ddc-i2c-bus = <&hdmiddc0>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 { /* input */
+ reg = <0>;
+
+ hdmi_mux_in: endpoint {
+ remote-endpoint = <&hdmi0_out>;
+ };
+ };
+
+ port@1 { /* output */
+ reg = <1>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ hdmi_mux_out_anx: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&anx7688_in>;
+ };
+
+ hdmi_mux_out_hdmi: endpoint@1 {
+ reg = <1>;
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+ };
+ };
+ };
--
2.8.0.rc3.226.g39d4020
Powered by blists - more mailing lists