lkml.org 
[lkml]   [2021]   [Oct]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.14 008/151] usb: typec: tcpm: handle SRC_STARTUP state if cc changes
    Date
    From: Xu Yang <xu.yang_2@nxp.com>

    commit 6d91017a295e9790eec02c4e43f020cdb55f5d98 upstream.

    TCPM for DRP should do the same action as SRC_ATTACHED when cc changes in
    SRC_STARTUP state. Otherwise, TCPM will transition to SRC_UNATTACHED state
    which is not satisfied with the Type-C spec.

    Per Type-C spec:
    DRP port should move to Unattached.SNK instead of Unattached.SRC if sink
    removed.

    Fixes: 4b4e02c83167 ("typec: tcpm: Move out of staging")
    cc: <stable@vger.kernel.org>
    Reviewed-by: Guenter Roeck <linux@roeck-us.net>
    Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
    Signed-off-by: Xu Yang <xu.yang_2@nxp.com>
    Link: https://lore.kernel.org/r/20210928111639.3854174-1-xu.yang_2@nxp.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/usb/typec/tcpm/tcpm.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/drivers/usb/typec/tcpm/tcpm.c
    +++ b/drivers/usb/typec/tcpm/tcpm.c
    @@ -4846,6 +4846,7 @@ static void _tcpm_cc_change(struct tcpm_
    tcpm_set_state(port, SRC_ATTACH_WAIT, 0);
    break;
    case SRC_ATTACHED:
    + case SRC_STARTUP:
    case SRC_SEND_CAPABILITIES:
    case SRC_READY:
    if (tcpm_port_is_disconnected(port) ||

    \
     
     \ /
      Last update: 2021-10-11 16:03    [W:4.416 / U:0.264 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site