mirror of https://github.com/hak5/openwrt.git
106 lines
3.0 KiB
Diff
106 lines
3.0 KiB
Diff
From b21fcb259313bcf7d4f73ecd5e44948995c8957c Mon Sep 17 00:00:00 2001
|
|
From: Philippe Reynes <tremyfr@gmail.com>
|
|
Date: Sun, 19 Jun 2016 22:37:05 +0200
|
|
Subject: [PATCH 1/2] net: ethernet: bgmac: 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: Philippe Reynes <tremyfr@gmail.com>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
---
|
|
drivers/net/ethernet/broadcom/bgmac.c | 17 ++++++-----------
|
|
drivers/net/ethernet/broadcom/bgmac.h | 1 -
|
|
2 files changed, 6 insertions(+), 12 deletions(-)
|
|
|
|
--- a/drivers/net/ethernet/broadcom/bgmac.c
|
|
+++ b/drivers/net/ethernet/broadcom/bgmac.c
|
|
@@ -1324,7 +1324,7 @@ static int bgmac_open(struct net_device
|
|
}
|
|
napi_enable(&bgmac->napi);
|
|
|
|
- phy_start(bgmac->phy_dev);
|
|
+ phy_start(net_dev->phydev);
|
|
|
|
netif_start_queue(net_dev);
|
|
|
|
@@ -1337,7 +1337,7 @@ static int bgmac_stop(struct net_device
|
|
|
|
netif_carrier_off(net_dev);
|
|
|
|
- phy_stop(bgmac->phy_dev);
|
|
+ phy_stop(net_dev->phydev);
|
|
|
|
napi_disable(&bgmac->napi);
|
|
bgmac_chip_intrs_off(bgmac);
|
|
@@ -1375,12 +1375,10 @@ static int bgmac_set_mac_address(struct
|
|
|
|
static int bgmac_ioctl(struct net_device *net_dev, struct ifreq *ifr, int cmd)
|
|
{
|
|
- struct bgmac *bgmac = netdev_priv(net_dev);
|
|
-
|
|
if (!netif_running(net_dev))
|
|
return -EINVAL;
|
|
|
|
- return phy_mii_ioctl(bgmac->phy_dev, ifr, cmd);
|
|
+ return phy_mii_ioctl(net_dev->phydev, ifr, cmd);
|
|
}
|
|
|
|
static const struct net_device_ops bgmac_netdev_ops = {
|
|
@@ -1523,7 +1521,7 @@ static int bgmac_get_settings(struct net
|
|
{
|
|
struct bgmac *bgmac = netdev_priv(net_dev);
|
|
|
|
- return phy_ethtool_gset(bgmac->phy_dev, cmd);
|
|
+ return phy_ethtool_gset(net_dev->phydev, cmd);
|
|
}
|
|
|
|
static int bgmac_set_settings(struct net_device *net_dev,
|
|
@@ -1531,7 +1529,7 @@ static int bgmac_set_settings(struct net
|
|
{
|
|
struct bgmac *bgmac = netdev_priv(net_dev);
|
|
|
|
- return phy_ethtool_sset(bgmac->phy_dev, cmd);
|
|
+ return phy_ethtool_sset(net_dev->phydev, cmd);
|
|
}
|
|
|
|
static void bgmac_get_drvinfo(struct net_device *net_dev,
|
|
@@ -1568,7 +1566,7 @@ static int bgmac_mii_write(struct mii_bu
|
|
static void bgmac_adjust_link(struct net_device *net_dev)
|
|
{
|
|
struct bgmac *bgmac = netdev_priv(net_dev);
|
|
- struct phy_device *phy_dev = bgmac->phy_dev;
|
|
+ struct phy_device *phy_dev = net_dev->phydev;
|
|
bool update = false;
|
|
|
|
if (phy_dev->link) {
|
|
@@ -1612,8 +1610,6 @@ static int bgmac_fixed_phy_register(stru
|
|
return err;
|
|
}
|
|
|
|
- bgmac->phy_dev = phy_dev;
|
|
-
|
|
return err;
|
|
}
|
|
|
|
@@ -1666,7 +1662,6 @@ static int bgmac_mii_register(struct bgm
|
|
err = PTR_ERR(phy_dev);
|
|
goto err_unregister_bus;
|
|
}
|
|
- bgmac->phy_dev = phy_dev;
|
|
|
|
return err;
|
|
|
|
--- a/drivers/net/ethernet/broadcom/bgmac.h
|
|
+++ b/drivers/net/ethernet/broadcom/bgmac.h
|
|
@@ -441,7 +441,6 @@ struct bgmac {
|
|
struct net_device *net_dev;
|
|
struct napi_struct napi;
|
|
struct mii_bus *mii_bus;
|
|
- struct phy_device *phy_dev;
|
|
|
|
/* DMA */
|
|
struct bgmac_dma_ring tx_ring[BGMAC_MAX_TX_RINGS];
|