Files
linux/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml
Liu Ying 3feaa43426 dt-bindings: soc: imx93-media-blk-ctrl: Add PDFC subnode to schema and example
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.

[m.felsch@pengutronix.de: add bus-width]

Signed-off-by: Liu Ying <victor.liu@nxp.com>
[m.felsch@pengutronix.de: port to v6.18-rc1]
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
2026-02-24 15:50:44 -05:00

194 lines
4.8 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/soc/imx/fsl,imx93-media-blk-ctrl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: NXP i.MX93 Media blk-ctrl
maintainers:
- Peng Fan <peng.fan@nxp.com>
description:
The i.MX93 MEDIAMIX domain contains control and status registers known
as MEDIAMIX Block Control (MEDIAMIX BLK_CTRL). These registers include
clocking, reset, and miscellaneous top-level controls for peripherals
within the MEDIAMIX domain
properties:
compatible:
items:
- enum:
- fsl,imx91-media-blk-ctrl
- fsl,imx93-media-blk-ctrl
- const: syscon
reg:
maxItems: 1
'#power-domain-cells':
const: 1
power-domains:
maxItems: 1
clocks:
minItems: 8
maxItems: 10
clock-names:
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:
compatible:
contains:
const: fsl,imx91-media-blk-ctrl
then:
properties:
clocks:
maxItems: 8
clock-names:
items:
- const: apb
- const: axi
- const: nic
- const: disp
- const: cam
- const: lcdif
- const: isi
- const: csi
- if:
properties:
compatible:
contains:
const: fsl,imx93-media-blk-ctrl
then:
properties:
clocks:
minItems: 10
clock-names:
items:
- const: apb
- const: axi
- const: nic
- const: disp
- const: cam
- const: pxp
- const: lcdif
- const: isi
- const: csi
- const: dsi
required:
- compatible
- reg
- power-domains
- clocks
- clock-names
additionalProperties: false
examples:
- |
#include <dt-bindings/clock/imx93-clock.h>
#include <dt-bindings/power/fsl,imx93-power.h>
system-controller@4ac10000 {
compatible = "fsl,imx93-media-blk-ctrl", "syscon";
reg = <0x4ac10000 0x10000>;
power-domains = <&mediamix>;
clocks = <&clk IMX93_CLK_MEDIA_APB>,
<&clk IMX93_CLK_MEDIA_AXI>,
<&clk IMX93_CLK_NIC_MEDIA_GATE>,
<&clk IMX93_CLK_MEDIA_DISP_PIX>,
<&clk IMX93_CLK_CAM_PIX>,
<&clk IMX93_CLK_PXP_GATE>,
<&clk IMX93_CLK_LCDIF_GATE>,
<&clk IMX93_CLK_ISI_GATE>,
<&clk IMX93_CLK_MIPI_CSI_GATE>,
<&clk IMX93_CLK_MIPI_DSI_GATE>;
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>;
};
};
};
};
};