|
|
@@ -1,6 +1,6 @@
|
|
|
--- a/drivers/net/phy/adm6996.c
|
|
|
+++ b/drivers/net/phy/adm6996.c
|
|
|
-@@ -287,7 +287,7 @@ static u16
|
|
|
+@@ -289,7 +289,7 @@ static u16
|
|
|
adm6996_read_mii_reg(struct adm6996_priv *priv, enum admreg reg)
|
|
|
{
|
|
|
struct phy_device *phydev = priv->priv;
|
|
|
@@ -9,7 +9,7 @@
|
|
|
|
|
|
return bus->read(bus, PHYADDR(reg));
|
|
|
}
|
|
|
-@@ -296,7 +296,7 @@ static void
|
|
|
+@@ -298,7 +298,7 @@ static void
|
|
|
adm6996_write_mii_reg(struct adm6996_priv *priv, enum admreg reg, u16 val)
|
|
|
{
|
|
|
struct phy_device *phydev = priv->priv;
|
|
|
@@ -18,7 +18,7 @@
|
|
|
|
|
|
bus->write(bus, PHYADDR(reg), val);
|
|
|
}
|
|
|
-@@ -1019,13 +1019,13 @@ static int adm6996_config_init(struct ph
|
|
|
+@@ -1050,13 +1050,13 @@ static int adm6996_config_init(struct ph
|
|
|
pdev->supported = ADVERTISED_100baseT_Full;
|
|
|
pdev->advertising = ADVERTISED_100baseT_Full;
|
|
|
|
|
|
@@ -35,7 +35,7 @@
|
|
|
if (!priv)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
-@@ -1045,7 +1045,7 @@ static int adm6996_config_init(struct ph
|
|
|
+@@ -1076,7 +1076,7 @@ static int adm6996_config_init(struct ph
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
@@ -44,7 +44,7 @@
|
|
|
*/
|
|
|
static int adm6996_read_status(struct phy_device *phydev)
|
|
|
{
|
|
|
-@@ -1061,7 +1061,7 @@ static int adm6996_read_status(struct ph
|
|
|
+@@ -1092,7 +1092,7 @@ static int adm6996_read_status(struct ph
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
@@ -53,7 +53,7 @@
|
|
|
*/
|
|
|
static int adm6996_config_aneg(struct phy_device *phydev)
|
|
|
{
|
|
|
-@@ -1070,11 +1070,11 @@ static int adm6996_config_aneg(struct ph
|
|
|
+@@ -1101,11 +1101,11 @@ static int adm6996_config_aneg(struct ph
|
|
|
|
|
|
static int adm6996_fixup(struct phy_device *dev)
|
|
|
{
|
|
|
@@ -67,7 +67,7 @@
|
|
|
return 0;
|
|
|
|
|
|
/* look for the switch on the bus */
|
|
|
-@@ -1121,6 +1121,7 @@ static struct phy_driver adm6996_phy_dri
|
|
|
+@@ -1152,6 +1152,7 @@ static struct phy_driver adm6996_phy_dri
|
|
|
.config_aneg = &adm6996_config_aneg,
|
|
|
.read_status = &adm6996_read_status,
|
|
|
.soft_reset = adm6996_soft_reset,
|
|
|
@@ -75,7 +75,7 @@
|
|
|
};
|
|
|
|
|
|
static int adm6996_gpio_probe(struct platform_device *pdev)
|
|
|
-@@ -1193,7 +1194,7 @@ static int __init adm6996_init(void)
|
|
|
+@@ -1220,7 +1221,7 @@ static int __init adm6996_init(void)
|
|
|
int err;
|
|
|
|
|
|
phy_register_fixup_for_id(PHY_ANY_ID, adm6996_fixup);
|
|
|
@@ -95,7 +95,7 @@
|
|
|
ret |= BMCR_ANENABLE | BMCR_ANRESTART;
|
|
|
return phy_write(phydev, MII_BMCR, ret);
|
|
|
}
|
|
|
-@@ -1996,7 +1996,7 @@ ar8xxx_phy_config_init(struct phy_device
|
|
|
+@@ -2007,7 +2007,7 @@ ar8xxx_phy_config_init(struct phy_device
|
|
|
|
|
|
priv->phy = phydev;
|
|
|
|
|
|
@@ -104,7 +104,7 @@
|
|
|
if (chip_is_ar8316(priv)) {
|
|
|
/* switch device has been initialized, reinit */
|
|
|
priv->dev.ports = (AR8216_NUM_PORTS - 1);
|
|
|
-@@ -2044,7 +2044,7 @@ ar8xxx_check_link_states(struct ar8xxx_p
|
|
|
+@@ -2055,7 +2055,7 @@ ar8xxx_check_link_states(struct ar8xxx_p
|
|
|
/* flush ARL entries for this port if it went down*/
|
|
|
if (!link_new)
|
|
|
priv->chip->atu_flush_port(priv, i);
|
|
|
@@ -113,7 +113,7 @@
|
|
|
i, link_new ? "up" : "down");
|
|
|
}
|
|
|
|
|
|
-@@ -2063,10 +2063,10 @@ ar8xxx_phy_read_status(struct phy_device
|
|
|
+@@ -2074,10 +2074,10 @@ ar8xxx_phy_read_status(struct phy_device
|
|
|
if (phydev->state == PHY_CHANGELINK)
|
|
|
ar8xxx_check_link_states(priv);
|
|
|
|
|
|
@@ -126,7 +126,7 @@
|
|
|
phydev->link = !!link.link;
|
|
|
if (!phydev->link)
|
|
|
return 0;
|
|
|
-@@ -2096,7 +2096,7 @@ ar8xxx_phy_read_status(struct phy_device
|
|
|
+@@ -2107,7 +2107,7 @@ ar8xxx_phy_read_status(struct phy_device
|
|
|
static int
|
|
|
ar8xxx_phy_config_aneg(struct phy_device *phydev)
|
|
|
{
|
|
|
@@ -135,7 +135,7 @@
|
|
|
return 0;
|
|
|
|
|
|
return genphy_config_aneg(phydev);
|
|
|
-@@ -2151,15 +2151,15 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
+@@ -2162,15 +2162,15 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
int ret;
|
|
|
|
|
|
/* skip PHYs at unused adresses */
|
|
|
@@ -154,7 +154,7 @@
|
|
|
goto found;
|
|
|
|
|
|
priv = ar8xxx_create();
|
|
|
-@@ -2168,7 +2168,7 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
+@@ -2179,7 +2179,7 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
goto unlock;
|
|
|
}
|
|
|
|
|
|
@@ -163,7 +163,7 @@
|
|
|
|
|
|
ret = ar8xxx_probe_switch(priv);
|
|
|
if (ret)
|
|
|
-@@ -2189,7 +2189,7 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
+@@ -2200,7 +2200,7 @@ ar8xxx_phy_probe(struct phy_device *phyd
|
|
|
found:
|
|
|
priv->use_count++;
|
|
|
|
|
|
@@ -172,7 +172,7 @@
|
|
|
if (ar8xxx_has_gige(priv)) {
|
|
|
phydev->supported = SUPPORTED_1000baseT_Full;
|
|
|
phydev->advertising = ADVERTISED_1000baseT_Full;
|
|
|
-@@ -2277,21 +2277,33 @@ ar8xxx_phy_soft_reset(struct phy_device
|
|
|
+@@ -2288,21 +2288,33 @@ ar8xxx_phy_soft_reset(struct phy_device
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
@@ -223,7 +223,7 @@
|
|
|
MODULE_LICENSE("GPL");
|
|
|
--- a/drivers/net/phy/ar8327.c
|
|
|
+++ b/drivers/net/phy/ar8327.c
|
|
|
-@@ -619,11 +619,11 @@ ar8327_hw_init(struct ar8xxx_priv *priv)
|
|
|
+@@ -627,11 +627,11 @@ ar8327_hw_init(struct ar8xxx_priv *priv)
|
|
|
if (!priv->chip_data)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
@@ -363,7 +363,7 @@
|
|
|
}
|
|
|
|
|
|
|
|
|
-@@ -392,13 +388,12 @@ mvswitch_probe(struct phy_device *pdev)
|
|
|
+@@ -398,13 +394,12 @@ mvswitch_probe(struct phy_device *pdev)
|
|
|
static int
|
|
|
mvswitch_fixup(struct phy_device *dev)
|
|
|
{
|
|
|
@@ -379,9 +379,9 @@
|
|
|
if (reg != MV_IDENT_VALUE)
|
|
|
return 0;
|
|
|
|
|
|
-@@ -418,13 +413,14 @@ static struct phy_driver mvswitch_driver
|
|
|
- .config_init = &mvswitch_config_init,
|
|
|
+@@ -425,13 +420,14 @@ static struct phy_driver mvswitch_driver
|
|
|
.config_aneg = &mvswitch_config_aneg,
|
|
|
+ .aneg_done = &mvswitch_aneg_done,
|
|
|
.read_status = &mvswitch_read_status,
|
|
|
+ .driver = { .owner = THIS_MODULE,},
|
|
|
};
|
|
|
@@ -464,7 +464,7 @@
|
|
|
module_init(psb6970_init);
|
|
|
--- a/drivers/net/phy/rtl8306.c
|
|
|
+++ b/drivers/net/phy/rtl8306.c
|
|
|
-@@ -872,7 +872,7 @@ rtl8306_config_init(struct phy_device *p
|
|
|
+@@ -876,7 +876,7 @@ rtl8306_config_init(struct phy_device *p
|
|
|
int err;
|
|
|
|
|
|
/* Only init the switch for the primary PHY */
|
|
|
@@ -473,7 +473,7 @@
|
|
|
return 0;
|
|
|
|
|
|
val.value.i = 1;
|
|
|
-@@ -882,7 +882,7 @@ rtl8306_config_init(struct phy_device *p
|
|
|
+@@ -886,7 +886,7 @@ rtl8306_config_init(struct phy_device *p
|
|
|
priv->dev.ops = &rtl8306_ops;
|
|
|
priv->do_cpu = 0;
|
|
|
priv->page = -1;
|
|
|
@@ -482,7 +482,7 @@
|
|
|
|
|
|
chipid = rtl_get(dev, RTL_REG_CHIPID);
|
|
|
chipver = rtl_get(dev, RTL_REG_CHIPVER);
|
|
|
-@@ -928,13 +928,13 @@ rtl8306_fixup(struct phy_device *pdev)
|
|
|
+@@ -932,13 +932,13 @@ rtl8306_fixup(struct phy_device *pdev)
|
|
|
u16 chipid;
|
|
|
|
|
|
/* Attach to primary LAN port and WAN port */
|
|
|
@@ -498,7 +498,7 @@
|
|
|
chipid = rtl_get(&priv.dev, RTL_REG_CHIPID);
|
|
|
if (chipid == 0x5988)
|
|
|
pdev->phy_id = RTL8306_MAGIC;
|
|
|
-@@ -952,14 +952,14 @@ rtl8306_probe(struct phy_device *pdev)
|
|
|
+@@ -956,14 +956,14 @@ rtl8306_probe(struct phy_device *pdev)
|
|
|
* share one rtl_priv instance between virtual phy
|
|
|
* devices on the same bus
|
|
|
*/
|
|
|
@@ -515,7 +515,7 @@
|
|
|
|
|
|
found:
|
|
|
pdev->priv = priv;
|
|
|
-@@ -980,7 +980,7 @@ rtl8306_config_aneg(struct phy_device *p
|
|
|
+@@ -984,7 +984,7 @@ rtl8306_config_aneg(struct phy_device *p
|
|
|
struct rtl_priv *priv = pdev->priv;
|
|
|
|
|
|
/* Only for WAN */
|
|
|
@@ -524,7 +524,7 @@
|
|
|
return 0;
|
|
|
|
|
|
/* Restart autonegotiation */
|
|
|
-@@ -996,7 +996,7 @@ rtl8306_read_status(struct phy_device *p
|
|
|
+@@ -1000,7 +1000,7 @@ rtl8306_read_status(struct phy_device *p
|
|
|
struct rtl_priv *priv = pdev->priv;
|
|
|
struct switch_dev *dev = &priv->dev;
|
|
|
|
|
|
@@ -533,7 +533,7 @@
|
|
|
/* WAN */
|
|
|
pdev->speed = rtl_get(dev, RTL_PORT_REG(4, SPEED)) ? SPEED_100 : SPEED_10;
|
|
|
pdev->duplex = rtl_get(dev, RTL_PORT_REG(4, DUPLEX)) ? DUPLEX_FULL : DUPLEX_HALF;
|
|
|
-@@ -1037,6 +1037,7 @@ static struct phy_driver rtl8306_driver
|
|
|
+@@ -1041,6 +1041,7 @@ static struct phy_driver rtl8306_driver
|
|
|
.config_init = &rtl8306_config_init,
|
|
|
.config_aneg = &rtl8306_config_aneg,
|
|
|
.read_status = &rtl8306_read_status,
|
|
|
@@ -541,7 +541,7 @@
|
|
|
};
|
|
|
|
|
|
|
|
|
-@@ -1044,7 +1045,7 @@ static int __init
|
|
|
+@@ -1048,7 +1049,7 @@ static int __init
|
|
|
rtl_init(void)
|
|
|
{
|
|
|
phy_register_fixup_for_id(PHY_ANY_ID, rtl8306_fixup);
|