[PATCH 1/4] dt-bindings: display: bridge: add the Hot-plug MIPI DSI connector

From: Luca Ceresoli
Date: Tue Mar 26 2024 - 12:28:51 EST


Add bindings for a physical, hot-pluggable connector allowing the far end
of a MIPI DSI bus to be connected and disconnected at runtime.

Signed-off-by: Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx>
---
.../bridge/hotplug-video-connector-dsi.yaml | 87 ++++++++++++++++++++++
MAINTAINERS | 5 ++
2 files changed, 92 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/bridge/hotplug-video-connector-dsi.yaml b/Documentation/devicetree/bindings/display/bridge/hotplug-video-connector-dsi.yaml
new file mode 100644
index 000000000000..05beb8aa9ab4
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/hotplug-video-connector-dsi.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/hotplug-video-connector-dsi.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Hot-pluggable connector on a MIPI DSI bus
+
+maintainers:
+ - Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx>
+
+description:
+ A bridge representing a physical, hot-pluggable connector on a MIPI DSI
+ video bus. The connector splits the video pipeline in a fixed part and a
+ removable part.
+
+ The fixed part of the video pipeline includes all components up to the
+ display controller and 0 or more bridges. The removable part includes one
+ or more bridges and any other components up to the panel.
+
+ The removable part of the pipeline can be physically disconnected at any
+ moment, making all of its components not usable anymore. The same or a
+ different removable part of the pipeline can be reconnected later on.
+
+ Note that the hotplug-video-connector does not describe video busses
+ having native hotplug capabilities in the hardware, such as HDMI.
+
+properties:
+ compatible:
+ const: hotplug-video-connector-dsi
+
+ ports:
+ $ref: /schemas/graph.yaml#/properties/ports
+
+ properties:
+ port@0:
+ $ref: /schemas/graph.yaml#/properties/port
+ description:
+ The end of the fixed part of the MIPI DSI bus (terminating at the
+ hotplug connector). The remote-endpoint sub-node must point to
+ the previous component of the video pipeline.
+
+ port@1:
+ $ref: /schemas/graph.yaml#/properties/port
+ description:
+ The start of the removable part of the MIPI DSI bus (starting
+ from the hotplug connector). The remote-endpoint sub-node must
+ point to the next component of the video pipeline.
+
+ required:
+ - port@0
+ - port@1
+
+required:
+ - compatible
+ - ports
+
+additionalProperties: false
+
+examples:
+ - |
+ hotplug-video-connector {
+ compatible = "hotplug-video-connector-dsi";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ hotplug_connector_in: endpoint {
+ remote-endpoint = <&previous_bridge_out>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ hotplug_connector_out: endpoint {
+ remote-endpoint = <&next_bridge_in>;
+ };
+ };
+ };
+ };
+
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index aa3b947fb080..e1affd13e30b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6716,6 +6716,11 @@ T: git git://anongit.freedesktop.org/drm/drm-misc
F: Documentation/devicetree/bindings/display/panel/himax,hx8394.yaml
F: drivers/gpu/drm/panel/panel-himax-hx8394.c

+DRM DRIVER FOR HOTPLUG VIDEO CONNECTOR BRIDGE
+M: Luca Ceresoli <luca.ceresoli@xxxxxxxxxxx>
+S: Maintained
+F: Documentation/devicetree/bindings/display/bridge/hotplug-video-connector-dsi.yaml
+
DRM DRIVER FOR HX8357D PANELS
S: Orphan
T: git git://anongit.freedesktop.org/drm/drm-misc

--
2.34.1