From: Quentin Schulz <quentin.sch...@bootlin.com> Date: Fri, 23 Nov 2018 19:01:51 +0100
> The vsc85xx_default_config function called in the vsc85xx_config_init > function which is used by VSC8530, VSC8531, VSC8540 and VSC8541 PHYs > mistakenly calls phy_read and phy_write in-between phy_select_page and > phy_restore_page. > > phy_select_page and phy_restore_page actually take and release the MDIO > bus lock and phy_write and phy_read take and release the lock to write > or read to a PHY register. > > Let's fix this deadlock by using phy_modify_paged which handles > correctly a read followed by a write in a non-standard page. > > Fixes: 6a0bfbbe20b0 ("net: phy: mscc: migrate to phy_select/restore_page > functions") > Signed-off-by: Quentin Schulz <quentin.sch...@bootlin.com> Applied.