[PATCH 0/8] usb: typec: Support for Alternate Modes
From: Heikki Krogerus
Date: Wed Jun 27 2018 - 11:22:28 EST
Hi,
Since we now have an implementation for an actual alternate mode (DisplayPort),
I guess there is no reason to send another RFC. This series is the same as the
last RFC proposal [1] with only minor changes. There were only a few comments.
[1] https://lkml.org/lkml/2018/6/8/225
I've tested these with a platform that has fusb302, and also with UCSI
platforms. The UCSI driver will need separate support for alternate modes that
I'm not including to this series. I'm still working on it. I've used various
DisplayPort to Type-C adapters for testing, both DisplayPort receptacles and
connectors.
Heikki Krogerus (8):
usb: pd: include kernel.h
usb: typec: function for checking cable plug orientation
usb: typec: mux: Get the mux identifier from function parameter
usb: typec: Register a device for every mode
usb: typec: Bus type for alternate modes
usb: typec: Add driver for DisplayPort alternate mode
usb: typec: pi3usb30532: Start using generic state values
usb: typec: tcpm: Support for Alternate Modes
Documentation/ABI/obsolete/sysfs-class-typec | 48 ++
Documentation/ABI/testing/sysfs-bus-typec | 51 ++
Documentation/ABI/testing/sysfs-class-typec | 62 +-
.../testing/sysfs-driver-typec-displayport | 49 ++
Documentation/driver-api/usb/typec_bus.rst | 136 +++++
MAINTAINERS | 11 +-
drivers/usb/typec/Kconfig | 2 +
drivers/usb/typec/Makefile | 3 +-
drivers/usb/typec/altmodes/Kconfig | 14 +
drivers/usb/typec/altmodes/Makefile | 2 +
drivers/usb/typec/altmodes/displayport.c | 578 ++++++++++++++++++
drivers/usb/typec/bus.c | 401 ++++++++++++
drivers/usb/typec/bus.h | 38 ++
drivers/usb/typec/class.c | 486 ++++++++++-----
drivers/usb/typec/mux.c | 6 +-
drivers/usb/typec/mux/pi3usb30532.c | 13 +-
drivers/usb/typec/tcpm.c | 188 ++++--
include/linux/mod_devicetable.h | 15 +
include/linux/usb/pd.h | 1 +
include/linux/usb/tcpm.h | 9 -
include/linux/usb/typec.h | 52 +-
include/linux/usb/typec_altmode.h | 160 +++++
include/linux/usb/typec_dp.h | 95 +++
include/linux/usb/typec_mux.h | 2 +-
scripts/mod/devicetable-offsets.c | 4 +
scripts/mod/file2alias.c | 13 +
26 files changed, 2116 insertions(+), 323 deletions(-)
create mode 100644 Documentation/ABI/obsolete/sysfs-class-typec
create mode 100644 Documentation/ABI/testing/sysfs-bus-typec
create mode 100644 Documentation/ABI/testing/sysfs-driver-typec-displayport
create mode 100644 Documentation/driver-api/usb/typec_bus.rst
create mode 100644 drivers/usb/typec/altmodes/Kconfig
create mode 100644 drivers/usb/typec/altmodes/Makefile
create mode 100644 drivers/usb/typec/altmodes/displayport.c
create mode 100644 drivers/usb/typec/bus.c
create mode 100644 drivers/usb/typec/bus.h
create mode 100644 include/linux/usb/typec_altmode.h
create mode 100644 include/linux/usb/typec_dp.h
--
2.18.0