On Tue, Mar 03, 2026 at 08:59:58AM +0100, Marco Felsch wrote:
> On 26-03-03, Liu Ying wrote:
>> On Mon, Mar 02, 2026 at 05:10:40PM +0100, Marco Felsch wrote:
>>> From: Liu Ying <[email protected]>
>>>
>>> i.MX93 SoC mediamix blk-ctrl contains one DISPLAY_MUX register which
>>> configures parallel display format by using the "PARALLEL_DISP_FORMAT"
>>> field. Document the Parallel Display Format Configuration(PDFC) subnode
>>> and add the subnode to example.
>>>
>>> Reviewed-by: Rob Herring (Arm) <[email protected]>
>>> Signed-off-by: Liu Ying <[email protected]>
>>> [[email protected]: port to v7.0-rc1]
>>> [[email protected]: add bus-width]
>>> Signed-off-by: Marco Felsch <[email protected]>
>>> ---
>>>  .../bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml | 78 
>>> ++++++++++++++++++++++
>>>  1 file changed, 78 insertions(+)
>>>
>>> diff --git 
>>> a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml 
>>> b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml
>>> index 
>>> 34aea58094e55365a2f9c86092f637e533f954ff..d828c2e82965c7a4cd69a67136047d83c96b0a35
>>>  100644
>>> --- 
>>> a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml
>>> +++ 
>>> b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml
>>> @@ -40,6 +40,58 @@ properties:
>>>      minItems: 8
>>>      maxItems: 10
>>>  
>>> +  dpi-bridge:
>>
>> Cc'ing Frank.
>>
>> fsl,ldb.yaml documents fsl,imx6sx-ldb, fsl,imx8mp-ldb and fsl,imx93-ldb
>> with a reg property.  Since all of them are child devices of either GPR
>> or BLK_CTRL and this dpi-bridge is a child device of BLK_CTRL without a
>> reg property, how can we handle the inconsistency?  At least, with this
>> patch and the current fsl,ldb.yaml, we cannot add an i.MX93 LDB child
>> node.
> 
> This reg property was longly discussed and there should be no reg
> because this 'reg' covers not only the PDFC register fields. Please see
> the discussion:
> 
> - 
> https://lore.kernel.org/all/paxpr04mb84599d676ec1e3879694579688...@paxpr04mb8459.eurprd04.prod.outlook.com/
> 
> The LDB node shouldn't have a reg property in the first place. There are
> a few registers within BLK-CTRL which belong to only one "IP" like the
> LDB. But these are the exception rather than the rule. To make it
> possible to abstract _all_ sub-devices within the BLK control you need
> to drop the reg property. The subdevice drivers need to handle the
> offsets within the BLK-CTRL accordingly, like the LDB driver already
> does. So removing the reg property from the LDB dt-bindings is the
> correct fix.

Hmm, reg property was added intentionally by the below commit.  But,
I'm not saying removing the reg property is not a correct fix.  Just
feel embarrassing to see that it was added and then to be removed.

16c8d76abe83 dt-bindings: display: bridge: ldb: Fill in reg property

Can you contribute patches to get this done if you think it's a correct
fix?

> 
> Regards,
>   Marco
> 
>>> +    type: object
>>> +    additionalProperties: false
>>> +
>>> +    properties:
>>> +      compatible:
>>> +        enum:
>>> +          - nxp,imx91-pdfc
>>> +          - nxp,imx93-pdfc
>>> +
>>> +      ports:
>>> +        $ref: /schemas/graph.yaml#/properties/ports
>>> +
>>> +        properties:
>>> +          port@0:
>>> +            $ref: /schemas/graph.yaml#/properties/port
>>> +            description: Input port node to receive pixel data.
>>> +
>>> +          port@1:
>>> +            $ref: /schemas/graph.yaml#/$defs/port-base
>>> +            unevaluatedProperties: false
>>> +            description: Output port node to downstream pixel data 
>>> receivers.
>>> +
>>> +            properties:
>>> +              endpoint:
>>> +                $ref: /schemas/media/video-interfaces.yaml#
>>> +                unevaluatedProperties: false
>>> +
>>> +                properties:
>>> +                  bus-width:
>>> +                    enum: [ 16, 18, 24 ]
>>> +                    description:
>>> +                      Specify the physical parallel bus width.
>>> +
>>> +                      This property is optional if the display bus-width
>>> +                      matches the SoC bus-width, e.g. a 18-bit RGB666 
>>> (display)
>>> +                      is connected and all 18-bit data lines are muxed to 
>>> the
>>> +                      parallel-output pads.
>>> +
>>> +                      This property must be set to 18 to cut only the LSBs
>>> +                      instead of the MSBs in case a 24-bit RGB888 display 
>>> is
>>> +                      connected and only the lower 18-bit data lanes are 
>>> muxed
>>> +                      to the parallel-output pads.
>>> +
>>> +        required:
>>> +          - port@0
>>> +          - port@1
>>> +
>>> +    required:
>>> +      - compatible
>>> +      - ports
>>> +
>>>  allOf:
>>>    - if:
>>>        properties:
>>> @@ -112,4 +164,30 @@ examples:
>>>                 clock-names = "apb", "axi", "nic", "disp", "cam",
>>>                               "pxp", "lcdif", "isi", "csi", "dsi";
>>>        #power-domain-cells = <1>;
>>> +
>>> +      dpi-bridge {
>>> +        compatible = "nxp,imx93-pdfc";
>>> +
>>> +        ports {
>>> +          #address-cells = <1>;
>>> +          #size-cells = <0>;
>>> +
>>> +          port@0 {
>>> +            reg = <0>;
>>> +
>>> +            pdfc_from_lcdif: endpoint {
>>> +              remote-endpoint = <&lcdif_to_pdfc>;
>>> +            };
>>> +          };
>>> +
>>> +          port@1 {
>>> +            reg = <1>;
>>> +
>>> +            pdfc_to_panel: endpoint {
>>> +              remote-endpoint = <&panel_from_pdfc>;
>>> +              bus-width = <18>;
>>> +            };
>>> +          };
>>> +        };
>>> +      };
>>>      };
>>>
>>
>> -- 
>> Regards,
>> Liu Ying
>>
> 

-- 
Regards,
Liu Ying

Reply via email to