mbox series

[0/8] Thunderbolt and DP altmode support for cros-ec-typec

Message ID 20240925162513.435177-1-abhishekpandit@chromium.org (mailing list archive)
Headers show
Series Thunderbolt and DP altmode support for cros-ec-typec | expand

Message

Abhishek Pandit-Subedi Sept. 25, 2024, 4:25 p.m. UTC
Hi Heikki, Tzung-Bi et al,

This patch series adds support for alternate mode entry for the
cros-ec-typec driver for Displayport and Thunderbolt.

Thunderbolt support is added by adapting an RFC Heikki had posted
previously:

https://lore.kernel.org/linux-usb/20191230152857.43917-1-heikki.krogerus@linux.intel.com/

A few comments on the series:

* The cros-ec interface will not accept any VDOs/VDMs so we simply
  ignore any configurations we are passed (i.e. DPConfigure). This means
  the sysfs control of DP lanes won't work.
* ChromeOS has two modes of operation for alt-modes: entirely EC driven
  or AP-driven from userspace (via the typec daemon). Thus, we never
  expect the kernel alt-mode drivers to auto-enter modes.

This was tested on kernel 6.6 with a ChromeOS Brya device and compile
tested against linux-usb (with allmodconfig).

Thanks,
Abhishek


Abhishek Pandit-Subedi (7):
  usb: typec: altmode_match should handle TYPEC_ANY_MODE
  usb: typec: intel_pmc_mux: Null check before use
  usb: typec: Auto enter control for alternate modes
  platform/chrome: cros_ec_typec: Update partner altmode active
  platform/chrome: cros_ec_typec: Displayport support
  platform/chrome: cros_ec_typec: Thunderbolt support
  platform/chrome: cros_ec_typec: Disable auto_enter

Heikki Krogerus (1):
  usb: typec: Add driver for Thunderbolt 3 Alternate Mode

 Documentation/ABI/testing/sysfs-bus-typec     |   9 +
 MAINTAINERS                                   |   5 +-
 drivers/platform/chrome/Makefile              |   3 +
 drivers/platform/chrome/cros_ec_typec.c       |  55 ++-
 drivers/platform/chrome/cros_ec_typec.h       |   1 +
 drivers/platform/chrome/cros_typec_altmode.h  |  48 +++
 .../platform/chrome/cros_typec_displayport.c  | 247 ++++++++++++++
 .../platform/chrome/cros_typec_thunderbolt.c  | 184 ++++++++++
 drivers/usb/typec/altmodes/Kconfig            |   9 +
 drivers/usb/typec/altmodes/Makefile           |   2 +
 drivers/usb/typec/altmodes/displayport.c      |   6 +-
 drivers/usb/typec/altmodes/thunderbolt.c      | 322 ++++++++++++++++++
 drivers/usb/typec/class.c                     |  34 +-
 drivers/usb/typec/mux/intel_pmc_mux.c         |   9 +-
 include/linux/usb/typec.h                     |   2 +
 include/linux/usb/typec_altmode.h             |   2 +
 16 files changed, 918 insertions(+), 20 deletions(-)
 create mode 100644 drivers/platform/chrome/cros_typec_altmode.h
 create mode 100644 drivers/platform/chrome/cros_typec_displayport.c
 create mode 100644 drivers/platform/chrome/cros_typec_thunderbolt.c
 create mode 100644 drivers/usb/typec/altmodes/thunderbolt.c

Comments

Dmitry Baryshkov Sept. 25, 2024, 5:12 p.m. UTC | #1
On Wed, Sep 25, 2024 at 09:25:01AM GMT, Abhishek Pandit-Subedi wrote:
> 
> Hi Heikki, Tzung-Bi et al,
> 
> This patch series adds support for alternate mode entry for the
> cros-ec-typec driver for Displayport and Thunderbolt.
> 
> Thunderbolt support is added by adapting an RFC Heikki had posted
> previously:
> 
> https://lore.kernel.org/linux-usb/20191230152857.43917-1-heikki.krogerus@linux.intel.com/
> 
> A few comments on the series:
> 
> * The cros-ec interface will not accept any VDOs/VDMs so we simply
>   ignore any configurations we are passed (i.e. DPConfigure). This means
>   the sysfs control of DP lanes won't work.
> * ChromeOS has two modes of operation for alt-modes: entirely EC driven
>   or AP-driven from userspace (via the typec daemon). Thus, we never
>   expect the kernel alt-mode drivers to auto-enter modes.
> 
> This was tested on kernel 6.6 with a ChromeOS Brya device and compile
> tested against linux-usb (with allmodconfig).

Please test on top of the linux-usb or linux-next. 6.6 is nine months
old kernel.

Also for v2 please consider CC'ing both lists for all patches. Otherwise
it's hard to follow the changes.

> 
> Thanks,
> Abhishek
> 
> 
>
Abhishek Pandit-Subedi Sept. 25, 2024, 5:20 p.m. UTC | #2
On Wed, Sep 25, 2024 at 10:12 AM Dmitry Baryshkov
<dmitry.baryshkov@linaro.org> wrote:
>
> On Wed, Sep 25, 2024 at 09:25:01AM GMT, Abhishek Pandit-Subedi wrote:
> >
> > Hi Heikki, Tzung-Bi et al,
> >
> > This patch series adds support for alternate mode entry for the
> > cros-ec-typec driver for Displayport and Thunderbolt.
> >
> > Thunderbolt support is added by adapting an RFC Heikki had posted
> > previously:
> >
> > https://lore.kernel.org/linux-usb/20191230152857.43917-1-heikki.krogerus@linux.intel.com/
> >
> > A few comments on the series:
> >
> > * The cros-ec interface will not accept any VDOs/VDMs so we simply
> >   ignore any configurations we are passed (i.e. DPConfigure). This means
> >   the sysfs control of DP lanes won't work.
> > * ChromeOS has two modes of operation for alt-modes: entirely EC driven
> >   or AP-driven from userspace (via the typec daemon). Thus, we never
> >   expect the kernel alt-mode drivers to auto-enter modes.
> >
> > This was tested on kernel 6.6 with a ChromeOS Brya device and compile
> > tested against linux-usb (with allmodconfig).
>
> Please test on top of the linux-usb or linux-next. 6.6 is nine months
> old kernel.

Ack -- I'm going to try to load the upstream kernel on my ChromeOS
device + test.

>
> Also for v2 please consider CC'ing both lists for all patches. Otherwise
> it's hard to follow the changes.

Really sorry about that. I'm using patman to send patches and didn't
realize it would split the patch series between the two. v2 will send
all 8 patches to both lists.

>
> >
> > Thanks,
> > Abhishek
> >
> >
> >
>
> --
> With best wishes
> Dmitry