lkml.org 
[lkml]   [2022]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 1/8] dt-bindings: display: ti,am65x-dss: Add port properties for DSS
From


On 19/07/2022 11:08, Aradhya Bhatia wrote:
> Add "ti,oldi-mode" property to indicate the tidss driver the OLDI output
> mode. The 2 OLDI TXes on am625-dss allow a 3 different types of panel
> connections with the board.
>
> 1. Single Link / Single Mode on OLDI TX 0 OR 1.
> 2. Single Link / Duplicate Mode on OLDI TX 0 and 1.
> 3. Dual Link / Single Mode on OLDI TX 0 and 1.
>
> Add "ti,rgb565-to-888" property to override 16bit output from a videoport
> for a bridge that only accepts 24bit RGB888 DPI input.
>
> On some boards the HDMI bridge takes a 24bit DPI input, but only 16 data
> pins are actually enabled from the SoC. This new property forces the
> output to be RGB565 on a specific video port if the bridge requests a
> 24bit RGB color space.
>
> This assumes that the video port is connected like so:
>
> SoC : Bridge
> R0 -> R3
> R1 -> R4
> R2 -> R5
> R3 -> R6
> R4 -> R7
> G0 -> G2
> G1 -> G3
> G2 -> G4
> G3 -> G5
> G4 -> G6
> G5 -> G7
> B0 -> B3
> B1 -> B4
> B2 -> B5
> B3 -> B6
> B4 -> B7
>
> On the bridge side R0->R2, G0->G1, B0->B2 would be tied to ground.
> The bridge sees 24bits of data, but the lsb's are always zero.
>
> Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
> ---
> .../bindings/display/ti/ti,am65x-dss.yaml | 25 +++++++++++++++++--
> 1 file changed, 23 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml b/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml
> index 6bbce921479d..11d9b3821409 100644
> --- a/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml
> +++ b/Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml
> @@ -80,15 +80,35 @@ properties:
>
> properties:
> port@0:
> - $ref: /schemas/graph.yaml#/properties/port
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> description:
> The DSS OLDI output port node form video port 1
>
> + properties:
> + ti,oldi-mode:
> + description: TI specific property to indicate the mode the OLDI TXes
> + and the display panel are connected in.
> + 0 -> OLDI TXes OFF (driver default for am625-dss)
> + 1 -> Single link, Single Mode (OLDI0) (driver default for am65x-dss)
> + 2 -> Single link, Single Mode (OLDI1)
> + 3 -> Single link, Duplicate Mode
> + 4 -> Dual link (Only Single Mode)
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [0, 1, 2, 3, 4]
> +
> port@1:
> - $ref: /schemas/graph.yaml#/properties/port
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> description:
> The DSS DPI output port node from video port 2
>
> + properties:
> + ti,rgb565-to-888:
> + description:
> + property to override DPI output to 16bit for 24bit bridge
> + type: boolean

So you have a board with 16 DSS pins connected, going to a bridge/panel
that only supports 24 bit input. I don't think there's anything TI
specific here, sounds like a common situation.

"rgb565-to-888" sounds like there's some kind of conversion happening,
but all this does is set the videoport width to 16 bits.

I'm not sure if there's a better solution but in the OMAP DSS we have
"data-lines" property for an endpoint, which tells the driver the width
of the bus.

Tomi

\
 
 \ /
  Last update: 2022-07-28 13:19    [W:0.230 / U:0.552 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site