dpaa2-mac: move setting up supported_interfaces into a function
authorIoana Ciornei <ioana.ciornei@nxp.com>
Fri, 11 Mar 2022 21:22:26 +0000 (23:22 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 14 Mar 2022 10:41:51 +0000 (10:41 +0000)
The logic to setup the supported interfaces will get annotated based on
what the configuration of the SerDes PLLs supports. Move the current
setup into a separate function just to try to keep it clean.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c

index c4a49bf101564a31c7283c24928fca96ec742c01..e6e758eaafeaf32a53eca3278cd000a0a38f8aa8 100644 (file)
@@ -257,6 +257,29 @@ static void dpaa2_pcs_destroy(struct dpaa2_mac *mac)
        }
 }
 
+static void dpaa2_mac_set_supported_interfaces(struct dpaa2_mac *mac)
+{
+       /* We support the current interface mode, and if we have a PCS
+        * similar interface modes that do not require the SerDes lane to be
+        * reconfigured.
+        */
+       __set_bit(mac->if_mode, mac->phylink_config.supported_interfaces);
+       if (mac->pcs) {
+               switch (mac->if_mode) {
+               case PHY_INTERFACE_MODE_1000BASEX:
+               case PHY_INTERFACE_MODE_SGMII:
+                       __set_bit(PHY_INTERFACE_MODE_1000BASEX,
+                                 mac->phylink_config.supported_interfaces);
+                       __set_bit(PHY_INTERFACE_MODE_SGMII,
+                                 mac->phylink_config.supported_interfaces);
+                       break;
+
+               default:
+                       break;
+               }
+       }
+}
+
 int dpaa2_mac_connect(struct dpaa2_mac *mac)
 {
        struct net_device *net_dev = mac->net_dev;
@@ -305,25 +328,7 @@ int dpaa2_mac_connect(struct dpaa2_mac *mac)
                MAC_10FD | MAC_100FD | MAC_1000FD | MAC_2500FD | MAC_5000FD |
                MAC_10000FD;
 
-       /* We support the current interface mode, and if we have a PCS
-        * similar interface modes that do not require the PLLs to be
-        * reconfigured.
-        */
-       __set_bit(mac->if_mode, mac->phylink_config.supported_interfaces);
-       if (mac->pcs) {
-               switch (mac->if_mode) {
-               case PHY_INTERFACE_MODE_1000BASEX:
-               case PHY_INTERFACE_MODE_SGMII:
-                       __set_bit(PHY_INTERFACE_MODE_1000BASEX,
-                                 mac->phylink_config.supported_interfaces);
-                       __set_bit(PHY_INTERFACE_MODE_SGMII,
-                                 mac->phylink_config.supported_interfaces);
-                       break;
-
-               default:
-                       break;
-               }
-       }
+       dpaa2_mac_set_supported_interfaces(mac);
 
        phylink = phylink_create(&mac->phylink_config,
                                 dpmac_node, mac->if_mode,