summaryrefslogtreecommitdiff
path: root/drivers/usb/typec/class.c
diff options
context:
space:
mode:
authorChristian A. Ehrhardt <lk@c--e.de>2024-03-20 10:39:25 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-03-26 17:00:47 +0300
commit6aaceb7d9cd00f3e065dc4b054ecfe52c5253b03 (patch)
tree78fa405ef2bd43a3ee9d4edf02c350c9b27bfee5 /drivers/usb/typec/class.c
parent6b5c85ddeea77d18c4b69e3bda60e9374a20c304 (diff)
downloadlinux-6aaceb7d9cd00f3e065dc4b054ecfe52c5253b03.tar.xz
usb: typec: ucsi_acpi: Refactor and fix DELL quirk
Some DELL systems don't like UCSI_ACK_CC_CI commands with the UCSI_ACK_CONNECTOR_CHANGE but not the UCSI_ACK_COMMAND_COMPLETE bit set. The current quirk still leaves room for races because it requires two consecutive ACK commands to be sent. Refactor and significantly simplify the quirk to fix this: Send a dummy command and bundle the connector change ack with the command completion ack in a single UCSI_ACK_CC_CI command. This removes the need to probe for the quirk. While there define flag bits for struct ucsi_acpi->flags in ucsi_acpi.c and don't re-use definitions from ucsi.h for struct ucsi->flags. Fixes: f3be347ea42d ("usb: ucsi_acpi: Quirk to ack a connector change ack cmd") Cc: stable@vger.kernel.org Signed-off-by: Christian A. Ehrhardt <lk@c--e.de> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550-QRD Link: https://lore.kernel.org/r/20240320073927.1641788-5-lk@c--e.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/typec/class.c')
0 files changed, 0 insertions, 0 deletions