On 25/03/2026 02:09, Marek Vasut wrote: > At the very early stage when PHY ID is being auto-detected, the > PHY device is not yet instantiated and rswitch_etha .phydev is > still NULL. Add missing check for this condition and perform C22 > fallback access in this PHY ID auto-detection case. > > Signed-off-by: Marek Vasut <[email protected]> > --- > Cc: Andrew Goodbody <[email protected]> > Cc: Hai Pham <[email protected]> > Cc: Jerome Forissier <[email protected]> > Cc: Nobuhiro Iwamatsu <[email protected]> > Cc: Phong Hoang <[email protected]> > Cc: Tam Nguyen <[email protected]> > Cc: Thanh Quan <[email protected]> > Cc: Tom Rini <[email protected]> > Cc: [email protected] > --- > drivers/net/rswitch.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-)
Added to net-next, thanks! -- Jerome > diff --git a/drivers/net/rswitch.c b/drivers/net/rswitch.c > index 801c22bbdc7..c51908ed8f3 100644 > --- a/drivers/net/rswitch.c > +++ b/drivers/net/rswitch.c > @@ -482,7 +482,7 @@ static int rswitch_mii_read_c45(struct mii_dev *miidev, > int phyad, int devad, in > /* Access PHY register */ > if (devad != MDIO_DEVAD_NONE) /* Definitelly C45 */ > val = rswitch_mii_access_c45(etha_mii, true, phyad, devad, > regad, 0); > - else if (etha->phydev->is_c45) /* C22 access to C45 PHY */ > + else if (etha->phydev && etha->phydev->is_c45) /* C22 access to C45 > PHY */ > val = rswitch_mii_access_c45(etha_mii, true, phyad, 1, regad, > 0); > else > val = rswitch_mii_access_c22(etha_mii, true, phyad, regad, 0); > @@ -516,7 +516,7 @@ int rswitch_mii_write_c45(struct mii_dev *miidev, int > phyad, int devad, int rega > /* Access PHY register */ > if (devad != MDIO_DEVAD_NONE) /* Definitelly C45 */ > rswitch_mii_access_c45(etha_mii, false, phyad, devad, regad, > data); > - else if (etha->phydev->is_c45) /* C22 access to C45 PHY */ > + else if (etha->phydev && etha->phydev->is_c45) /* C22 access to C45 > PHY */ > rswitch_mii_access_c45(etha_mii, false, phyad, 1, regad, data); > else > rswitch_mii_access_c22(etha_mii, false, phyad, regad, data);

