提交 941ea69e 编写于 作者: P Philippe Reynes 提交者: David S. Miller

net: ethernet: altera_tse: use phydev from struct net_device

The private structure contain a pointer to phydev, but the structure
net_device already contain such pointer. So we can remove the pointer
phydev in the private structure, and update the driver to use the
one contained in struct net_device.
Signed-off-by: NPhilippe Reynes <tremyfr@gmail.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 91cd3b44
...@@ -473,7 +473,6 @@ struct altera_tse_private { ...@@ -473,7 +473,6 @@ struct altera_tse_private {
int phy_addr; /* PHY's MDIO address, -1 for autodetection */ int phy_addr; /* PHY's MDIO address, -1 for autodetection */
phy_interface_t phy_iface; phy_interface_t phy_iface;
struct mii_bus *mdio; struct mii_bus *mdio;
struct phy_device *phydev;
int oldspeed; int oldspeed;
int oldduplex; int oldduplex;
int oldlink; int oldlink;
......
...@@ -235,8 +235,7 @@ static void tse_get_regs(struct net_device *dev, struct ethtool_regs *regs, ...@@ -235,8 +235,7 @@ static void tse_get_regs(struct net_device *dev, struct ethtool_regs *regs,
static int tse_get_settings(struct net_device *dev, struct ethtool_cmd *cmd) static int tse_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
{ {
struct altera_tse_private *priv = netdev_priv(dev); struct phy_device *phydev = dev->phydev;
struct phy_device *phydev = priv->phydev;
if (phydev == NULL) if (phydev == NULL)
return -ENODEV; return -ENODEV;
...@@ -246,8 +245,7 @@ static int tse_get_settings(struct net_device *dev, struct ethtool_cmd *cmd) ...@@ -246,8 +245,7 @@ static int tse_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
static int tse_set_settings(struct net_device *dev, struct ethtool_cmd *cmd) static int tse_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
{ {
struct altera_tse_private *priv = netdev_priv(dev); struct phy_device *phydev = dev->phydev;
struct phy_device *phydev = priv->phydev;
if (phydev == NULL) if (phydev == NULL)
return -ENODEV; return -ENODEV;
......
...@@ -625,7 +625,7 @@ static int tse_start_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -625,7 +625,7 @@ static int tse_start_xmit(struct sk_buff *skb, struct net_device *dev)
static void altera_tse_adjust_link(struct net_device *dev) static void altera_tse_adjust_link(struct net_device *dev)
{ {
struct altera_tse_private *priv = netdev_priv(dev); struct altera_tse_private *priv = netdev_priv(dev);
struct phy_device *phydev = priv->phydev; struct phy_device *phydev = dev->phydev;
int new_state = 0; int new_state = 0;
/* only change config if there is a link */ /* only change config if there is a link */
...@@ -845,7 +845,6 @@ static int init_phy(struct net_device *dev) ...@@ -845,7 +845,6 @@ static int init_phy(struct net_device *dev)
netdev_dbg(dev, "attached to PHY %d UID 0x%08x Link = %d\n", netdev_dbg(dev, "attached to PHY %d UID 0x%08x Link = %d\n",
phydev->mdio.addr, phydev->phy_id, phydev->link); phydev->mdio.addr, phydev->phy_id, phydev->link);
priv->phydev = phydev;
return 0; return 0;
} }
...@@ -1172,8 +1171,8 @@ static int tse_open(struct net_device *dev) ...@@ -1172,8 +1171,8 @@ static int tse_open(struct net_device *dev)
spin_unlock_irqrestore(&priv->rxdma_irq_lock, flags); spin_unlock_irqrestore(&priv->rxdma_irq_lock, flags);
if (priv->phydev) if (dev->phydev)
phy_start(priv->phydev); phy_start(dev->phydev);
napi_enable(&priv->napi); napi_enable(&priv->napi);
netif_start_queue(dev); netif_start_queue(dev);
...@@ -1205,8 +1204,8 @@ static int tse_shutdown(struct net_device *dev) ...@@ -1205,8 +1204,8 @@ static int tse_shutdown(struct net_device *dev)
unsigned long int flags; unsigned long int flags;
/* Stop the PHY */ /* Stop the PHY */
if (priv->phydev) if (dev->phydev)
phy_stop(priv->phydev); phy_stop(dev->phydev);
netif_stop_queue(dev); netif_stop_queue(dev);
napi_disable(&priv->napi); napi_disable(&priv->napi);
...@@ -1545,10 +1544,9 @@ static int altera_tse_probe(struct platform_device *pdev) ...@@ -1545,10 +1544,9 @@ static int altera_tse_probe(struct platform_device *pdev)
static int altera_tse_remove(struct platform_device *pdev) static int altera_tse_remove(struct platform_device *pdev)
{ {
struct net_device *ndev = platform_get_drvdata(pdev); struct net_device *ndev = platform_get_drvdata(pdev);
struct altera_tse_private *priv = netdev_priv(ndev);
if (priv->phydev) if (ndev->phydev)
phy_disconnect(priv->phydev); phy_disconnect(ndev->phydev);
platform_set_drvdata(pdev, NULL); platform_set_drvdata(pdev, NULL);
altera_tse_mdio_destroy(ndev); altera_tse_mdio_destroy(ndev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册