aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/files/drivers/net/phy/psb6970.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2017-02-02 14:36:50 +0100
committerFelix Fietkau <nbd@nbd.name>2017-02-03 12:35:44 +0100
commit1a52d11d38ddb3cb511a55d01ce4b497322eb1ed (patch)
tree64319d11170480011a50a18124eddcc81b85ba43 /target/linux/generic/files/drivers/net/phy/psb6970.c
parent402193baa155255f08944a579f1f17e016d6cac2 (diff)
downloadupstream-1a52d11d38ddb3cb511a55d01ce4b497322eb1ed.tar.gz
upstream-1a52d11d38ddb3cb511a55d01ce4b497322eb1ed.tar.bz2
upstream-1a52d11d38ddb3cb511a55d01ce4b497322eb1ed.zip
kernel: update phy drivers for 4.9
add backport patches for older kernels Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'target/linux/generic/files/drivers/net/phy/psb6970.c')
-rw-r--r--target/linux/generic/files/drivers/net/phy/psb6970.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/psb6970.c b/target/linux/generic/files/drivers/net/phy/psb6970.c
index 2fcd299013..c1a381c052 100644
--- a/target/linux/generic/files/drivers/net/phy/psb6970.c
+++ b/target/linux/generic/files/drivers/net/phy/psb6970.c
@@ -70,12 +70,16 @@ struct psb6970_priv {
static u16 psb6970_mii_read(struct phy_device *phydev, int reg)
{
- return phydev->bus->read(phydev->bus, PHYADDR(reg));
+ struct mii_bus *bus = phydev->mdio.bus;
+
+ return bus->read(bus, PHYADDR(reg));
}
static void psb6970_mii_write(struct phy_device *phydev, int reg, u16 val)
{
- phydev->bus->write(phydev->bus, PHYADDR(reg), val);
+ struct mii_bus *bus = phydev->mdio.bus;
+
+ bus->write(bus, PHYADDR(reg), val);
}
static int
@@ -312,11 +316,11 @@ static int psb6970_config_init(struct phy_device *pdev)
priv->phy = pdev;
- if (pdev->addr == 0)
+ if (pdev->mdio.addr == 0)
printk(KERN_INFO "%s: psb6970 switch driver attached.\n",
pdev->attached_dev->name);
- if (pdev->addr != 0) {
+ if (pdev->mdio.addr != 0) {
kfree(priv);
return 0;
}
@@ -384,14 +388,14 @@ static void psb6970_remove(struct phy_device *pdev)
if (!priv)
return;
- if (pdev->addr == 0)
+ if (pdev->mdio.addr == 0)
unregister_switch(&priv->dev);
kfree(priv);
}
static int psb6970_fixup(struct phy_device *dev)
{
- struct mii_bus *bus = dev->bus;
+ struct mii_bus *bus = dev->mdio.bus;
u16 reg;
/* look for the switch on the bus */
@@ -415,13 +419,12 @@ static struct phy_driver psb6970_driver = {
.config_init = &psb6970_config_init,
.config_aneg = &psb6970_config_aneg,
.read_status = &psb6970_read_status,
- .driver = {.owner = THIS_MODULE},
};
int __init psb6970_init(void)
{
phy_register_fixup_for_id(PHY_ANY_ID, psb6970_fixup);
- return phy_driver_register(&psb6970_driver);
+ return phy_driver_register(&psb6970_driver, THIS_MODULE);
}
module_init(psb6970_init);