usb: typec: tcpm: set SRC_SEND_CAPABILITIES timeout to PD_T_SENDER_RESPONSE
authorJos Wang <joswang@lenovo.com>
Sun, 5 Jan 2025 13:52:45 +0000 (21:52 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Jan 2025 05:12:09 +0000 (06:12 +0100)
As PD2.0 spec ("8.3.3.2.3 PE_SRC_Send_Capabilities state"), after the
Source receives the GoodCRC Message from the Sink in response to the
Source_Capabilities message, it should start the SenderResponseTimer,
after the timer times out, the state machine transitions to the
HARD_RESET state.

Fixes: f0690a25a140 ("staging: typec: USB Type-C Port Manager (tcpm)")
Cc: stable@vger.kernel.org
Signed-off-by: Jos Wang <joswang@lenovo.com>
Reviewed-by: Badhri Jagan Sridharan <badhri@google.com>
Link: https://lore.kernel.org/r/20250105135245.7493-1-joswang1221@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/typec/tcpm/tcpm.c

index 460dbde9fe2239b10c43cfb12dce92c736b1cea9..57fae1118ac90cc2c1d074bc40d990daa19e44b8 100644 (file)
@@ -4821,7 +4821,7 @@ static void run_state_machine(struct tcpm_port *port)
                        port->caps_count = 0;
                        port->pd_capable = true;
                        tcpm_set_state_cond(port, SRC_SEND_CAPABILITIES_TIMEOUT,
-                                           PD_T_SEND_SOURCE_CAP);
+                                           PD_T_SENDER_RESPONSE);
                }
                break;
        case SRC_SEND_CAPABILITIES_TIMEOUT: