On Tue, Jan 7, 2025 at 2:11 AM Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx> wrote: > > +Badhri > > On Sun, Jan 05, 2025 at 09:52:45PM +0800, joswang wrote: > > From: Jos Wang <joswang@xxxxxxxxxx> > > > > 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@xxxxxxxxxxxxxxx > > Signed-off-by: Jos Wang <joswang@xxxxxxxxxx> Reviewed-by: Badhri Jagan Sridharan <badhri@xxxxxxxxxx> > > --- > > drivers/usb/typec/tcpm/tcpm.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c > > index 460dbde9fe22..57fae1118ac9 100644 > > --- a/drivers/usb/typec/tcpm/tcpm.c > > +++ b/drivers/usb/typec/tcpm/tcpm.c > > @@ -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); This aligns with what the spec says as Jos Wang has already mentioned. However, itdoes reduce the time within which the sink has to reply back with the request message. So if there are non-compliant sinks, which we don't know of yet, we would know now and we can later see how we can handle the interoperability. Regards, Badhri > > } > > break; > > case SRC_SEND_CAPABILITIES_TIMEOUT: > > This looks okay to me, but let's get comments from Badhri, just in > case. > > thanks, > > -- > heikki