public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] i.MX LDB DT cleanups
@ 2026-05-04 20:21 Marco Felsch
  2026-05-04 20:21 ` [PATCH 1/4] Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names" Marco Felsch
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-04 20:21 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu
  Cc: kernel, dri-devel, devicetree, linux-kernel, imx,
	linux-arm-kernel, Marco Felsch

Hi,

this cleanup prepares the LDB dt-bindings for the upcoming i.MX93 and
i.MX94 LDB support and is a different abborach than [1]. This approach
should be easier to maintain [2] and far more flexible for upcoming
BLK-CTRL or IOMUX_GPR syscon sub-devices.

Please be informed: I didn't do runtime tests but since the LDB driver
never used the reg (nor reg-names) property, it should be safe to remove
them.

Regards,
  Marco

[1] https://lore.kernel.org/all/20260329-fsl_ldb_schema_fix-v1-1-351372754bc0@nxp.com/
[2] https://lore.kernel.org/all/2mkih6id2cfqjfksfvvitzlcnyfz7r4rs4f7bhtvdhf7scwzue@bb4ucnfxa4l4/#t

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
Marco Felsch (4):
      Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names"
      Revert "dt-bindings: display: bridge: ldb: Fill in reg property"
      ARM: dts: imx6sx: remove LDB reg property
      arm64: dts: imx8mp: remove LDB reg and reg-names property

 .../bindings/display/bridge/fsl,ldb.yaml           | 25 +---------------------
 arch/arm/boot/dts/nxp/imx/imx6sx.dtsi              |  3 +--
 arch/arm64/boot/dts/freescale/imx8mp.dtsi          |  4 +---
 3 files changed, 3 insertions(+), 29 deletions(-)
---
base-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731
change-id: 20260504-v7-1-topic-ldb-fixes-8b3042dc50de

Best regards,
-- 
Marco Felsch <m.felsch@pengutronix.de>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/4] Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names"
  2026-05-04 20:21 [PATCH 0/4] i.MX LDB DT cleanups Marco Felsch
@ 2026-05-04 20:21 ` Marco Felsch
  2026-05-04 20:21 ` [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property" Marco Felsch
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-04 20:21 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu
  Cc: kernel, dri-devel, devicetree, linux-kernel, imx,
	linux-arm-kernel, Marco Felsch

This reverts commit 8aa2f0ac08d3b207ba54e98698c9d696b86452a7.

The LDB is either part of the IOMUX_GPR (i.MX6SX) or the BLKCTRL
(i.MX8MP, i.MX93) register space. Both IOMUX_GPR and BLKCTRL are
register ranges with loose register definitions. E.g.

  - On the i.MX8MP there is one register which controls the AXI
    threshold for two different IPs (BIT(31:16) - IP1, BIT(15:0) - IP2).
  - On the i.MX6SX IOMUXC_GPR5 controlls: CSI2 mux, WDOG3 settings, PXP
    handshake, ...

In conclusion: it can't be ensured that one register belongs to one
dedicated IP and the LDB is rather an exception than the rule.

Therefore remove the 'reg' and 'reg-names' property requirement.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
 Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml b/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
index 7f380879fffdfef28d9a35d7fbf87fdf28377b43..828b7a40e9b6cf27f76d1cd3009505b03cbe09f1 100644
--- a/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
@@ -68,7 +68,6 @@ required:
   - compatible
   - clocks
   - ports
-  - reg
 
 allOf:
   - if:
@@ -83,15 +82,6 @@ allOf:
         ports:
           properties:
             port@2: false
-  - if:
-      not:
-        properties:
-          compatible:
-            contains:
-              const: fsl,imx6sx-ldb
-    then:
-      required:
-        - reg-names
 
   - if:
       properties:

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property"
  2026-05-04 20:21 [PATCH 0/4] i.MX LDB DT cleanups Marco Felsch
  2026-05-04 20:21 ` [PATCH 1/4] Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names" Marco Felsch
@ 2026-05-04 20:21 ` Marco Felsch
  2026-05-04 21:42   ` Rob Herring (Arm)
  2026-05-05 14:15   ` Rob Herring
  2026-05-04 20:21 ` [PATCH 3/4] ARM: dts: imx6sx: remove LDB reg property Marco Felsch
  2026-05-04 20:21 ` [PATCH 4/4] arm64: dts: imx8mp: remove LDB reg and reg-names property Marco Felsch
  3 siblings, 2 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-04 20:21 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu
  Cc: kernel, dri-devel, devicetree, linux-kernel, imx,
	linux-arm-kernel, Marco Felsch

This reverts commit 16c8d76abe83d75b578d72ee22d25a52c764e14a.

Remove the 'reg' and 'reg-names' property from the LDB.

The LDB is either part of the IOMUX_GPR (i.MX6SX) or the BLKCTRL
(i.MX8MP, i.MX93) register space. Both IOMUX_GPR and BLKCTRL are
register ranges with loose register definitions. E.g.

  - On the i.MX8MP there is one register which controls the AXI
    threshold for two different IPs (BIT(31:16) - IP1, BIT(15:0) - IP2).
  - On the i.MX6SX IOMUXC_GPR5 controlls: CSI2 mux, WDOG3 settings, PXP
    handshake, ...

In conclusion: it can't be ensured that one register belongs to one
dedicated IP and the LDB is rather an exception than the rule.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
 .../devicetree/bindings/display/bridge/fsl,ldb.yaml       | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml b/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
index 828b7a40e9b6cf27f76d1cd3009505b03cbe09f1..e04df77af756f1dc46fc098d765502d44cc2de00 100644
--- a/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/fsl,ldb.yaml
@@ -27,14 +27,6 @@ properties:
   clock-names:
     const: ldb
 
-  reg:
-    maxItems: 2
-
-  reg-names:
-    items:
-      - const: ldb
-      - const: lvds
-
   nxp,enable-termination-resistor:
     type: boolean
     description:
@@ -99,15 +91,10 @@ examples:
     #include <dt-bindings/clock/imx8mp-clock.h>
 
     blk-ctrl {
-        #address-cells = <1>;
-        #size-cells = <1>;
-
-        bridge@5c {
+        bridge {
             compatible = "fsl,imx8mp-ldb";
             clocks = <&clk IMX8MP_CLK_MEDIA_LDB>;
             clock-names = "ldb";
-            reg = <0x5c 0x4>, <0x128 0x4>;
-            reg-names = "ldb", "lvds";
 
             ports {
                 #address-cells = <1>;

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/4] ARM: dts: imx6sx: remove LDB reg property
  2026-05-04 20:21 [PATCH 0/4] i.MX LDB DT cleanups Marco Felsch
  2026-05-04 20:21 ` [PATCH 1/4] Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names" Marco Felsch
  2026-05-04 20:21 ` [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property" Marco Felsch
@ 2026-05-04 20:21 ` Marco Felsch
  2026-05-04 20:21 ` [PATCH 4/4] arm64: dts: imx8mp: remove LDB reg and reg-names property Marco Felsch
  3 siblings, 0 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-04 20:21 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu
  Cc: kernel, dri-devel, devicetree, linux-kernel, imx,
	linux-arm-kernel, Marco Felsch

The iomux-gpr syscon device has a very loose register definition. Many
registers have a multi purpose, e.g. one register controlls the WDG
behavior and the CSI2 mux settings. This would lead into multiple
sub-devices which use the same 'reg' which is wrong.

Instead of specifying the 'reg' in the OF each sub-device driver needs
to handle the correct bits on their own. Therefore drop the 'reg'
porperty from the bridge node as well as the @18 register suffix.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
 arch/arm/boot/dts/nxp/imx/imx6sx.dtsi | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/nxp/imx/imx6sx.dtsi b/arch/arm/boot/dts/nxp/imx/imx6sx.dtsi
index aefae5a3a6bebd43c67070376196db559d0d20cb..4b974b54195950e8bd2ef6d590f3530b2a43106e 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6sx.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx6sx.dtsi
@@ -850,9 +850,8 @@ gpr: syscon@20e4000 {
 				#size-cells = <1>;
 				reg = <0x020e4000 0x4000>;
 
-				lvds_bridge: bridge@18 {
+				lvds_bridge: bridge {
 					compatible = "fsl,imx6sx-ldb";
-					reg = <0x18 0x4>;
 					clocks = <&clks IMX6SX_CLK_LDB_DI0>;
 					clock-names = "ldb";
 					status = "disabled";

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 4/4] arm64: dts: imx8mp: remove LDB reg and reg-names property
  2026-05-04 20:21 [PATCH 0/4] i.MX LDB DT cleanups Marco Felsch
                   ` (2 preceding siblings ...)
  2026-05-04 20:21 ` [PATCH 3/4] ARM: dts: imx6sx: remove LDB reg property Marco Felsch
@ 2026-05-04 20:21 ` Marco Felsch
  3 siblings, 0 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-04 20:21 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu
  Cc: kernel, dri-devel, devicetree, linux-kernel, imx,
	linux-arm-kernel, Marco Felsch

The blk-ctrl syscon device(s) have a very loose register definition, e.g
one register configures the USB PHY clock source, the PCIe EP ready bit
and enables PCIe and USB clocks. This would lead into multiple
sub-devices which use the same 'reg' which is wrong.

Instead of specifying the 'reg' in the OF each sub-device driver needs
to handle the correct bits on their own. Therefore drop the 'reg' and
'reg-names' porperty from the bridge node as well as the '@5c' register
suffix.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 90d7bb8f5619e50d9fd65bcf18c083affe15e6f9..41649afff813833aeb1c0355827597578048b037 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -1999,10 +1999,8 @@ media_blk_ctrl: blk-ctrl@32ec0000 {
 						       <1039500000>;
 				#power-domain-cells = <1>;
 
-				lvds_bridge: bridge@5c {
+				lvds_bridge: bridge {
 					compatible = "fsl,imx8mp-ldb";
-					reg = <0x5c 0x4>, <0x128 0x4>;
-					reg-names = "ldb", "lvds";
 					clocks = <&clk IMX8MP_CLK_MEDIA_LDB_ROOT>;
 					clock-names = "ldb";
 					assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>;

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property"
  2026-05-04 20:21 ` [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property" Marco Felsch
@ 2026-05-04 21:42   ` Rob Herring (Arm)
  2026-05-05 14:15   ` Rob Herring
  1 sibling, 0 replies; 8+ messages in thread
From: Rob Herring (Arm) @ 2026-05-04 21:42 UTC (permalink / raw)
  To: Marco Felsch
  Cc: imx, Sascha Hauer, Frank Li, linux-kernel, linux-arm-kernel,
	Marek Vasut, Pengutronix Kernel Team, Laurent Pinchart,
	laurentiu.palcu, David Airlie, Simona Vetter, dri-devel,
	Jernej Skrabec, Jonas Karlman, Maarten Lankhorst, Robert Foss,
	Thomas Zimmermann, Andrzej Hajda, Conor Dooley, Neil Armstrong,
	Fabio Estevam, victor.liu, Maxime Ripard, devicetree,
	Krzysztof Kozlowski, kernel


On Mon, 04 May 2026 22:21:42 +0200, Marco Felsch wrote:
> This reverts commit 16c8d76abe83d75b578d72ee22d25a52c764e14a.
> 
> Remove the 'reg' and 'reg-names' property from the LDB.
> 
> The LDB is either part of the IOMUX_GPR (i.MX6SX) or the BLKCTRL
> (i.MX8MP, i.MX93) register space. Both IOMUX_GPR and BLKCTRL are
> register ranges with loose register definitions. E.g.
> 
>   - On the i.MX8MP there is one register which controls the AXI
>     threshold for two different IPs (BIT(31:16) - IP1, BIT(15:0) - IP2).
>   - On the i.MX6SX IOMUXC_GPR5 controlls: CSI2 mux, WDOG3 settings, PXP
>     handshake, ...
> 
> In conclusion: it can't be ensured that one register belongs to one
> dedicated IP and the LDB is rather an exception than the rule.
> 
> Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
> ---
>  .../devicetree/bindings/display/bridge/fsl,ldb.yaml       | 15 +--------------
>  1 file changed, 1 insertion(+), 14 deletions(-)
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx8mp-media-blk-ctrl.example.dtb: blk-ctrl@32ec0000 (fsl,imx8mp-media-blk-ctrl): bridge@5c: 'reg', 'reg-names' do not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/soc/imx/fsl,imx8mp-media-blk-ctrl.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx8mp-media-blk-ctrl.example.dtb: blk-ctrl@32ec0000 (fsl,imx8mp-media-blk-ctrl): bridge@5c: Unevaluated properties are not allowed ('reg', 'reg-names' were unexpected)
	from schema $id: http://devicetree.org/schemas/soc/imx/fsl,imx8mp-media-blk-ctrl.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/imx/fsl,imx8mp-media-blk-ctrl.example.dtb: bridge@5c (fsl,imx8mp-ldb): 'reg', 'reg-names' do not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/display/bridge/fsl,ldb.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.kernel.org/project/devicetree/patch/20260504-v7-1-topic-ldb-fixes-v1-2-0125d937ff7f@pengutronix.de

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property"
  2026-05-04 20:21 ` [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property" Marco Felsch
  2026-05-04 21:42   ` Rob Herring (Arm)
@ 2026-05-05 14:15   ` Rob Herring
  2026-05-05 15:45     ` Marco Felsch
  1 sibling, 1 reply; 8+ messages in thread
From: Rob Herring @ 2026-05-05 14:15 UTC (permalink / raw)
  To: Marco Felsch
  Cc: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu, dri-devel, devicetree, linux-kernel,
	imx, linux-arm-kernel

On Mon, May 04, 2026 at 10:21:42PM +0200, Marco Felsch wrote:
> This reverts commit 16c8d76abe83d75b578d72ee22d25a52c764e14a.
> 
> Remove the 'reg' and 'reg-names' property from the LDB.
> 
> The LDB is either part of the IOMUX_GPR (i.MX6SX) or the BLKCTRL
> (i.MX8MP, i.MX93) register space. Both IOMUX_GPR and BLKCTRL are
> register ranges with loose register definitions. E.g.
> 
>   - On the i.MX8MP there is one register which controls the AXI
>     threshold for two different IPs (BIT(31:16) - IP1, BIT(15:0) - IP2).
>   - On the i.MX6SX IOMUXC_GPR5 controlls: CSI2 mux, WDOG3 settings, PXP
>     handshake, ...
> 
> In conclusion: it can't be ensured that one register belongs to one
> dedicated IP and the LDB is rather an exception than the rule.

It is fine if there's a child node for LDB if the LDB registers are 
consistent, but the other misc things are represented by the parent 
node. It is certainly not a requirement that either everything be in 
child nodes or nothing be in child nodes.

What I don't see in this series is what problem does this fix? If you 
are going to break compatibility, then there had better be a good 
reason.

Rob

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property"
  2026-05-05 14:15   ` Rob Herring
@ 2026-05-05 15:45     ` Marco Felsch
  0 siblings, 0 replies; 8+ messages in thread
From: Marco Felsch @ 2026-05-05 15:45 UTC (permalink / raw)
  To: Rob Herring
  Cc: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter,
	Krzysztof Kozlowski, Conor Dooley, Marek Vasut, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	laurentiu.palcu, victor.liu, dri-devel, devicetree, linux-kernel,
	imx, linux-arm-kernel

On 26-05-05, Rob Herring wrote:
> On Mon, May 04, 2026 at 10:21:42PM +0200, Marco Felsch wrote:
> > This reverts commit 16c8d76abe83d75b578d72ee22d25a52c764e14a.
> > 
> > Remove the 'reg' and 'reg-names' property from the LDB.
> > 
> > The LDB is either part of the IOMUX_GPR (i.MX6SX) or the BLKCTRL
> > (i.MX8MP, i.MX93) register space. Both IOMUX_GPR and BLKCTRL are
> > register ranges with loose register definitions. E.g.
> > 
> >   - On the i.MX8MP there is one register which controls the AXI
> >     threshold for two different IPs (BIT(31:16) - IP1, BIT(15:0) - IP2).
> >   - On the i.MX6SX IOMUXC_GPR5 controlls: CSI2 mux, WDOG3 settings, PXP
> >     handshake, ...
> > 
> > In conclusion: it can't be ensured that one register belongs to one
> > dedicated IP and the LDB is rather an exception than the rule.
> 
> It is fine if there's a child node for LDB if the LDB registers are 
> consistent, but the other misc things are represented by the parent 
> node. It is certainly not a requirement that either everything be in 
> child nodes or nothing be in child nodes.
> 
> What I don't see in this series is what problem does this fix? If you 
> are going to break compatibility, then there had better be a good 
> reason.

Hi Rob,

with the upcoming i.MX9x SoCs the parent syscon (BLKCTRL) controlls
multiple other IPs, e.g. a DPI mux added by commit 3feaa4342637
("dt-bindings: soc: imx93-media-blk-ctrl: Add PDFC subnode to schema and
example").

During the discussion of the above commit we agreed that the sub-devices
of the syscon shall not use the reg property due to the fact that one
register serves multiple purposes. In the above case the same register
controlling the dpi-mux also controlls MIPI-DSI bits. The MIPI-DSI bits
can be abstracted as drm-bridge as well. Two sub-devs using the same
'reg' property below the same parent seems odd and I don't know if this
allowed either.

Now the LDB is also part of this BLKCTRL syscon device but requires the
reg property. TBH, I don't know why the reg property was added in the
first place, due to the above fact (multiple sub-devs - same register).

Of course, we could limit the breakage to i.MX9* SoCs only which is done
by:
 - https://lore.kernel.org/all/20260329-fsl_ldb_schema_fix-v1-1-351372754bc0@nxp.com/

but I don't think that this would be nice from user and from maintainer
perspective, because:
 1) The same LDB "IP" would have a different dt-binding
    (user perspective)
 2) It introduces another dimension drivers need to care about
    (maintainer perspective)

Therefore I went this way to drop it all together to make it easier for
the user and the maintainers.

Regards,
  Marco



> 
> Rob
> 

-- 
#gernperDu 
#CallMeByMyFirstName

Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | https://www.pengutronix.de/ |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-9    |

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-05-05 15:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-04 20:21 [PATCH 0/4] i.MX LDB DT cleanups Marco Felsch
2026-05-04 20:21 ` [PATCH 1/4] Revert "dt-bindings: display: bridge: ldb: Add check for reg and reg-names" Marco Felsch
2026-05-04 20:21 ` [PATCH 2/4] Revert "dt-bindings: display: bridge: ldb: Fill in reg property" Marco Felsch
2026-05-04 21:42   ` Rob Herring (Arm)
2026-05-05 14:15   ` Rob Herring
2026-05-05 15:45     ` Marco Felsch
2026-05-04 20:21 ` [PATCH 3/4] ARM: dts: imx6sx: remove LDB reg property Marco Felsch
2026-05-04 20:21 ` [PATCH 4/4] arm64: dts: imx8mp: remove LDB reg and reg-names property Marco Felsch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox