net: phy: gmii2rgmii: Dont use priv field in phy device
authorHarini Katakam <harini.katakam@xilinx.com>
Wed, 4 Sep 2019 14:00:21 +0000 (19:30 +0530)
committerDavid S. Miller <davem@davemloft.net>
Thu, 5 Sep 2019 10:32:06 +0000 (12:32 +0200)
Use set/get drv data in phydev's mdio device instead. Phy device priv
field maybe used by the external phy driver and should not be
overwritten.

Signed-off-by: Harini Katakam <harini.katakam@xilinx.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/xilinx_gmii2rgmii.c

index 2d1449345959259c908ee2999d387029b66087f2..151c2a3f0b3a353d0aa76d1bb0cce177bcbb595f 100644 (file)
@@ -29,7 +29,7 @@ struct gmii2rgmii {
 
 static int xgmiitorgmii_read_status(struct phy_device *phydev)
 {
-       struct gmii2rgmii *priv = phydev->priv;
+       struct gmii2rgmii *priv = mdiodev_get_drvdata(&phydev->mdio);
        struct mii_bus *bus = priv->mdio->bus;
        int addr = priv->mdio->addr;
        u16 val = 0;
@@ -90,7 +90,7 @@ static int xgmiitorgmii_probe(struct mdio_device *mdiodev)
        memcpy(&priv->conv_phy_drv, priv->phy_dev->drv,
               sizeof(struct phy_driver));
        priv->conv_phy_drv.read_status = xgmiitorgmii_read_status;
-       priv->phy_dev->priv = priv;
+       mdiodev_set_drvdata(&priv->phy_dev->mdio, priv);
        priv->phy_dev->drv = &priv->conv_phy_drv;
 
        return 0;