diff options
author | David S. Miller <davem@davemloft.net> | 2019-03-04 08:48:06 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-03-04 08:48:06 +0300 |
commit | 7d827379b062533085f3cd31762a8bb7bf48df19 (patch) | |
tree | 5a01c7bc9878996169117e00bb18e78c7ce0a1f9 | |
parent | 6bfc1128d58bf74cc864870d680325b330725806 (diff) | |
parent | 7be3ad848f77eba893bd08b97e7383e8d5e873ac (diff) | |
download | linux-7d827379b062533085f3cd31762a8bb7bf48df19.tar.xz |
Merge branch 'net-phy-clean-up-the-old-gen10g-functions'
Heiner Kallweit says:
====================
net: phy: clean up the old gen10g functions
The old gen10g_ functions are mainly stubs and have been superseded
by genphy_c45_ equivalents. So lets remove / hide the old functions
as far as possible.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/phy/cortina.c | 3 | ||||
-rw-r--r-- | drivers/net/phy/marvell10g.c | 4 | ||||
-rw-r--r-- | drivers/net/phy/phy-c45.c | 40 | ||||
-rw-r--r-- | drivers/net/phy/phy.c | 12 | ||||
-rw-r--r-- | drivers/net/phy/teranetics.c | 3 | ||||
-rw-r--r-- | include/linux/phy.h | 5 |
6 files changed, 10 insertions, 57 deletions
diff --git a/drivers/net/phy/cortina.c b/drivers/net/phy/cortina.c index c291dc014769..856cdc36aacd 100644 --- a/drivers/net/phy/cortina.c +++ b/drivers/net/phy/cortina.c @@ -80,10 +80,9 @@ static struct phy_driver cortina_driver[] = { .phy_id_mask = 0xffffffff, .name = "Cortina CS4340", .features = PHY_10GBIT_FEATURES, - .config_init = gen10g_config_init, .config_aneg = gen10g_config_aneg, .read_status = cortina_read_status, - .soft_reset = gen10g_no_soft_reset, + .soft_reset = genphy_no_soft_reset, .probe = cortina_probe, }, }; diff --git a/drivers/net/phy/marvell10g.c b/drivers/net/phy/marvell10g.c index 79106e70010f..100b401b1f4a 100644 --- a/drivers/net/phy/marvell10g.c +++ b/drivers/net/phy/marvell10g.c @@ -459,7 +459,7 @@ static struct phy_driver mv3310_drivers[] = { .phy_id_mask = MARVELL_PHY_ID_MASK, .name = "mv88x3310", .get_features = mv3310_get_features, - .soft_reset = gen10g_no_soft_reset, + .soft_reset = genphy_no_soft_reset, .config_init = mv3310_config_init, .probe = mv3310_probe, .suspend = mv3310_suspend, @@ -474,7 +474,7 @@ static struct phy_driver mv3310_drivers[] = { .name = "mv88x2110", .get_features = genphy_c45_pma_read_abilities, .probe = mv3310_probe, - .soft_reset = gen10g_no_soft_reset, + .soft_reset = genphy_no_soft_reset, .config_init = mv3310_config_init, .config_aneg = mv3310_config_aneg, .aneg_done = mv3310_aneg_done, diff --git a/drivers/net/phy/phy-c45.c b/drivers/net/phy/phy-c45.c index 49e7cd08b05f..c596eb54e4ac 100644 --- a/drivers/net/phy/phy-c45.c +++ b/drivers/net/phy/phy-c45.c @@ -499,7 +499,7 @@ int gen10g_config_aneg(struct phy_device *phydev) } EXPORT_SYMBOL_GPL(gen10g_config_aneg); -int gen10g_read_status(struct phy_device *phydev) +static int gen10g_read_status(struct phy_device *phydev) { /* For now just lie and say it's 10G all the time */ phydev->speed = SPEED_10000; @@ -507,49 +507,13 @@ int gen10g_read_status(struct phy_device *phydev) return genphy_c45_read_link(phydev); } -EXPORT_SYMBOL_GPL(gen10g_read_status); - -int gen10g_no_soft_reset(struct phy_device *phydev) -{ - /* Do nothing for now */ - return 0; -} -EXPORT_SYMBOL_GPL(gen10g_no_soft_reset); - -int gen10g_config_init(struct phy_device *phydev) -{ - /* Temporarily just say we support everything */ - linkmode_zero(phydev->supported); - - linkmode_set_bit(ETHTOOL_LINK_MODE_10000baseT_Full_BIT, - phydev->supported); - linkmode_copy(phydev->advertising, phydev->supported); - - return 0; -} -EXPORT_SYMBOL_GPL(gen10g_config_init); - -int gen10g_suspend(struct phy_device *phydev) -{ - return 0; -} -EXPORT_SYMBOL_GPL(gen10g_suspend); - -int gen10g_resume(struct phy_device *phydev) -{ - return 0; -} -EXPORT_SYMBOL_GPL(gen10g_resume); struct phy_driver genphy_10g_driver = { .phy_id = 0xffffffff, .phy_id_mask = 0xffffffff, .name = "Generic 10G PHY", - .soft_reset = gen10g_no_soft_reset, - .config_init = gen10g_config_init, + .soft_reset = genphy_no_soft_reset, .features = PHY_10GBIT_FEATURES, .config_aneg = gen10g_config_aneg, .read_status = gen10g_read_status, - .suspend = gen10g_suspend, - .resume = gen10g_resume, }; diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index 69dc64a4dbf8..3745220c5c98 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@ -144,14 +144,10 @@ int phy_aneg_done(struct phy_device *phydev) { if (phydev->drv && phydev->drv->aneg_done) return phydev->drv->aneg_done(phydev); - - /* Avoid genphy_aneg_done() if the Clause 45 PHY does not - * implement Clause 22 registers - */ - if (phydev->is_c45 && !(phydev->c45_ids.devices_in_package & BIT(0))) - return -EINVAL; - - return genphy_aneg_done(phydev); + else if (phydev->is_c45) + return genphy_c45_aneg_done(phydev); + else + return genphy_aneg_done(phydev); } EXPORT_SYMBOL(phy_aneg_done); diff --git a/drivers/net/phy/teranetics.c b/drivers/net/phy/teranetics.c index 145c328b00fa..beb054b931ee 100644 --- a/drivers/net/phy/teranetics.c +++ b/drivers/net/phy/teranetics.c @@ -78,9 +78,8 @@ static struct phy_driver teranetics_driver[] = { .phy_id_mask = 0xffffffff, .name = "Teranetics TN2020", .features = PHY_10GBIT_FEATURES, - .soft_reset = gen10g_no_soft_reset, + .soft_reset = genphy_no_soft_reset, .aneg_done = teranetics_aneg_done, - .config_init = gen10g_config_init, .config_aneg = gen10g_config_aneg, .read_status = teranetics_read_status, .match_phy_device = teranetics_match_phy_device, diff --git a/include/linux/phy.h b/include/linux/phy.h index bfe60e2a5174..34084892a466 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -1119,11 +1119,6 @@ int genphy_c45_read_status(struct phy_device *phydev); /* The gen10g_* functions are the old Clause 45 stub */ int gen10g_config_aneg(struct phy_device *phydev); -int gen10g_read_status(struct phy_device *phydev); -int gen10g_no_soft_reset(struct phy_device *phydev); -int gen10g_config_init(struct phy_device *phydev); -int gen10g_suspend(struct phy_device *phydev); -int gen10g_resume(struct phy_device *phydev); static inline int phy_read_status(struct phy_device *phydev) { |