]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
usb: typec: ucsi: yoga-c630: remove duplicate AltModes
authorDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Sat, 21 Jun 2025 18:12:58 +0000 (21:12 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Jun 2025 14:40:50 +0000 (15:40 +0100)
commite0c48e42d818aba4ffadf4735352844fd7e0ec9e
tree7496b648750766450018a272a0e51edc587fbec1
parenta669133d971fddbdf4b3bf1be9e0069f650717e7
usb: typec: ucsi: yoga-c630: remove duplicate AltModes

On Lenovo Yoga C630 the EC firmware is buggy and it returns duplicate
AltModes over and over again instead of returning an empty one, as
demanded by the spec. Ignore extra altmodes by zeroing them in the
update_altmodes() callback. It is not possible to shortcut that in the
sync_control() callback since we need to know if the AltMode matches the
first reported AltMode or not.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20250621-c630-ucsi-v1-3-a86de5e11361@oss.qualcomm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/typec/ucsi/ucsi_yoga_c630.c