i2c: i801: Move i801_wait_intr and i801_wait_byte_done in the code
authorHeiner Kallweit <hkallweit1@gmail.com>
Fri, 21 Feb 2025 20:29:23 +0000 (21:29 +0100)
committerAndi Shyti <andi.shyti@kernel.org>
Tue, 18 Mar 2025 20:53:55 +0000 (21:53 +0100)
Move both functions to avoid forward declarations in a subsequent patch.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/a60ee54b-c5e8-4bdb-9f1f-8889f4dcd114@gmail.com
drivers/i2c/busses/i2c-i801.c

index a3d79a5ab570b1b401813f29acdcd2944fc6f629..9097bb9cdb9e849cb64df66e71a1361c6dd4049f 100644 (file)
@@ -337,6 +337,40 @@ MODULE_PARM_DESC(disable_features, "Disable selected driver features:\n"
        "\t\t  0x10  don't use interrupts\n"
        "\t\t  0x20  disable SMBus Host Notify ");
 
+/* Wait for BUSY being cleared and either INTR or an error flag being set */
+static int i801_wait_intr(struct i801_priv *priv)
+{
+       unsigned long timeout = jiffies + priv->adapter.timeout;
+       int status, busy;
+
+       do {
+               usleep_range(250, 500);
+               status = inb_p(SMBHSTSTS(priv));
+               busy = status & SMBHSTSTS_HOST_BUSY;
+               status &= STATUS_ERROR_FLAGS | SMBHSTSTS_INTR;
+               if (!busy && status)
+                       return status & STATUS_ERROR_FLAGS;
+       } while (time_is_after_eq_jiffies(timeout));
+
+       return -ETIMEDOUT;
+}
+
+/* Wait for either BYTE_DONE or an error flag being set */
+static int i801_wait_byte_done(struct i801_priv *priv)
+{
+       unsigned long timeout = jiffies + priv->adapter.timeout;
+       int status;
+
+       do {
+               usleep_range(250, 500);
+               status = inb_p(SMBHSTSTS(priv));
+               if (status & (STATUS_ERROR_FLAGS | SMBHSTSTS_BYTE_DONE))
+                       return status & STATUS_ERROR_FLAGS;
+       } while (time_is_after_eq_jiffies(timeout));
+
+       return -ETIMEDOUT;
+}
+
 static int i801_get_block_len(struct i801_priv *priv)
 {
        u8 len = inb_p(SMBHSTDAT0(priv));
@@ -453,40 +487,6 @@ static int i801_check_post(struct i801_priv *priv, int status)
        return result;
 }
 
-/* Wait for BUSY being cleared and either INTR or an error flag being set */
-static int i801_wait_intr(struct i801_priv *priv)
-{
-       unsigned long timeout = jiffies + priv->adapter.timeout;
-       int status, busy;
-
-       do {
-               usleep_range(250, 500);
-               status = inb_p(SMBHSTSTS(priv));
-               busy = status & SMBHSTSTS_HOST_BUSY;
-               status &= STATUS_ERROR_FLAGS | SMBHSTSTS_INTR;
-               if (!busy && status)
-                       return status & STATUS_ERROR_FLAGS;
-       } while (time_is_after_eq_jiffies(timeout));
-
-       return -ETIMEDOUT;
-}
-
-/* Wait for either BYTE_DONE or an error flag being set */
-static int i801_wait_byte_done(struct i801_priv *priv)
-{
-       unsigned long timeout = jiffies + priv->adapter.timeout;
-       int status;
-
-       do {
-               usleep_range(250, 500);
-               status = inb_p(SMBHSTSTS(priv));
-               if (status & (STATUS_ERROR_FLAGS | SMBHSTSTS_BYTE_DONE))
-                       return status & STATUS_ERROR_FLAGS;
-       } while (time_is_after_eq_jiffies(timeout));
-
-       return -ETIMEDOUT;
-}
-
 static int i801_transaction(struct i801_priv *priv, int xact)
 {
        unsigned long result;