mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-03-24 04:08:00 +08:00
net: fec: ensure that a disconnected phy isn't configured
When we disconnect from a phy, we should forget our pointer to it so we don't accidentally try to configure it. We handle a NULL phy pointer correctly in most places, except fec_enet_set_pauseparam(). Fix this too. Acked-by: Fugang Duan <B38611@freescale.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
635cf17ce2
commit
0b146ca8d4
@ -1875,6 +1875,9 @@ static int fec_enet_set_pauseparam(struct net_device *ndev,
|
||||
{
|
||||
struct fec_enet_private *fep = netdev_priv(ndev);
|
||||
|
||||
if (!fep->phy_dev)
|
||||
return -ENODEV;
|
||||
|
||||
if (pause->tx_pause != pause->rx_pause) {
|
||||
netdev_info(ndev,
|
||||
"hardware only support enable/disable both tx and rx");
|
||||
@ -2186,6 +2189,7 @@ fec_enet_close(struct net_device *ndev)
|
||||
|
||||
phy_stop(fep->phy_dev);
|
||||
phy_disconnect(fep->phy_dev);
|
||||
fep->phy_dev = NULL;
|
||||
|
||||
fec_enet_clk_enable(ndev, false);
|
||||
pinctrl_pm_select_sleep_state(&fep->pdev->dev);
|
||||
|
Loading…
x
Reference in New Issue
Block a user