From: Liu Ying <victor.liu@nxp.com>
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.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
[m.felsch@pengutronix.de: port to v6.18-rc1]
[m.felsch@pengutronix.de: add bus-width]
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
.../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:
+ 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>;
+ };
+ };
+ };
+ };
};
--
2.47.3
On Thu, Jan 15, 2026 at 9:25 AM Marco Felsch <m.felsch@pengutronix.de> wrote: > > From: Liu Ying <victor.liu@nxp.com> > > 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. > > Signed-off-by: Liu Ying <victor.liu@nxp.com> > [m.felsch@pengutronix.de: port to v6.18-rc1] > [m.felsch@pengutronix.de: add bus-width] > Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> > --- > .../bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml | 78 ++++++++++++++++++++++ > 1 file changed, 78 insertions(+) Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
On Thu, Jan 15, 2026 at 04:24:51PM +0100, Marco Felsch wrote: > From: Liu Ying <victor.liu@nxp.com> > > 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. > > Signed-off-by: Liu Ying <victor.liu@nxp.com> > [m.felsch@pengutronix.de: port to v6.18-rc1] > [m.felsch@pengutronix.de: add bus-width] > Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> > --- > .../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: > + type: object > + additionalProperties: false > + > + properties: > + compatible: > + enum: > + - nxp,imx91-pdfc > + - nxp,imx93-pdfc Looks like there's a register for this at 0x60. That should be a 'reg' entry in the DT.
Hi Rob, On 26-01-20, Rob Herring wrote: > On Thu, Jan 15, 2026 at 04:24:51PM +0100, Marco Felsch wrote: > > From: Liu Ying <victor.liu@nxp.com> > > > > 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. > > > > Signed-off-by: Liu Ying <victor.liu@nxp.com> > > [m.felsch@pengutronix.de: port to v6.18-rc1] > > [m.felsch@pengutronix.de: add bus-width] > > Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> > > --- > > .../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: > > + type: object > > + additionalProperties: false > > + > > + properties: > > + compatible: > > + enum: > > + - nxp,imx91-pdfc > > + - nxp,imx93-pdfc > > Looks like there's a register for this at 0x60. That should be a 'reg' > entry in the DT. We discussed the usage of 'reg' here [1]. In short: This single hw-register contains not only bits for the parallel output configuration but also for the mipi-dsi configuration. So there should be no 'reg' usage and instead let the syscon and driver do the correct handling. Regards, Marco [1] https://lore.kernel.org/all/PAXPR04MB84599D676EC1E3879694579688B2A@PAXPR04MB8459.eurprd04.prod.outlook.com/#t
© 2016 - 2026 Red Hat, Inc.