[PATCH 03/39] dt-bindings: display: imx: Document i.MX95 Display Controller processing units
Marek Vasut
marek.vasut at mailbox.org
Sat Oct 11 09:51:18 PDT 2025
Freescale i.MX95 Display Controller is implemented as construction set of
building blocks with unified concept and standardized interfaces. Document
all new processing units present in i.MX95.
Signed-off-by: Marek Vasut <marek.vasut at mailbox.org>
---
Cc: Abel Vesa <abelvesa at kernel.org>
Cc: Conor Dooley <conor+dt at kernel.org>
Cc: Fabio Estevam <festevam at gmail.com>
Cc: Krzysztof Kozlowski <krzk+dt at kernel.org>
Cc: Laurent Pinchart <Laurent.pinchart at ideasonboard.com>
Cc: Liu Ying <victor.liu at nxp.com>
Cc: Lucas Stach <l.stach at pengutronix.de>
Cc: Peng Fan <peng.fan at nxp.com>
Cc: Pengutronix Kernel Team <kernel at pengutronix.de>
Cc: Rob Herring <robh at kernel.org>
Cc: Shawn Guo <shawnguo at kernel.org>
Cc: Thomas Zimmermann <tzimmermann at suse.de>
Cc: devicetree at vger.kernel.org
Cc: dri-devel at lists.freedesktop.org
Cc: imx at lists.linux.dev
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-clk at vger.kernel.org
---
.../imx/fsl,imx8qxp-dc-constframe.yaml | 4 +-
.../imx/fsl,imx8qxp-dc-display-engine.yaml | 45 +++++++++++++---
.../display/imx/fsl,imx8qxp-dc-extdst.yaml | 4 +-
.../display/imx/fsl,imx8qxp-dc-fetchunit.yaml | 1 +
.../display/imx/fsl,imx8qxp-dc-framegen.yaml | 13 ++++-
.../imx/fsl,imx8qxp-dc-layerblend.yaml | 4 +-
.../imx/fsl,imx8qxp-dc-pixel-engine.yaml | 52 +++++++++++++++---
.../display/imx/fsl,imx8qxp-dc-tcon.yaml | 5 +-
.../bindings/display/imx/fsl,imx8qxp-dc.yaml | 53 ++++++++++++++++---
9 files changed, 153 insertions(+), 28 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-constframe.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-constframe.yaml
index 94f6785636085..3a585b3b9a789 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-constframe.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-constframe.yaml
@@ -18,7 +18,9 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-constframe
+ enum:
+ - fsl,imx8qxp-dc-constframe
+ - fsl,imx95-dc-constframe
reg:
maxItems: 2
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-display-engine.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-display-engine.yaml
index 91f3bb77d8d0d..aba818546028b 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-display-engine.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-display-engine.yaml
@@ -16,7 +16,9 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-display-engine
+ enum:
+ - fsl,imx8qxp-dc-display-engine
+ - fsl,imx95-dc-display-engine
reg:
maxItems: 2
@@ -42,10 +44,10 @@ properties:
maxItems: 1
"#address-cells":
- const: 1
+ enum: [1, 2]
"#size-cells":
- const: 1
+ enum: [1, 2]
ranges: true
@@ -58,13 +60,23 @@ patternProperties:
compatible:
const: fsl,imx8qxp-dc-dither
+ "^domainblend@[0-9a-f]+$":
+ type: object
+ additionalProperties: true
+
+ properties:
+ compatible:
+ const: fsl,imx95-dc-domainblend
+
"^framegen@[0-9a-f]+$":
type: object
additionalProperties: true
properties:
compatible:
- const: fsl,imx8qxp-dc-framegen
+ enum:
+ - fsl,imx8qxp-dc-framegen
+ - fsl,imx95-dc-framegen
"^gammacor@[0-9a-f]+$":
type: object
@@ -90,13 +102,15 @@ patternProperties:
compatible:
const: fsl,imx8qxp-dc-signature
- "^tcon@[0-9a-f]+$":
+ "^tcon(@[0-9a-f]+)?$":
type: object
additionalProperties: true
properties:
compatible:
- const: fsl,imx8qxp-dc-tcon
+ enum:
+ - fsl,imx8qxp-dc-tcon
+ - fsl,imx95-dc-tcon
required:
- compatible
@@ -109,6 +123,25 @@ required:
- "#size-cells"
- ranges
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: fsl,imx95-dc-display-engine
+ then:
+ properties:
+ "#address-cells":
+ const: 2
+ "#size-cells":
+ const: 2
+ else:
+ properties:
+ "#address-cells":
+ const: 1
+ "#size-cells":
+ const: 1
+
additionalProperties: false
examples:
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-extdst.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-extdst.yaml
index dfc2d4f94f8eb..82a748b0024d4 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-extdst.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-extdst.yaml
@@ -32,7 +32,9 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-extdst
+ enum:
+ - fsl,imx8qxp-dc-extdst
+ - fsl,imx95-dc-extdst
reg:
maxItems: 2
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-fetchunit.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-fetchunit.yaml
index 97fb6a4598d96..0e67322627a55 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-fetchunit.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-fetchunit.yaml
@@ -111,6 +111,7 @@ properties:
- fsl,imx8qxp-dc-fetcheco
- fsl,imx8qxp-dc-fetchlayer
- fsl,imx8qxp-dc-fetchwarp
+ - fsl,imx95-dc-fetchlayer
reg:
maxItems: 2
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-framegen.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-framegen.yaml
index 9d1dc3a9de90e..dd83ac669478b 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-framegen.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-framegen.yaml
@@ -16,18 +16,27 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-framegen
+ enum:
+ - fsl,imx8qxp-dc-framegen
+ - fsl,imx95-dc-framegen
reg:
maxItems: 1
clocks:
- maxItems: 1
+ minItems: 1
+ maxItems: 6
+
+ clock-names:
+ minItems: 1
+ maxItems: 6
interrupts:
+ minItems: 6
maxItems: 8
interrupt-names:
+ minItems: 6
items:
- const: int0
- const: int1
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-layerblend.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-layerblend.yaml
index 2a6ab8a0ed7fc..6565b7acf47e4 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-layerblend.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-layerblend.yaml
@@ -13,7 +13,9 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-layerblend
+ enum:
+ - fsl,imx8qxp-dc-layerblend
+ - fsl,imx95-dc-layerblend
reg:
maxItems: 2
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-pixel-engine.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-pixel-engine.yaml
index 633443a6cc380..2d0ee83e30b25 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-pixel-engine.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-pixel-engine.yaml
@@ -17,19 +17,28 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-pixel-engine
+ oneOf:
+ - const: fsl,imx8qxp-dc-pixel-engine
+ - items:
+ - const: fsl,imx95-dc-pixel-engine
+ - const: fsl,imx8qxp-dc-pixel-engine
reg:
maxItems: 1
clocks:
- maxItems: 1
+ minItems: 1
+ maxItems: 2
+
+ clock-names:
+ minItems: 1
+ maxItems: 2
"#address-cells":
- const: 1
+ enum: [1, 2]
"#size-cells":
- const: 1
+ enum: [1, 2]
ranges: true
@@ -48,7 +57,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-constframe
+ enum:
+ - fsl,imx8qxp-dc-constframe
+ - fsl,imx95-dc-constframe
"^extdst@[0-9a-f]+$":
type: object
@@ -56,7 +67,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-extdst
+ enum:
+ - fsl,imx8qxp-dc-extdst
+ - fsl,imx95-dc-extdst
"^fetchdecode@[0-9a-f]+$":
type: object
@@ -80,7 +93,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-fetchlayer
+ enum:
+ - fsl,imx8qxp-dc-fetchlayer
+ - fsl,imx95-dc-fetchlayer
"^fetchwarp@[0-9a-f]+$":
type: object
@@ -104,7 +119,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-layerblend
+ enum:
+ - fsl,imx8qxp-dc-layerblend
+ - fsl,imx95-dc-layerblend
"^matrix@[0-9a-f]+$":
type: object
@@ -138,6 +155,25 @@ required:
- "#size-cells"
- ranges
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: fsl,imx95-dc-pixel-engine
+ then:
+ properties:
+ "#address-cells":
+ const: 2
+ "#size-cells":
+ const: 2
+ else:
+ properties:
+ "#address-cells":
+ const: 1
+ "#size-cells":
+ const: 1
+
additionalProperties: false
examples:
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-tcon.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-tcon.yaml
index 7a3b77ea92c73..1f935b342f461 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-tcon.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc-tcon.yaml
@@ -15,7 +15,9 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc-tcon
+ enum:
+ - fsl,imx8qxp-dc-tcon
+ - fsl,imx95-dc-tcon
reg:
maxItems: 1
@@ -26,7 +28,6 @@ properties:
required:
- compatible
- - reg
- port
additionalProperties: false
diff --git a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc.yaml b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc.yaml
index 0a72f9f0b5fda..1e8f559acb4de 100644
--- a/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc.yaml
+++ b/Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dc.yaml
@@ -48,13 +48,20 @@ maintainers:
properties:
compatible:
- const: fsl,imx8qxp-dc
+ enum:
+ - fsl,imx8qxp-dc
+ - fsl,imx95-dc
reg:
maxItems: 1
clocks:
- maxItems: 1
+ minItems: 1
+ maxItems: 6
+
+ clock-names:
+ minItems: 1
+ maxItems: 6
resets:
maxItems: 2
@@ -68,10 +75,15 @@ properties:
maxItems: 1
"#address-cells":
- const: 1
+ enum: [1, 2]
"#size-cells":
- const: 1
+ enum: [1, 2]
+
+ fsl,syscon:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: |
+ A phandle which points to Control and Status Registers (CSR) module.
ranges: true
@@ -90,7 +102,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-display-engine
+ enum:
+ - fsl,imx8qxp-dc-display-engine
+ - fsl,imx95-dc-display-engine
"^interrupt-controller@[0-9a-f]+$":
type: object
@@ -98,7 +112,9 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-intc
+ enum:
+ - fsl,imx8qxp-dc-intc
+ - fsl,imx95-dc-intc
"^pixel-engine@[0-9a-f]+$":
type: object
@@ -106,7 +122,11 @@ patternProperties:
properties:
compatible:
- const: fsl,imx8qxp-dc-pixel-engine
+ oneOf:
+ - const: fsl,imx8qxp-dc-pixel-engine
+ - items:
+ - const: fsl,imx95-dc-pixel-engine
+ - const: fsl,imx8qxp-dc-pixel-engine
"^pmu@[0-9a-f]+$":
type: object
@@ -125,6 +145,25 @@ required:
- "#size-cells"
- ranges
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: fsl,imx95-dc
+ then:
+ properties:
+ "#address-cells":
+ const: 2
+ "#size-cells":
+ const: 2
+ else:
+ properties:
+ "#address-cells":
+ const: 1
+ "#size-cells":
+ const: 1
+
additionalProperties: false
examples:
--
2.51.0
More information about the linux-arm-kernel
mailing list