Re: [PATCH net-next 09/12] ARM: dts: r9a06g032: describe MII converter

Andrew Lunn
2022-04-16T13:50:50Z

On Fri, Apr 15, 2022 at 06:45:41PM +0200, Clément Léger wrote:
> Le Fri, 15 Apr 2022 18:19:46 +0200,
> Andrew Lunn <andrew@lunn.ch> a écrit :
>
> > > I think it would be good to modify it like this:
> > >
> > > eth-miic@44030000 {
> > > ...
> > > converters {
> > > mii_conv0: mii-conv@0 {
> > > // Even if useless, maybe keeping it for the sake of coherency
> > > renesas,miic-input = <MIIC_GMAC1>;
> > > reg = <0>;
> > > };
> >
> > This is not a 'bus', so using reg, and @0, etc is i think wrong. You
> > just have a collection of properties.
>
> Agreed, but this is the same thing that is done for DSA ports (at least
> I think). It uses reg which describe the port number, this is not a
> real bus per se, it only refer to port indices.

True. That is an old binding, before a lot of good practices were
enforced. I'm not sure it would be accepted today.

I suggest you make a proposal and see what the DT Maintainers say.

> But if you think this should not be done like this, what do you
> propose then ? These nodes are also reference from "pcs-handle"
> properties in switch to retrieve the PCS.

This i was not thinking about. Make this clear in the binding
documentation for what you propose.

Humm, this last point just gave me an idea. How are you representing
the PCS in DT? Are they memory mapped? So you have a nodes something
like:

eth-pcs-conv1@44040100 {
compatible = "acm-inc,pcs"
}

eth-pcs-conv2@44040200 {
compatible = "acm-inc,pcs"
}

The MAC node than has a pcs-handle pointing to one of these nodes?

You implicitly have the information you need to configure the MII
muxes here. The information is a lot more distributed, but it is
there. As each MAC probes, it can ask the MII MUX driver to connect
its MAC to the converter pointed to by its pcs-handle.

Andrew