[PATCH v2 02/21] of: extra: Introduce ofnode_phy_is_fixed_link() API

Vladimir Oltean
2021-03-13T12:29:13Z

On Sat, Mar 13, 2021 at 02:14:36PM +0200, Vladimir Oltean wrote:
> On Fri, Mar 12, 2021 at 09:35:43PM +0800, Bin Meng wrote:
> > Introduce a helper API ofnode_phy_is_fixed_link() to detect whether
> > the ethernet controller connects to a fixed-link pseudo-PHY device.
> >
> > Note there are two ways to describe a fixed PHY attached to an
> > Ethernet device:
> >
> > - the new DT binding, where 'fixed-link' is a sub-node of the
> > Ethernet device
> > - the old DT binding, where 'fixed-link' is a property with 5
> > cells encoding various information about the fixed PHY
> >
> > Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> > Reviewed-by: Simon Glass <sjg@chromium.org>
> > ---
>
> I ran a 'grep -r "ofnode_get_property.*fixed-link" .' and saw no in-tree
> users of the old binding. Why do we bother to be compatible with
> something which isn't used?

Ah, I see what's going on.
QEMU fixes up the device tree here:
https://github.com/qemu/qemu/blob/master/hw/ppc/e500.c#L239
and adds an old-style fixed-link binding.
Can't you modify it to add a new-style fixed-link property? It's not
like you didn't have to modify it for the "ranges" property too :)