Aw: Re: [PATCH v3 5/6] dt-bindings: net: dsa: make reset optional and add rgmii-mode to mt7531

Frank Wunderlich
2022-05-08T12:13:12Z

Hi Heiko

> Gesendet: Sonntag, 08. Mai 2022 um 11:41 Uhr
> Von: "Heiko Stuebner" <heiko@sntech.de>
> Am Sonntag, 8. Mai 2022, 08:24:37 CEST schrieb Frank Wunderlich:
> > Am 7. Mai 2022 22:01:22 MESZ schrieb Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>:
> > >On 07/05/2022 19:04, Frank Wunderlich wrote:
> > >> From: Frank Wunderlich <frank-w@public-files.de>
> > >>
> > >> Make reset optional as driver already supports it,
> > >
> > >I do not see the connection between hardware needing or not needing a
> > >reset GPIO and a driver supporting it or not... What does it mean?
> >
> > My board has a shared gpio-reset between gmac and switch, so both will resetted if it
> > is asserted. Currently it is set to the gmac and is aquired exclusive. Adding it to switch results in 2 problems:
> >
> > - due to exclusive and already mapped to gmac, switch driver exits as it cannot get the reset-gpio again.
> > - if i drop the reset from gmac and add to switch, it resets the gmac and this takes too long for switch
> > to get up. Of course i can increase the wait time after reset,but dropping reset here was the easier way.
> >
> > Using reset only on gmac side brings the switch up.
>
> I think the issue is more for the description itself.
>
> Devicetree is only meant to describe the hardware and does in general don't
> care how any firmware (Linux-kernel, *BSD, etc) handles it. So going with
> "the kernel does it this way" is not a valid reason for a binding change ;-) .
>
> Instead in general want to reason that there are boards without this reset
> facility and thus make it optional for those.

if only the wording is the problem i try to rephrase it from hardware PoV.

maybe something like this?

https://github.com/frank-w/BPI-R2-4.14/commits/5.18-mt7531-mainline2/Documentation/devicetree/bindings/net/dsa/mediatek%2Cmt7530.yaml

Another way is maybe increasing the delay after the reset (to give more time all
come up again), but imho it is no good idea resetting the gmac/mdio-bus from the
child device.

have not looked into the gmac driver if this always does the initial reset to
have a "clean state". In this initial reset the switch will be resetted too
and does not need an additional one which needs the gmac/mdio initialization
to be done again.

> > >> allow port 5 as
> > >> cpu-port
> > >
> > >How do you allow it here?
> >
> > Argh, seems i accidentally removed this part and have not recognized while checking :(
> >
> > It should only change description of reg for ports to:
> >
> > "Port address described must be 5 or 6 for CPU port and from 0 to 5 for user ports."

noticed that the target-phase is not removed but squashed in the first bindings-patch.
This was a rebasing error and not intented...will fix in next version.

regards Frank