mbox series

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

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

Message

Dmitry Baryshkov Jan. 17, 2025, 10:49 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>
---
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/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 ++++++++++++++++++--------------------
 4 files changed, 56 insertions(+), 65 deletions(-)
---
base-commit: e7bb221a638962d487231ac45a6699fb9bb8f9fa
change-id: 20250116-ucsi-merge-commands-f2f6f5c93466

Best regards,

Comments

Heikki Krogerus Jan. 28, 2025, 8:26 a.m. UTC | #1
On Fri, Jan 17, 2025 at 12:49:40PM +0200, Dmitry Baryshkov wrote:
> 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).

This is okay by me. For the lot:

Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@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/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 ++++++++++++++++++--------------------
>  4 files changed, 56 insertions(+), 65 deletions(-)
> ---
> base-commit: e7bb221a638962d487231ac45a6699fb9bb8f9fa
> change-id: 20250116-ucsi-merge-commands-f2f6f5c93466
> 
> Best regards,
> -- 
> Dmitry Baryshkov <dmitry.baryshkov@linaro.org>