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 <[email protected]>
---
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
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 <[email protected]>
> ---
> 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
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 <[email protected]>
> ---
> 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 <[email protected]>
Cheers,
Peter
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 <[email protected]>
> > ---
> > 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
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 <[email protected]>
> > > ---
> > > 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