123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- From b45b773a96b0e9e8d51e5d005485f4e376d6ce9a Mon Sep 17 00:00:00 2001
- From: "Russell King (Oracle)" <[email protected]>
- Date: Fri, 4 Nov 2022 17:13:01 +0000
- Subject: [PATCH 07/21] net: remove explicit phylink_generic_validate()
- references
- Virtually all conventional network drivers are now converted to use
- phylink_generic_validate() - only DSA drivers and fman_memac remain,
- so lets remove the necessity for network drivers to explicitly set
- this member, and default to phylink_generic_validate() when unset.
- This is possible as .validate must currently be set.
- Any remaining instances that have not been addressed by this patch can
- be fixed up later.
- Signed-off-by: Russell King (Oracle) <[email protected]>
- Reviewed-by: Vladimir Oltean <[email protected]>
- Link: https://lore.kernel.org/r/[email protected]
- Signed-off-by: Jakub Kicinski <[email protected]>
- ---
- drivers/net/ethernet/altera/altera_tse_main.c | 1 -
- drivers/net/ethernet/atheros/ag71xx.c | 1 -
- drivers/net/ethernet/cadence/macb_main.c | 1 -
- drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c | 1 -
- drivers/net/ethernet/freescale/enetc/enetc_pf.c | 1 -
- drivers/net/ethernet/freescale/fman/fman_dtsec.c | 1 -
- drivers/net/ethernet/freescale/fman/fman_tgec.c | 1 -
- drivers/net/ethernet/marvell/mvneta.c | 1 -
- drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 1 -
- drivers/net/ethernet/marvell/prestera/prestera_main.c | 1 -
- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 1 -
- drivers/net/ethernet/microchip/lan966x/lan966x_phylink.c | 1 -
- drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c | 1 -
- drivers/net/ethernet/mscc/ocelot_net.c | 1 -
- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 1 -
- drivers/net/ethernet/ti/am65-cpsw-nuss.c | 1 -
- drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 1 -
- drivers/net/phy/phylink.c | 5 ++++-
- drivers/net/usb/asix_devices.c | 1 -
- include/linux/phylink.h | 5 +++++
- 20 files changed, 9 insertions(+), 19 deletions(-)
- --- a/drivers/net/ethernet/altera/altera_tse_main.c
- +++ b/drivers/net/ethernet/altera/altera_tse_main.c
- @@ -1096,7 +1096,6 @@ static struct phylink_pcs *alt_tse_selec
- }
-
- static const struct phylink_mac_ops alt_tse_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_an_restart = alt_tse_mac_an_restart,
- .mac_config = alt_tse_mac_config,
- .mac_link_down = alt_tse_mac_link_down,
- --- a/drivers/net/ethernet/atheros/ag71xx.c
- +++ b/drivers/net/ethernet/atheros/ag71xx.c
- @@ -1086,7 +1086,6 @@ static void ag71xx_mac_link_up(struct ph
- }
-
- static const struct phylink_mac_ops ag71xx_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_config = ag71xx_mac_config,
- .mac_link_down = ag71xx_mac_link_down,
- .mac_link_up = ag71xx_mac_link_up,
- --- a/drivers/net/ethernet/cadence/macb_main.c
- +++ b/drivers/net/ethernet/cadence/macb_main.c
- @@ -752,7 +752,6 @@ static struct phylink_pcs *macb_mac_sele
- }
-
- static const struct phylink_mac_ops macb_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = macb_mac_select_pcs,
- .mac_config = macb_mac_config,
- .mac_link_down = macb_mac_link_down,
- --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c
- +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c
- @@ -235,7 +235,6 @@ static void dpaa2_mac_link_down(struct p
- }
-
- static const struct phylink_mac_ops dpaa2_mac_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = dpaa2_mac_select_pcs,
- .mac_config = dpaa2_mac_config,
- .mac_link_up = dpaa2_mac_link_up,
- --- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
- +++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
- @@ -1111,7 +1111,6 @@ static void enetc_pl_mac_link_down(struc
- }
-
- static const struct phylink_mac_ops enetc_mac_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = enetc_pl_mac_select_pcs,
- .mac_config = enetc_pl_mac_config,
- .mac_link_up = enetc_pl_mac_link_up,
- --- a/drivers/net/ethernet/freescale/fman/fman_dtsec.c
- +++ b/drivers/net/ethernet/freescale/fman/fman_dtsec.c
- @@ -986,7 +986,6 @@ static void dtsec_link_down(struct phyli
- }
-
- static const struct phylink_mac_ops dtsec_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = dtsec_select_pcs,
- .mac_config = dtsec_mac_config,
- .mac_link_up = dtsec_link_up,
- --- a/drivers/net/ethernet/freescale/fman/fman_tgec.c
- +++ b/drivers/net/ethernet/freescale/fman/fman_tgec.c
- @@ -469,7 +469,6 @@ static void tgec_link_down(struct phylin
- }
-
- static const struct phylink_mac_ops tgec_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_config = tgec_mac_config,
- .mac_link_up = tgec_link_up,
- .mac_link_down = tgec_link_down,
- --- a/drivers/net/ethernet/marvell/mvneta.c
- +++ b/drivers/net/ethernet/marvell/mvneta.c
- @@ -4228,7 +4228,6 @@ static void mvneta_mac_link_up(struct ph
- }
-
- static const struct phylink_mac_ops mvneta_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = mvneta_mac_select_pcs,
- .mac_prepare = mvneta_mac_prepare,
- .mac_config = mvneta_mac_config,
- --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
- +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
- @@ -6633,7 +6633,6 @@ static void mvpp2_mac_link_down(struct p
- }
-
- static const struct phylink_mac_ops mvpp2_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = mvpp2_select_pcs,
- .mac_prepare = mvpp2_mac_prepare,
- .mac_config = mvpp2_mac_config,
- --- a/drivers/net/ethernet/marvell/prestera/prestera_main.c
- +++ b/drivers/net/ethernet/marvell/prestera/prestera_main.c
- @@ -360,7 +360,6 @@ static void prestera_pcs_an_restart(stru
- }
-
- static const struct phylink_mac_ops prestera_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = prestera_mac_select_pcs,
- .mac_config = prestera_mac_config,
- .mac_link_down = prestera_mac_link_down,
- --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
- +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
- @@ -654,7 +654,6 @@ static void mtk_mac_link_up(struct phyli
- }
-
- static const struct phylink_mac_ops mtk_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = mtk_mac_select_pcs,
- .mac_pcs_get_state = mtk_mac_pcs_get_state,
- .mac_config = mtk_mac_config,
- --- a/drivers/net/ethernet/microchip/lan966x/lan966x_phylink.c
- +++ b/drivers/net/ethernet/microchip/lan966x/lan966x_phylink.c
- @@ -125,7 +125,6 @@ static void lan966x_pcs_aneg_restart(str
- }
-
- const struct phylink_mac_ops lan966x_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = lan966x_phylink_mac_select,
- .mac_config = lan966x_phylink_mac_config,
- .mac_prepare = lan966x_phylink_mac_prepare,
- --- a/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c
- +++ b/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c
- @@ -138,7 +138,6 @@ const struct phylink_pcs_ops sparx5_phyl
- };
-
- const struct phylink_mac_ops sparx5_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = sparx5_phylink_mac_select_pcs,
- .mac_config = sparx5_phylink_mac_config,
- .mac_link_down = sparx5_phylink_mac_link_down,
- --- a/drivers/net/ethernet/mscc/ocelot_net.c
- +++ b/drivers/net/ethernet/mscc/ocelot_net.c
- @@ -1737,7 +1737,6 @@ static void vsc7514_phylink_mac_link_up(
- }
-
- static const struct phylink_mac_ops ocelot_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_config = vsc7514_phylink_mac_config,
- .mac_link_down = vsc7514_phylink_mac_link_down,
- .mac_link_up = vsc7514_phylink_mac_link_up,
- --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
- +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
- @@ -1090,7 +1090,6 @@ static void stmmac_mac_link_up(struct ph
- }
-
- static const struct phylink_mac_ops stmmac_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = stmmac_mac_select_pcs,
- .mac_config = stmmac_mac_config,
- .mac_link_down = stmmac_mac_link_down,
- --- a/drivers/net/ethernet/ti/am65-cpsw-nuss.c
- +++ b/drivers/net/ethernet/ti/am65-cpsw-nuss.c
- @@ -1493,7 +1493,6 @@ static void am65_cpsw_nuss_mac_link_up(s
- }
-
- static const struct phylink_mac_ops am65_cpsw_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_config = am65_cpsw_nuss_mac_config,
- .mac_link_down = am65_cpsw_nuss_mac_link_down,
- .mac_link_up = am65_cpsw_nuss_mac_link_up,
- --- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
- +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
- @@ -1736,7 +1736,6 @@ static void axienet_mac_link_up(struct p
- }
-
- static const struct phylink_mac_ops axienet_phylink_ops = {
- - .validate = phylink_generic_validate,
- .mac_select_pcs = axienet_mac_select_pcs,
- .mac_config = axienet_mac_config,
- .mac_link_down = axienet_mac_link_down,
- --- a/drivers/net/phy/phylink.c
- +++ b/drivers/net/phy/phylink.c
- @@ -651,7 +651,10 @@ static int phylink_validate_mac_and_pcs(
- }
-
- /* Then validate the link parameters with the MAC */
- - pl->mac_ops->validate(pl->config, supported, state);
- + if (pl->mac_ops->validate)
- + pl->mac_ops->validate(pl->config, supported, state);
- + else
- + phylink_generic_validate(pl->config, supported, state);
-
- return phylink_is_empty_linkmode(supported) ? -EINVAL : 0;
- }
- --- a/drivers/net/usb/asix_devices.c
- +++ b/drivers/net/usb/asix_devices.c
- @@ -787,7 +787,6 @@ static void ax88772_mac_link_up(struct p
- }
-
- static const struct phylink_mac_ops ax88772_phylink_mac_ops = {
- - .validate = phylink_generic_validate,
- .mac_config = ax88772_mac_config,
- .mac_link_down = ax88772_mac_link_down,
- .mac_link_up = ax88772_mac_link_up,
- --- a/include/linux/phylink.h
- +++ b/include/linux/phylink.h
- @@ -207,6 +207,11 @@ struct phylink_mac_ops {
- *
- * If the @state->interface mode is not supported, then the @supported
- * mask must be cleared.
- + *
- + * This member is optional; if not set, the generic validator will be
- + * used making use of @config->mac_capabilities and
- + * @config->supported_interfaces to determine which link modes are
- + * supported.
- */
- void validate(struct phylink_config *config, unsigned long *supported,
- struct phylink_link_state *state);
|