diff options
author | Linyu Yuan <quic_linyyuan@quicinc.com> | 2022-07-26 14:45:49 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-07-27 14:38:42 +0200 |
commit | a7dc438b5e446afcd1b3b6651da28271400722f2 (patch) | |
tree | 3490c674d1c456bd9ff84f53f4d7cd9d66aa2932 /drivers/usb/typec/ucsi/ucsi.c | |
parent | c3ffc9c4ca44bfe9562166793d133e1fb0630ea6 (diff) | |
download | linux-stable-a7dc438b5e446afcd1b3b6651da28271400722f2.tar.gz linux-stable-a7dc438b5e446afcd1b3b6651da28271400722f2.tar.bz2 linux-stable-a7dc438b5e446afcd1b3b6651da28271400722f2.zip |
usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion
We found PPM will not send any notification after it report error status
and OPM issue GET_ERROR_STATUS command to read the details about error.
According UCSI spec, PPM may clear the Error Status Data after the OPM
has acknowledged the command completion.
This change add operation to acknowledge the command completion from PPM.
Fixes: bdc62f2bae8f (usb: typec: ucsi: Simplified registration and I/O API)
Cc: <stable@vger.kernel.org> # 5.10
Signed-off-by: Jack Pham <quic_jackp@quicinc.com>
Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com>
Link: https://lore.kernel.org/r/1658817949-4632-1-git-send-email-quic_linyyuan@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/typec/ucsi/ucsi.c')
-rw-r--r-- | drivers/usb/typec/ucsi/ucsi.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/typec/ucsi/ucsi.c b/drivers/usb/typec/ucsi/ucsi.c index cbd862f9f2a1..1aea46493b85 100644 --- a/drivers/usb/typec/ucsi/ucsi.c +++ b/drivers/usb/typec/ucsi/ucsi.c @@ -76,6 +76,10 @@ static int ucsi_read_error(struct ucsi *ucsi) if (ret) return ret; + ret = ucsi_acknowledge_command(ucsi); + if (ret) + return ret; + switch (error) { case UCSI_ERROR_INCOMPATIBLE_PARTNER: return -EOPNOTSUPP; |