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@xxxxxxx> --- .../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