On Wed, 2018-08-08 at 00:00 +0200, Maxime Jourdan wrote:
> Wrap the canvas node in a syscon node.
> 
> Signed-off-by: Maxime Jourdan <maxi.jour...@wanadoo.fr>
> ---
>  arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi 
> b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> index b8dc4dbb391b..c98198662ae2 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> @@ -423,6 +423,23 @@
>                       };
>               };
>  
> +             dmcbus: bus@c8838000 {
> +                     compatible = "simple-bus";
> +                     reg = <0x0 0xc8838000 0x0 0x1000>;
> +                     #address-cells = <2>;
> +                     #size-cells = <2>;
> +                     ranges = <0x0 0x0 0x0 0xc8838000 0x0 0x1000>;
> +
> +                     sysctrl_DMC: system-controller@0 {
> +                             compatible = "amlogic,gx-dmc-sysctrl", 
> "syscon", "simple-mfd";
> +                             reg = <0x0 0x0 0x0 0x1000>;
> +
> +                             canvas: canvas-provider@0 {
> +                                     compatible = "amlogic,canvas";

If there is only one canvas provider under "sysctrl_DMC" and it has no reg
property , you should not put a unit-address (@0) here. (same for the
documentation patch)

You may have seen unit-address without a reg property used elsewhere (ASoC
simple-card, my recent axg-sound-card), when there is multiple node with the
same node-name (ex: dai-link).

As Martin pointed out, the DT spec says we should not use unit-address unless
there is a reg property. We did not get Rob's view on this and we might have to
update this later on. In your case, unless I missed something, you should
definitely not have it

nitpick regarding the node-name (canvas-provider). If appropriate, we should try
to stick to one of the generic names proposed in the spec. I wonder if the
canvas provider could be viewed as a "memory" or "memory-controller"

So, what about this ? Just a proposition, feel free to comment ;)

        sysctrl_DMC: system-controller@0 {                                      
                compatib
le = "amlogic,gx-dmc-sysctrl", "syscon", "simple-mfd";>                 reg =
<0x0 0x0 0x0 0x1000>;
        
                canvas: memory-controller {
                        compatible = "amlogic,canvas";
                }

[...]


> +                             };
> +                     };
> +             };
> +
>               hiubus: bus@c883c000 {
>                       compatible = "simple-bus";
>                       reg = <0x0 0xc883c000 0x0 0x2000>;


Reply via email to