Messages in this thread | | | Date | Mon, 23 Jan 2023 14:06:53 +0100 | From | Andrew Lunn <> | Subject | Re: [PATCH v2 net-next] net: phy: microchip: run phy initialization during each link update |
| |
On Fri, Jan 20, 2023 at 04:17:33PM +0530, Rakesh Sankaranarayanan wrote: > PHY initialization is supposed to run on every mode changes. > "lan87xx_config_aneg()" verifies every mode change using > "phy_modify_changed()" function. Earlier code had phy_modify_changed() > followed by genphy_soft_reset. But soft_reset resets all the > pre-configured register values to default state, and lost all the > initialization done. With this reason gen_phy_reset was removed. > But it need to go through init sequence each time the mode changed. > Update lan87xx_config_aneg() to invoke phy_init once successful mode > update is detected. > > PHY init sequence added in lan87xx_phy_init() have slave init > commands executed every time. Update the init sequence to run > slave init only if phydev is in slave mode. > > Test setup contains LAN9370 EVB connected to SAMA5D3 (Running DSA), > and issue can be reproduced by connecting link to any of the available > ports after SAMA5D3 boot-up. With this issue, port will fail to > update link state. But once the SAMA5D3 is reset with LAN9370 link in > connected state itself, on boot-up link state will be reported as UP. But > Again after some time, if link is moved to DOWN state, it will not get > reported. > > Signed-off-by: Rakesh Sankaranarayanan <rakesh.sankaranarayanan@microchip.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Andrew
| |