All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples
@ 2022-04-22 19:21 Rob Herring
  2022-04-25  6:19 ` Peter Rosin
  2022-04-25  7:58 ` Lee Jones
  0 siblings, 2 replies; 5+ messages in thread
From: Rob Herring @ 2022-04-22 19:21 UTC (permalink / raw)
  To: Lee Jones, Krzysztof Kozlowski, Peter Rosin; +Cc: devicetree, linux-kernel

The i.MX iomuxc-gpr bindings are undocumented and a mess. Drop their use
from the examples.

The problem with the binding beyond the just random variations is that
the iomuxc-gpr is not a separate block, but registers within the iomuxc
block containing random leftover controls. As a separate DT node, it
creates nodes with overlapping memory addresses.

Signed-off-by: Rob Herring <robh@kernel.org>
---
 Documentation/devicetree/bindings/mfd/syscon.yaml  | 8 --------
 Documentation/devicetree/bindings/mux/reg-mux.yaml | 1 -
 2 files changed, 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index 13baa452cc9d..fb784045013f 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -100,12 +100,4 @@ examples:
         compatible = "allwinner,sun8i-h3-system-controller", "syscon";
         reg = <0x01c00000 0x1000>;
     };
-
-  - |
-    gpr: iomuxc-gpr@20e0000 {
-        compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
-        reg = <0x020e0000 0x38>;
-        hwlocks = <&hwlock1 1>;
-    };
-
 ...
diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
index 60d5746eb39d..df4db96b5391 100644
--- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
+++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
@@ -96,7 +96,6 @@ examples:
 
     #include <dt-bindings/mux/mux.h>
     syscon@1000 {
-        compatible = "fsl,imx7d-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon", "simple-mfd";
         reg = <0x1000 0x100>;
 
         mux2: mux-controller {
-- 
2.32.0


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

* Re: [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples
  2022-04-22 19:21 [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples Rob Herring
@ 2022-04-25  6:19 ` Peter Rosin
  2022-04-25  7:58 ` Lee Jones
  1 sibling, 0 replies; 5+ messages in thread
From: Peter Rosin @ 2022-04-25  6:19 UTC (permalink / raw)
  To: Rob Herring, Lee Jones, Krzysztof Kozlowski; +Cc: devicetree, linux-kernel

Hi!

2022-04-22 at 21:21, Rob Herring wrote:
> The i.MX iomuxc-gpr bindings are undocumented and a mess. Drop their use
> from the examples.
> 
> The problem with the binding beyond the just random variations is that
> the iomuxc-gpr is not a separate block, but registers within the iomuxc
> block containing random leftover controls. As a separate DT node, it
> creates nodes with overlapping memory addresses.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>   Documentation/devicetree/bindings/mfd/syscon.yaml  | 8 --------
>   Documentation/devicetree/bindings/mux/reg-mux.yaml | 1 -
>   2 files changed, 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
> index 13baa452cc9d..fb784045013f 100644
> --- a/Documentation/devicetree/bindings/mfd/syscon.yaml
> +++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
> @@ -100,12 +100,4 @@ examples:
>           compatible = "allwinner,sun8i-h3-system-controller", "syscon";
>           reg = <0x01c00000 0x1000>;
>       };
> -
> -  - |
> -    gpr: iomuxc-gpr@20e0000 {
> -        compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
> -        reg = <0x020e0000 0x38>;
> -        hwlocks = <&hwlock1 1>;
> -    };
> -
>   ...
> diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> index 60d5746eb39d..df4db96b5391 100644
> --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> @@ -96,7 +96,6 @@ examples:
>   
>       #include <dt-bindings/mux/mux.h>
>       syscon@1000 {
> -        compatible = "fsl,imx7d-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon", "simple-mfd";
>           reg = <0x1000 0x100>;
>   
>           mux2: mux-controller {

Hmm, the reg-mux file is "mine" and I have no strong objection since
it doesn't really affect what the example is there for, but it does
look a bit weird to simply remove the compatible, no? Is that ok?

Either way, fine by me as you're the expert.

Acked-by: Peter Rosin <peda@axentia.se>

Cheers,
Peter

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

* Re: [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples
  2022-04-22 19:21 [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples Rob Herring
  2022-04-25  6:19 ` Peter Rosin
@ 2022-04-25  7:58 ` Lee Jones
  2022-04-26 14:14   ` Rob Herring
  1 sibling, 1 reply; 5+ messages in thread
From: Lee Jones @ 2022-04-25  7:58 UTC (permalink / raw)
  To: Rob Herring; +Cc: Krzysztof Kozlowski, Peter Rosin, devicetree, linux-kernel

On Fri, 22 Apr 2022, Rob Herring wrote:

> The i.MX iomuxc-gpr bindings are undocumented and a mess. Drop their use
> from the examples.
> 
> The problem with the binding beyond the just random variations is that
> the iomuxc-gpr is not a separate block, but registers within the iomuxc
> block containing random leftover controls. As a separate DT node, it
> creates nodes with overlapping memory addresses.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  Documentation/devicetree/bindings/mfd/syscon.yaml  | 8 --------
>  Documentation/devicetree/bindings/mux/reg-mux.yaml | 1 -
>  2 files changed, 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
> index 13baa452cc9d..fb784045013f 100644
> --- a/Documentation/devicetree/bindings/mfd/syscon.yaml
> +++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
> @@ -100,12 +100,4 @@ examples:
>          compatible = "allwinner,sun8i-h3-system-controller", "syscon";
>          reg = <0x01c00000 0x1000>;
>      };
> -
> -  - |
> -    gpr: iomuxc-gpr@20e0000 {
> -        compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
> -        reg = <0x020e0000 0x38>;
> -        hwlocks = <&hwlock1 1>;
> -    };
> -
>  ...
> diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> index 60d5746eb39d..df4db96b5391 100644
> --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> @@ -96,7 +96,6 @@ examples:
>  
>      #include <dt-bindings/mux/mux.h>
>      syscon@1000 {
> -        compatible = "fsl,imx7d-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon", "simple-mfd";
>          reg = <0x1000 0x100>;

Is leaving no compatible the correct solution here?

Do we have another (working) platform that we can use in its place?

Does it make sense to leave the "syscon" and "simple-mfd" entries?

>          mux2: mux-controller {

-- 
Lee Jones [李琼斯]
Principal Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples
  2022-04-25  7:58 ` Lee Jones
@ 2022-04-26 14:14   ` Rob Herring
  2022-04-26 14:49     ` Lee Jones
  0 siblings, 1 reply; 5+ messages in thread
From: Rob Herring @ 2022-04-26 14:14 UTC (permalink / raw)
  To: Lee Jones; +Cc: Krzysztof Kozlowski, Peter Rosin, devicetree, linux-kernel

On Mon, Apr 25, 2022 at 08:58:10AM +0100, Lee Jones wrote:
> On Fri, 22 Apr 2022, Rob Herring wrote:
> 
> > The i.MX iomuxc-gpr bindings are undocumented and a mess. Drop their use
> > from the examples.
> > 
> > The problem with the binding beyond the just random variations is that
> > the iomuxc-gpr is not a separate block, but registers within the iomuxc
> > block containing random leftover controls. As a separate DT node, it
> > creates nodes with overlapping memory addresses.
> > 
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > ---
> >  Documentation/devicetree/bindings/mfd/syscon.yaml  | 8 --------
> >  Documentation/devicetree/bindings/mux/reg-mux.yaml | 1 -
> >  2 files changed, 9 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
> > index 13baa452cc9d..fb784045013f 100644
> > --- a/Documentation/devicetree/bindings/mfd/syscon.yaml
> > +++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
> > @@ -100,12 +100,4 @@ examples:
> >          compatible = "allwinner,sun8i-h3-system-controller", "syscon";
> >          reg = <0x01c00000 0x1000>;
> >      };
> > -
> > -  - |
> > -    gpr: iomuxc-gpr@20e0000 {
> > -        compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
> > -        reg = <0x020e0000 0x38>;
> > -        hwlocks = <&hwlock1 1>;
> > -    };
> > -
> >  ...
> > diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > index 60d5746eb39d..df4db96b5391 100644
> > --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > @@ -96,7 +96,6 @@ examples:
> >  
> >      #include <dt-bindings/mux/mux.h>
> >      syscon@1000 {
> > -        compatible = "fsl,imx7d-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon", "simple-mfd";
> >          reg = <0x1000 0x100>;
> 
> Is leaving no compatible the correct solution here?

Documenting iomuxc-gpr is really the right one, but as I said it is a 
mess and I'm not touching that.

But compatible is not really important in terms of what the example 
shows. 

> Do we have another (working) platform that we can use in its place?

Not one for video muxing that I'm aware of.

> Does it make sense to leave the "syscon" and "simple-mfd" entries?

No, because we don't allow those on their own.

Rob

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

* Re: [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples
  2022-04-26 14:14   ` Rob Herring
@ 2022-04-26 14:49     ` Lee Jones
  0 siblings, 0 replies; 5+ messages in thread
From: Lee Jones @ 2022-04-26 14:49 UTC (permalink / raw)
  To: Rob Herring; +Cc: Krzysztof Kozlowski, Peter Rosin, devicetree, linux-kernel

On Tue, 26 Apr 2022, Rob Herring wrote:

> On Mon, Apr 25, 2022 at 08:58:10AM +0100, Lee Jones wrote:
> > On Fri, 22 Apr 2022, Rob Herring wrote:
> > 
> > > The i.MX iomuxc-gpr bindings are undocumented and a mess. Drop their use
> > > from the examples.
> > > 
> > > The problem with the binding beyond the just random variations is that
> > > the iomuxc-gpr is not a separate block, but registers within the iomuxc
> > > block containing random leftover controls. As a separate DT node, it
> > > creates nodes with overlapping memory addresses.
> > > 
> > > Signed-off-by: Rob Herring <robh@kernel.org>
> > > ---
> > >  Documentation/devicetree/bindings/mfd/syscon.yaml  | 8 --------
> > >  Documentation/devicetree/bindings/mux/reg-mux.yaml | 1 -
> > >  2 files changed, 9 deletions(-)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
> > > index 13baa452cc9d..fb784045013f 100644
> > > --- a/Documentation/devicetree/bindings/mfd/syscon.yaml
> > > +++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
> > > @@ -100,12 +100,4 @@ examples:
> > >          compatible = "allwinner,sun8i-h3-system-controller", "syscon";
> > >          reg = <0x01c00000 0x1000>;
> > >      };
> > > -
> > > -  - |
> > > -    gpr: iomuxc-gpr@20e0000 {
> > > -        compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
> > > -        reg = <0x020e0000 0x38>;
> > > -        hwlocks = <&hwlock1 1>;
> > > -    };
> > > -
> > >  ...
> > > diff --git a/Documentation/devicetree/bindings/mux/reg-mux.yaml b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > > index 60d5746eb39d..df4db96b5391 100644
> > > --- a/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > > +++ b/Documentation/devicetree/bindings/mux/reg-mux.yaml
> > > @@ -96,7 +96,6 @@ examples:
> > >  
> > >      #include <dt-bindings/mux/mux.h>
> > >      syscon@1000 {
> > > -        compatible = "fsl,imx7d-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon", "simple-mfd";
> > >          reg = <0x1000 0x100>;
> > 
> > Is leaving no compatible the correct solution here?
> 
> Documenting iomuxc-gpr is really the right one, but as I said it is a 
> mess and I'm not touching that.
> 
> But compatible is not really important in terms of what the example 
> shows. 
> 
> > Do we have another (working) platform that we can use in its place?
> 
> Not one for video muxing that I'm aware of.
> 
> > Does it make sense to leave the "syscon" and "simple-mfd" entries?
> 
> No, because we don't allow those on their own.

Very well.  I applied this for now.

... pending any fall-out from the Mux Maintainer. :)

-- 
Lee Jones [李琼斯]
Principal Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

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

end of thread, other threads:[~2022-04-26 14:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-22 19:21 [PATCH] dt-bindings: Drop undocumented i.MX iomuxc-gpr bindings in examples Rob Herring
2022-04-25  6:19 ` Peter Rosin
2022-04-25  7:58 ` Lee Jones
2022-04-26 14:14   ` Rob Herring
2022-04-26 14:49     ` Lee Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.