[PATCH 3/5] dt-bindings: display: simple-bridge: Document DPI color encoder

Liu Ying
2025-03-04T10:14:57Z

A DPI color encoder, as a simple display bridge, converts input DPI color
coding to output DPI color coding, like Adafruit Kippah DPI hat[1] which
converts input 18-bit pixel data to 24-bit pixel data(with 2 low padding
bits in every color component though). Document the DPI color encoder.

[1] https://learn.adafruit.com/adafruit-dpi-display-kippah-ttl-tft/downloads

Signed-off-by: Liu Ying <victor.liu@nxp.com>
---
.../display/bridge/simple-bridge.yaml | 89 ++++++++++++++++++-
1 file changed, 87 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml b/Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml
index 43cf4df9811a..c1747c033040 100644
--- a/Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml
@@ -27,6 +27,7 @@ properties:
- const: adi,adv7123
- enum:
- adi,adv7123
+ - dpi-color-encoder
- dumb-vga-dac
- ti,opa362
- ti,ths8134
@@ -37,13 +38,31 @@ properties:

properties:
port@0:
- $ref: /schemas/graph.yaml#/properties/port
+ $ref: /schemas/graph.yaml#/$defs/port-base
+ unevaluatedProperties: false
description: The bridge input

+ properties:
+ endpoint:
+ $ref: /schemas/media/video-interfaces.yaml#
+ unevaluatedProperties: false
+
+ properties:
+ dpi-color-coding: true
+
port@1:
- $ref: /schemas/graph.yaml#/properties/port
+ $ref: /schemas/graph.yaml#/$defs/port-base
+ unevaluatedProperties: false
description: The bridge output

+ properties:
+ endpoint:
+ $ref: /schemas/media/video-interfaces.yaml#
+ unevaluatedProperties: false
+
+ properties:
+ dpi-color-coding: true
+
required:
- port@0
- port@1
@@ -61,6 +80,44 @@ required:

additionalProperties: false

+allOf:
+ - $ref: /schemas/display/dpi-color-coding.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: dpi-color-encoder
+ then:
+ properties:
+ ports:
+ properties:
+ port@0:
+ properties:
+ endpoint:
+ required:
+ - dpi-color-coding
+
+ port@1:
+ properties:
+ endpoint:
+ required:
+ - dpi-color-coding
+ else:
+ properties:
+ ports:
+ properties:
+ port@0:
+ properties:
+ endpoint:
+ properties:
+ dpi-color-coding: false
+
+ port@1:
+ properties:
+ endpoint:
+ properties:
+ dpi-color-coding: false
+
examples:
- |
bridge {
@@ -88,4 +145,32 @@ examples:
};
};

+ - |
+ bridge {
+ compatible = "dpi-color-enoder";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ dpi_in: endpoint {
+ remote-endpoint = <&dc_out>;
+ dpi-color-coding = "18bit-configuration1";
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ dpi_out: endpoint {
+ remote-endpoint = <&panel_in>;
+ dpi-color-coding = "24bit";
+ };
+ };
+ };
+ };
+
...
--
2.34.1