]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
usb: typec: ucsi: move ucsi_acknowledge() from ucsi_read_error()
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 27 Jun 2024 14:44:40 +0000 (17:44 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jul 2024 14:04:49 +0000 (16:04 +0200)
As a preparation for reworking UCSI command handling, move
ucsi_acknowledge() for the failed command from ucsi_read_error() to
ucsi_exec_command().

Tested-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240627-ucsi-rework-interface-v4-1-289ddc6874c7@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/typec/ucsi/ucsi.c

index 59eaa49042f49fc77cc81ac42a07bea4bde89d8a..651c22473472943569a98f811e9f94ed921bf6f7 100644 (file)
@@ -71,11 +71,6 @@ static int ucsi_read_error(struct ucsi *ucsi, u8 connector_num)
        u16 error;
        int ret;
 
-       /* Acknowledge the command that failed */
-       ret = ucsi_acknowledge(ucsi, false);
-       if (ret)
-               return ret;
-
        command = UCSI_GET_ERROR_STATUS | UCSI_CONNECTOR_NUMBER(connector_num);
        ret = ucsi_exec_command(ucsi, command);
        if (ret < 0)
@@ -182,13 +177,14 @@ static int ucsi_exec_command(struct ucsi *ucsi, u64 cmd)
        }
 
        if (cci & UCSI_CCI_ERROR) {
-               if (cmd == UCSI_GET_ERROR_STATUS) {
-                       ret = ucsi_acknowledge(ucsi, false);
-                       if (ret)
-                               return ret;
+               /* Acknowledge the command that failed */
+               ret = ucsi_acknowledge(ucsi, false);
+               if (ret)
+                       return ret;
 
+               if (cmd == UCSI_GET_ERROR_STATUS)
                        return -EIO;
-               }
+
                return ucsi_read_error(ucsi, connector_num);
        }