[PATCH v3 0/4] usb: typec: WUSB3801 devicetree bindings and driver

From: Samuel Holland
Date: Mon Feb 14 2022 - 00:01:25 EST


This series adds bindings and a driver for the Willsemi WUSB3801. This
chip's bindings use the standard USB Type-C connector bindings, but the
driver does not use the TCPM library, so a refactoring patch is included
to avoid duplicating some fwnode parsing code.

Changes in v3:
- Leave the call to fw_devlink_purge_absent_suppliers in its original
place in the TCPM code. It is not needed by the new driver.
- Remove unused variable from TCPM function.
- Remove version info printout

Changes in v2:
- Always put the return values from typec_find_* in a signed variable
for error checking.
- License the driver as GPL 2 only; probably best anyway as I used a
lot of other drivers/usb/typec code as inspiration
- Don't try to be clever; use `default` instead of `unreachable`
- Free the IRQ before unregistering the partner/port

Samuel Holland (4):
dt-bindings: vendor-prefixes: Add willsemi
dt-bindings: usb: Add WUSB3801 Type-C Port Controller
usb: typec: Factor out non-PD fwnode properties
usb: typec: Support the WUSB3801 port controller

.../bindings/usb/willsemi,wusb3801.yaml | 75 +++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
drivers/usb/typec/Kconfig | 10 +
drivers/usb/typec/Makefile | 1 +
drivers/usb/typec/class.c | 43 ++
drivers/usb/typec/tcpm/tcpm.c | 24 +-
drivers/usb/typec/wusb3801.c | 437 ++++++++++++++++++
include/linux/usb/typec.h | 3 +
8 files changed, 572 insertions(+), 23 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/willsemi,wusb3801.yaml
create mode 100644 drivers/usb/typec/wusb3801.c

--
2.33.1