Hi, This series adds a number of smaller improvements to the USB Type-C Connector class code, including new helpers for cables, new definitions for the latest standard versions, support for the Enter Mode VDO, etc. The series also includes patches that are meant to (partially) prepare the subsystem for USB4 support, and for Thundebolt3 alternate mode. Especially the new Enter_Mode Message that USB4 requires is considered with the definitions for the "USB mode" (which can be usb2, usb3 or usb4), which is one of the fields in that message. Later we will need to allow the user to control the USB mode, but I'm not including the patches that add the attributes for that in this series. I'll send them separately as RFC following this series. thanks, Heikki Krogerus (15): usb: typec: Block mode entry if the port has the mode disabled usb: typec: Add parameter for the VDO to typec_altmode_enter() usb: typec: More API for cable handling usb: typec: Make the attributes read-only when writing is not possible usb: typec: Hide the port_type attribute when it's not supported usb: typec: Allow power role swapping even without USB PD usb: typec: Fix the description of struct typec_capability usb: pd: Add definitions for the Enter_USB message usb: pd: Add definition for DFP and UFP1 VDOs usb: typec: Add the Product Type VDOs to struct usb_pd_identity usb: typec: Add definitions for the latest specification releases usb: typec: Give the mux drivers all the details regarding the port state usb: typec: Provide definitions for the USB modes usb: typec: Add member for the supported USB modes to struct typec_capability usb: typec: ucsi: Store the supported USB modes Documentation/ABI/testing/sysfs-class-typec | 14 +- drivers/usb/typec/altmodes/displayport.c | 5 +- drivers/usb/typec/bus.c | 40 +++-- drivers/usb/typec/class.c | 174 +++++++++++++------- drivers/usb/typec/mux/pi3usb30532.c | 5 +- drivers/usb/typec/tcpm/tcpm.c | 6 +- drivers/usb/typec/ucsi/displayport.c | 2 +- drivers/usb/typec/ucsi/ucsi.c | 5 + include/linux/usb/pd.h | 33 +++- include/linux/usb/pd_vdo.h | 32 ++++ include/linux/usb/typec.h | 17 +- include/linux/usb/typec_altmode.h | 20 ++- include/linux/usb/typec_mux.h | 10 +- 13 files changed, 273 insertions(+), 90 deletions(-) -- 2.24.1