mbox series

[v2,0/3] usb: typec: ucsi: continue rework of command interface

Message ID 20250120-ucsi-merge-commands-v2-0-462a1ec22ecc@linaro.org (mailing list archive)
Headers show
Series usb: typec: ucsi: continue rework of command interface | expand

Message

Dmitry Baryshkov Jan. 20, 2025, 9:16 a.m. UTC
There are cases when UCSI drivers either want to mangle UCSI commands or
its response or to completely emulate some of the commands in software.
Currently code to handle such situations is split between sync_control(),
read_cci() and read_message_in() callbacks.

Make sync_control() also return CCI and MESSAGE_IN data, simplifying
this kind of handling. This series reworks CCG driver and LG Gram
quirks. If the approach is considered to be acceptable, it will be used
to emulate AltMode support in the GLINK and Yoga C630 drivers: on these
platforms DisplayPort AltMode is handled via the non-UCSI messages,
however in the past reviewers suggested reusing UCSI displayport driver
and just emulate necessary commands (mostly GET_CURRENT_CAM).

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Changes in v2:
- Fixed build error in CrOS UCSI driver.
- Link to v1: https://lore.kernel.org/r/20250117-ucsi-merge-commands-v1-0-e20c19934d59@linaro.org

---
Dmitry Baryshkov (3):
      usb: typec: ucsi: return CCI and message from sync_control callback
      usb: typec: ucsi: ccg: move command quirks to ucsi_ccg_sync_control()
      usb: typec: ucsi: acpi: move LG Gram quirk to ucsi_gram_sync_control()

 drivers/usb/typec/ucsi/cros_ec_ucsi.c |  5 +--
 drivers/usb/typec/ucsi/ucsi.c         | 19 +++++-----
 drivers/usb/typec/ucsi/ucsi.h         |  6 ++--
 drivers/usb/typec/ucsi/ucsi_acpi.c    | 29 +++++----------
 drivers/usb/typec/ucsi/ucsi_ccg.c     | 67 +++++++++++++++++------------------
 5 files changed, 59 insertions(+), 67 deletions(-)
---
base-commit: 0907e7fb35756464aa34c35d6abb02998418164b
change-id: 20250116-ucsi-merge-commands-f2f6f5c93466

Best regards,