[PATCH 6/6] net: octeontx: smi: fix mii probe

Suneel Garapati suneelglinux at gmail.com
Fri Mar 26 17:03:11 CET 2021


Probably switch to Live tree API is needed like below.
        ofnode_for_each_subnode(subnode, dev_ofnode(dev)) {
                ret = ofnode_device_is_compatible(subnode,
                                                  "cavium,thunder-8890-mdio");

Regards,
Suneel

On Fri, Mar 26, 2021 at 8:56 AM Tim Harvey <tharvey at gateworks.com> wrote:
>
> On Thu, Mar 25, 2021 at 11:48 PM Stefan Roese <sr at denx.de> wrote:
> >
> > On 26.03.21 01:07, Tim Harvey wrote:
> > > The fdt node offset is apparently not set properly when probed
> > > causing no MDIO busses to be found. Fix this by obtaining the
> > > offset.
> > >
> > > Signed-off-by: Tim Harvey <tharvey at gateworks.com>
> >
> > Reviewed-by: Stefan Roese <sr at denx.de>
> >
> > Thanks,
> > Stefan
> >
> > > ---
> > >   drivers/net/octeontx/smi.c | 2 ++
> > >   1 file changed, 2 insertions(+)
> > >
> > > diff --git a/drivers/net/octeontx/smi.c b/drivers/net/octeontx/smi.c
> > > index 91dcd05e4b..27f4423c6a 100644
> > > --- a/drivers/net/octeontx/smi.c
> > > +++ b/drivers/net/octeontx/smi.c
> > > @@ -325,6 +325,8 @@ int octeontx_smi_probe(struct udevice *dev)
> > >               return -1;
> > >       }
> > >
> > > +     node = fdt_node_offset_by_compatible(gd->fdt_blob, -1,
> > > +                                          "cavium,thunder-8890-mdio-nexus");
> > >       fdt_for_each_subnode(subnode, gd->fdt_blob, node) {
> > >               ret = fdt_node_check_compatible(gd->fdt_blob, subnode,
> > >                                               "cavium,thunder-8890-mdio");
> > >
>
> Honestly this is the wrong fix for this issue and I'm hoping someone
> could educate me. I'm a bit confused at why there are several ways to
> work with dt (int offsets vs ofnodes which are unions of int offsets
> and node pointers???).
>
> The above patch was not needed previously so something changed in the
> ofnode field of struct udevice between v2019.10 and v2021.01.
>
> Simon, could you explain what the proper way to work with dev->ofnode
> in probe functions is to loop over subnodes?
>
> Best regards,
>
> Tim


More information about the U-Boot mailing list