]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: usb: lan78xx: move functions to avoid forward definitions
authorOleksij Rempel <o.rempel@pengutronix.de>
Wed, 4 Dec 2024 08:41:35 +0000 (09:41 +0100)
committerJakub Kicinski <kuba@kernel.org>
Sat, 7 Dec 2024 01:53:06 +0000 (17:53 -0800)
Move following functions to avoid forward declarations in the code:
- lan78xx_start_hw()
- lan78xx_stop_hw()
- lan78xx_flush_fifo()
- lan78xx_start_tx_path()
- lan78xx_stop_tx_path()
- lan78xx_flush_tx_fifo()
- lan78xx_start_rx_path()
- lan78xx_stop_rx_path()
- lan78xx_flush_rx_fifo()

These functions will be used in an upcoming PHYlink migration patch.

No modifications to the functionality of the code are made.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20241204084142.1152696-4-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/usb/lan78xx.c

index 918b88bd9524e8fb99b295f4f8efc521a6a78de0..dd9b5d3abcb3fd336fd5a751be5bd3734cd8a597 100644 (file)
@@ -808,6 +808,156 @@ static void lan78xx_update_stats(struct lan78xx_net *dev)
        usb_autopm_put_interface(dev->intf);
 }
 
+static int lan78xx_start_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enable)
+{
+       return lan78xx_update_reg(dev, reg, hw_enable, hw_enable);
+}
+
+static int lan78xx_stop_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enabled,
+                          u32 hw_disabled)
+{
+       unsigned long timeout;
+       bool stopped = true;
+       int ret;
+       u32 buf;
+
+       /* Stop the h/w block (if not already stopped) */
+
+       ret = lan78xx_read_reg(dev, reg, &buf);
+       if (ret < 0)
+               return ret;
+
+       if (buf & hw_enabled) {
+               buf &= ~hw_enabled;
+
+               ret = lan78xx_write_reg(dev, reg, buf);
+               if (ret < 0)
+                       return ret;
+
+               stopped = false;
+               timeout = jiffies + HW_DISABLE_TIMEOUT;
+               do  {
+                       ret = lan78xx_read_reg(dev, reg, &buf);
+                       if (ret < 0)
+                               return ret;
+
+                       if (buf & hw_disabled)
+                               stopped = true;
+                       else
+                               msleep(HW_DISABLE_DELAY_MS);
+               } while (!stopped && !time_after(jiffies, timeout));
+       }
+
+       ret = stopped ? 0 : -ETIME;
+
+       return ret;
+}
+
+static int lan78xx_flush_fifo(struct lan78xx_net *dev, u32 reg, u32 fifo_flush)
+{
+       return lan78xx_update_reg(dev, reg, fifo_flush, fifo_flush);
+}
+
+static int lan78xx_start_tx_path(struct lan78xx_net *dev)
+{
+       int ret;
+
+       netif_dbg(dev, drv, dev->net, "start tx path");
+
+       /* Start the MAC transmitter */
+
+       ret = lan78xx_start_hw(dev, MAC_TX, MAC_TX_TXEN_);
+       if (ret < 0)
+               return ret;
+
+       /* Start the Tx FIFO */
+
+       ret = lan78xx_start_hw(dev, FCT_TX_CTL, FCT_TX_CTL_EN_);
+       if (ret < 0)
+               return ret;
+
+       return 0;
+}
+
+static int lan78xx_stop_tx_path(struct lan78xx_net *dev)
+{
+       int ret;
+
+       netif_dbg(dev, drv, dev->net, "stop tx path");
+
+       /* Stop the Tx FIFO */
+
+       ret = lan78xx_stop_hw(dev, FCT_TX_CTL, FCT_TX_CTL_EN_, FCT_TX_CTL_DIS_);
+       if (ret < 0)
+               return ret;
+
+       /* Stop the MAC transmitter */
+
+       ret = lan78xx_stop_hw(dev, MAC_TX, MAC_TX_TXEN_, MAC_TX_TXD_);
+       if (ret < 0)
+               return ret;
+
+       return 0;
+}
+
+/* The caller must ensure the Tx path is stopped before calling
+ * lan78xx_flush_tx_fifo().
+ */
+static int lan78xx_flush_tx_fifo(struct lan78xx_net *dev)
+{
+       return lan78xx_flush_fifo(dev, FCT_TX_CTL, FCT_TX_CTL_RST_);
+}
+
+static int lan78xx_start_rx_path(struct lan78xx_net *dev)
+{
+       int ret;
+
+       netif_dbg(dev, drv, dev->net, "start rx path");
+
+       /* Start the Rx FIFO */
+
+       ret = lan78xx_start_hw(dev, FCT_RX_CTL, FCT_RX_CTL_EN_);
+       if (ret < 0)
+               return ret;
+
+       /* Start the MAC receiver*/
+
+       ret = lan78xx_start_hw(dev, MAC_RX, MAC_RX_RXEN_);
+       if (ret < 0)
+               return ret;
+
+       return 0;
+}
+
+static int lan78xx_stop_rx_path(struct lan78xx_net *dev)
+{
+       int ret;
+
+       netif_dbg(dev, drv, dev->net, "stop rx path");
+
+       /* Stop the MAC receiver */
+
+       ret = lan78xx_stop_hw(dev, MAC_RX, MAC_RX_RXEN_, MAC_RX_RXD_);
+       if (ret < 0)
+               return ret;
+
+       /* Stop the Rx FIFO */
+
+       ret = lan78xx_stop_hw(dev, FCT_RX_CTL, FCT_RX_CTL_EN_, FCT_RX_CTL_DIS_);
+       if (ret < 0)
+               return ret;
+
+       return 0;
+}
+
+/* The caller must ensure the Rx path is stopped before calling
+ * lan78xx_flush_rx_fifo().
+ */
+static int lan78xx_flush_rx_fifo(struct lan78xx_net *dev)
+{
+       return lan78xx_flush_fifo(dev, FCT_RX_CTL, FCT_RX_CTL_RST_);
+}
+
 /* Loop until the read is completed with timeout called with phy_mutex held */
 static int lan78xx_phy_wait_not_busy(struct lan78xx_net *dev)
 {
@@ -2662,156 +2812,6 @@ static int lan78xx_urb_config_init(struct lan78xx_net *dev)
        return result;
 }
 
-static int lan78xx_start_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enable)
-{
-       return lan78xx_update_reg(dev, reg, hw_enable, hw_enable);
-}
-
-static int lan78xx_stop_hw(struct lan78xx_net *dev, u32 reg, u32 hw_enabled,
-                          u32 hw_disabled)
-{
-       unsigned long timeout;
-       bool stopped = true;
-       int ret;
-       u32 buf;
-
-       /* Stop the h/w block (if not already stopped) */
-
-       ret = lan78xx_read_reg(dev, reg, &buf);
-       if (ret < 0)
-               return ret;
-
-       if (buf & hw_enabled) {
-               buf &= ~hw_enabled;
-
-               ret = lan78xx_write_reg(dev, reg, buf);
-               if (ret < 0)
-                       return ret;
-
-               stopped = false;
-               timeout = jiffies + HW_DISABLE_TIMEOUT;
-               do  {
-                       ret = lan78xx_read_reg(dev, reg, &buf);
-                       if (ret < 0)
-                               return ret;
-
-                       if (buf & hw_disabled)
-                               stopped = true;
-                       else
-                               msleep(HW_DISABLE_DELAY_MS);
-               } while (!stopped && !time_after(jiffies, timeout));
-       }
-
-       ret = stopped ? 0 : -ETIME;
-
-       return ret;
-}
-
-static int lan78xx_flush_fifo(struct lan78xx_net *dev, u32 reg, u32 fifo_flush)
-{
-       return lan78xx_update_reg(dev, reg, fifo_flush, fifo_flush);
-}
-
-static int lan78xx_start_tx_path(struct lan78xx_net *dev)
-{
-       int ret;
-
-       netif_dbg(dev, drv, dev->net, "start tx path");
-
-       /* Start the MAC transmitter */
-
-       ret = lan78xx_start_hw(dev, MAC_TX, MAC_TX_TXEN_);
-       if (ret < 0)
-               return ret;
-
-       /* Start the Tx FIFO */
-
-       ret = lan78xx_start_hw(dev, FCT_TX_CTL, FCT_TX_CTL_EN_);
-       if (ret < 0)
-               return ret;
-
-       return 0;
-}
-
-static int lan78xx_stop_tx_path(struct lan78xx_net *dev)
-{
-       int ret;
-
-       netif_dbg(dev, drv, dev->net, "stop tx path");
-
-       /* Stop the Tx FIFO */
-
-       ret = lan78xx_stop_hw(dev, FCT_TX_CTL, FCT_TX_CTL_EN_, FCT_TX_CTL_DIS_);
-       if (ret < 0)
-               return ret;
-
-       /* Stop the MAC transmitter */
-
-       ret = lan78xx_stop_hw(dev, MAC_TX, MAC_TX_TXEN_, MAC_TX_TXD_);
-       if (ret < 0)
-               return ret;
-
-       return 0;
-}
-
-/* The caller must ensure the Tx path is stopped before calling
- * lan78xx_flush_tx_fifo().
- */
-static int lan78xx_flush_tx_fifo(struct lan78xx_net *dev)
-{
-       return lan78xx_flush_fifo(dev, FCT_TX_CTL, FCT_TX_CTL_RST_);
-}
-
-static int lan78xx_start_rx_path(struct lan78xx_net *dev)
-{
-       int ret;
-
-       netif_dbg(dev, drv, dev->net, "start rx path");
-
-       /* Start the Rx FIFO */
-
-       ret = lan78xx_start_hw(dev, FCT_RX_CTL, FCT_RX_CTL_EN_);
-       if (ret < 0)
-               return ret;
-
-       /* Start the MAC receiver*/
-
-       ret = lan78xx_start_hw(dev, MAC_RX, MAC_RX_RXEN_);
-       if (ret < 0)
-               return ret;
-
-       return 0;
-}
-
-static int lan78xx_stop_rx_path(struct lan78xx_net *dev)
-{
-       int ret;
-
-       netif_dbg(dev, drv, dev->net, "stop rx path");
-
-       /* Stop the MAC receiver */
-
-       ret = lan78xx_stop_hw(dev, MAC_RX, MAC_RX_RXEN_, MAC_RX_RXD_);
-       if (ret < 0)
-               return ret;
-
-       /* Stop the Rx FIFO */
-
-       ret = lan78xx_stop_hw(dev, FCT_RX_CTL, FCT_RX_CTL_EN_, FCT_RX_CTL_DIS_);
-       if (ret < 0)
-               return ret;
-
-       return 0;
-}
-
-/* The caller must ensure the Rx path is stopped before calling
- * lan78xx_flush_rx_fifo().
- */
-static int lan78xx_flush_rx_fifo(struct lan78xx_net *dev)
-{
-       return lan78xx_flush_fifo(dev, FCT_RX_CTL, FCT_RX_CTL_RST_);
-}
-
 static int lan78xx_reset(struct lan78xx_net *dev)
 {
        struct lan78xx_priv *pdata = (struct lan78xx_priv *)(dev->data[0]);