[GIT PULL] USB/PHY driver patches for 4.17-rc1

From: Greg KH
Date: Wed Apr 04 2018 - 06:31:30 EST


The following changes since commit c698ca5278934c0ae32297a8725ced2e27585d7f:

Linux 4.16-rc6 (2018-03-18 17:48:42 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/ tags/usb-4.17-rc1

for you to fetch changes up to 5267c5e09c25e2ee6242b37833a9bdf9d97f54a2:

Revert "USB: serial: ftdi_sio: add Id for Physik Instrumente E-870" (2018-03-29 18:37:28 +0200)

----------------------------------------------------------------
USB/PHY patches for 4.17-rc1

Here is the big set of USB and PHY driver patches for 4.17-rc1.

Lots of USB typeC work happened this round, with code moving from the
staging directory into the "real" part of the kernel, as well as new
infrastructure being added to be able to handle the different types of
"roles" that typeC requires.

There is also the normal huge set of USB gadget controller and driver
updates, along with XHCI changes, and a raft of other tiny fixes all
over the USB tree. And the PHY driver updates are merged in here as
well as they interacted with the USB drivers in some places.

All of these have been in linux-next for a while with no reported
issues.

Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

----------------------------------------------------------------
Adam Thomson (3):
typec: tcpm: Add PD Rev 3.0 definitions to PD header
typec: tcpm: Add ADO header for Alert message handling
typec: tcpm: Add SDB header for Status message handling

Alban Bedel (1):
usb: host: Remove the deprecated ATH79 USB host config options

Alex Hung (1):
usb: clarify ACPI spec version and section number for _UPC & _PLD

Alexander Monakov (1):
phy: berlin-usb: adjust USB_PHY_RX_CTRL init flags

Alexey Khoroshilov (1):
phy: lpc18xx-usb-otg: error handling in lpc18xx_usb_otg_phy_power_on()

Amelie Delaunay (3):
usb: dwc2: add support for host mode external vbus supply
dt-bindings: phy: add support for STM32 USB PHY Controller (USBPHYC)
phy: stm32: add support for STM32 USB PHY Controller (USBPHYC)

Andy Shevchenko (19):
USB: dwc2: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: bcm63xx: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: gr: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: pxa25x: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: pxa27x: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: chipidea: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: dwc2: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: musb: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: bcm63xx: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: gr: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: pxa25x: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: gadget: pxa27x: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: host: fhci: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: host: imx21: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: host: isp116x: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: host: whci: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: typec: Re-use DEFINE_SHOW_ATTRIBUTE() macro
uwb: Re-use DEFINE_SHOW_ATTRIBUTE() macro
USB: host: sl811: Re-use DEFINE_SHOW_ATTRIBUTE() macro

Ben Hutchings (1):
usbip: Correct maximum value of CONFIG_USBIP_VHCI_HC_PORTS

Benjamin Herrenschmidt (1):
usb/gadget: Add an EP dispose() callback for EP lifetime tracking

Benson Leung (1):
USB: announce bcdDevice as well as idVendor, idProduct.

Chen-Yu Tsai (1):
phy: allwinner: sun4i-usb: poll vbus changes on A23/A33 when driving VBUS

Chris Dickens (2):
usb: gadget: composite: fix incorrect handling of OS desc requests
usb: gadget: composite: remove duplicated code in OS desc handling

Chris Zhong (2):
phy: rockchip-typec: force to USB2 if DP at 4 lanes mode
phy: rockchip-typec: support DP phy switch

Chunfeng Yun (4):
phy: phy-mtk-tphy: keep default value of mcu_bus_ck_gate_en
phy: phy-mtk-tphy: add configurable parameters for slew rate calibrate
dt-bindings: phy-mtk-tphy: add properties for U2 slew rate calibrate
usb: skip phys initialization of shared hcd

Clemens Werther (1):
USB: serial: ftdi_sio: add support for Harman FirmwareHubEmulator

Colin Ian King (4):
phy: tegra: remove redundant self assignment of 'map'
USB: gadget: function: remove redundant initialization of 'tv_nexus'
USB: wusbcore: remove redundant re-assignment to pointer 'dev'
usb: dwc2: fix spelling mistake: "genereted" -> "generated"

Dan Carpenter (1):
usb: xhci: Clean up error code in xhci_dbc_tty_register_device()

Daniel Gimpelevich (1):
USB: misc: uss720: more vendor/product ID's

Dmitry Osipenko (1):
usb: phy: tegra: Increase PHY clock stabilization timeout

Dov Levenglick (1):
phy: fix structure documentation

Enric Balletbo i Serra (4):
phy: rockchip-typec: deprecate some DT properties for various register fields.
dt-bindings: phy-rockchip-typec: deprecate some register properties.
dt-bindings: phy-rockchip-typec: move extcon property to be optional.
phy: rockchip-typec: fall back to working in host-mode if extcon is missing.

Fabio Estevam (1):
usb: phy: mxs: Staticize mxs_charger_secondary_detection()

Felipe Balbi (4):
usb: dwc3: debugfs: Re-use DEFINE_SHOW_ATTRIBUTE() macro
usb: dwc3: Makefile: fix link error on randconfig
usb: gadget: udc: core: update usb_ep_queue() documentation
usb: dwc3: gadget: never call ->complete() from ->ep_queue()

Gevorg Sahakyan (1):
usb: dwc2: Remove version check in GSNPSID

Greg Kroah-Hartman (6):
Merge 4.16-rc3 into usb-next
Revert "usb: core: Add "quirks" parameter for usbcore"
Merge branch 4.16-rc6 into usb-next
Merge tag 'phy-for-4.17' of git://git.kernel.org/.../kishon/linux-phy into usb-next
Merge tag 'usb-for-v4.17' of git://git.kernel.org/.../balbi/usb into usb-testing
Merge tag 'usb-serial-4.17-rc1' of https://git.kernel.org/.../johan/usb-serial into usb-next

Grigor Tovmasyan (5):
usb: dwc2: Delete unused functionality
usb: dwc2: Fix interval type issue
usb: dwc2: Add call_gadget() function call
usb: dwc2: Add core state checking
usb: dwc2: Make dwc2_force_mode() static

Gustavo A. R. Silva (2):
usb: dwc2: gadget: Use true and false for boolean values
USB: wusbcore: crypto: Remove VLA usage

Hans de Goede (7):
usb: typec: tcpm: Set USB role switch to device mode when configured as such
usb: typec: tcpm: Use new Type-C switch/mux and usb-role-switch functions
xhci: Add Intel extended cap / otg phy mux handling
usb: roles: Add Intel xHCI USB role switch driver
usb: typec: driver for Pericom PI3USB30532 Type-C cross switch
platform/x86: intel_cht_int33fe: Add device connections for the Type-C port
extcon: axp288: Set USB role where necessary

Heikki Krogerus (5):
usb: typec: Start using ERR_PTR
drivers: base: Unified device connection lookup
usb: typec: API for controlling USB Type-C Multiplexers
usb: common: Small class for USB role switches
usb: typec: Separate the definitions for data and power roles

Heinrich Schuchardt (2):
usb: dwc3: ep0: remove redundant assignment
usb: musb: gadget: misplaced out of bounds check

Himanshu Jha (1):
usb: isp1760: Use kasprintf

Icenowy Zheng (1):
phy: sun4i-usb: add support for R40 USB PHY

Jaejoong Kim (1):
usb: gadget: udc: Use scnprintf() instead of snprintf()

Jianguo Sun (2):
dt-bindings: add bindings doc for hi3798cv200 combphy
phy: add combo phy driver for HiSilicon STB SoCs

Johan Hovold (5):
USB: serial: option: reimplement interface masking
USB: serial: option: drop redundant interface-class test
USB: serial: option: use mass-storage class define
USB: serial: cp210x: add ELDAT Easywave RX09 id
Revert "USB: serial: ftdi_sio: add Id for Physik Instrumente E-870"

John Youn (3):
usb: dwc2: Enable LPM
usb: dwc2: Enable power down
MAINTAINERS: Update maintainer for dwc2

Kai-Heng Feng (4):
usb: core: Add "quirks" parameter for usbcore
usb: core: Add "quirks" parameter for usbcore
usb: core: Copy parameter string correctly and remove superfluous null check
usb: core: Add USB_QUIRK_DELAY_CTRL_MSG to usbcore quirks

Kees Cook (1):
USB: chaoskey: Use kasprintf() over strcpy()/strcat()

Kirill Kapranov (2):
USB: adutux: Delete a misleading comment
USB: adutux: Add waiting in transfer abortion

Ladislav Michl (1):
usb: gadget: udc: atmel: Use devm_ioremap_resource()

Lars-Peter Clausen (2):
usb: gadget: ffs: Execute copy_to_user() with USER_DS set
usb: gadget: ffs: Let setup() return USB_GADGET_DELAYED_STATUS

Linus Walleij (2):
usb: phy: ab8500: Drop AB8540/9540 support
usb: phy: ab8500: Drop AB8540/9540 support

Lu Baolu (2):
usb: xhci: Remove ep_trb from xhci_cleanup_halted_endpoint()
usb: xhci: Remove ep_trb from finish_td()

Ludovic Desroches (2):
usb: gadget: udc: atmel: remove code related to platform stuff
usb: gadget: udc: atmel: convert to use GPIO descriptors

Major Hayden (1):
USB: serial: ftdi_sio: add RT Systems VX-8 cable

Manu Gautam (15):
phy: qcom-qmp: Power-on PHY before initialization
phy: qcom-qusb2: Power-on PHY before initialization
phy: qcom-qmp: Fix PHY block reset sequence
phy: qcom-qmp: Move SERDES/PCS START after PHY reset
phy: qcom-qusb2: Add support for different register layouts
dt-bindings: phy-qcom-qusb2: Update binding for QUSB2 V2 version
phy: qcom-qusb2: Add support for QUSB2 V2 version
phy: qcom-qmp: Move register offsets to header file
phy: qcom-qmp: Add register offsets for QMP V3 PHY
dt-bindings: phy-qcom-qmp: Update bindings for QMP V3 USB PHY
phy: qcom-qmp: Add support for QMP V3 USB3 PHY
phy: Add USB speed related PHY modes
phy: qcom-qusb2: Add support for runtime PM
phy: qcom-qmp: Add support for runtime PM
phy: add SPDX identifier to QMP and QUSB2 PHY drivers

Marcus Folkesson (1):
usb: usb-skeleton: make MODULE_LICENSE and SPDX tag match

Martin Blumenstingl (18):
dt-bindings: phy: meson-gxl-usb2-phy: add the reset line and clock
phy: amlogic: phy-meson-gxl-usb2: don't log an error on -EPROBE_DEFER
phy: amlogic: phy-meson-gxl-usb2: support the clock and reset line
phy: amlogic: phy-meson-gxl-usb2: default to host mode
phy: amlogic: phy-meson-gxl-usb2: rename some of the U2P_R2 registers
dt-bindings: usb: add the documentation for USB HCDs
usb: add a flag to skip PHY initialization to struct usb_hcd
usb: core: add a wrapper for the USB PHYs on the HCD
usb: core: hcd: integrate the PHY wrapper into the HCD core
usb: host: xhci-mtk: remove custom USB PHY handling
usb: host: ehci-platform: remove custom USB PHY handling
usb: host: ohci-platform: remove custom USB PHY handling
usb: core: hcd: remove support for initializing a single PHY
dt-bindings: usb: add support for dwc3 controller on Amlogic Meson GX
usb: dwc3: of-simple: add support for shared and pulsed reset lines
usb: dwc3: of-simple: add support for the Amlogic Meson GXL and AXG SoCs
dt-bindings: phy: Add support for the USB3 PHY on Amlogic Meson GXL SoCs
phy: amlogic: add USB3 PHY support for Meson GXL and GXM

Masahiro Yamada (1):
phy: add 'depends on HAS_IOMEM' to fix unmet dependency

Mathias Nyman (7):
usb: Don't disable Latency tolerance Messaging (LTM) before port reset
xhci: zero usb device slot_id member when disabling and freeing a xhci slot
xhci: Don't always run the default stop endpoint command completion handler
xhci: refactor xhci_urb_enqueue a bit with minor changes
xhci: Clear the host side toggle manually when endpoint is soft reset
xhci: Show what USB release number the xHC supports from protocol capablity
xhci: Add option to get next extended capability in list by passing id = 0

Michael Trimarchi (3):
usb: chipidea: usbmisc: evdo is only specific to OTG port
usb: chipidea: usbmisc: evdo can be set e/o reset
usb: chipidea: usbmisc: small clean up

Mike Looijmans (1):
usb: phy-generic: Use gpiod_set_value_cansleep

Minas Harutyunyan (3):
usb: dwc2: hcd: Fix host channel halt flow
usb: dwc2: host: Fix transaction errors in host mode
usb: dwc2: Change TxFIFO and RxFIFO flushing flow

Pengcheng Li (2):
dt-bindings: add bindings doc for HiSilicon INNO USB2 PHY
phy: add inno-usb2-phy driver for hi3798cv200 SoC

Razmik Karapetyan (9):
usb: dwc2: Use AHB burst size parameter
usb: dwc2: Set AHB burst size to INCR
usb: dwc2: Update dwc2_handle_incomplete_isoc_in() function
usb: dwc2: Update dwc2_handle_incomplete_isoc_out() function
usb: dwc2: Update GINTSTS_GOUTNAKEFF interrupt handling
usb: dwc2: Rename bit set/clear function names
usb: dwc2: Remove unnecessary debug prints
usb: dwc2: Add ACG support to the driver
usb: dwc2: Backup and restore PCGCCTL1 register

Richard Leitner (1):
usb: core: introduce per-port over-current counters

Roger Quadros (5):
usb: dwc3: core.h: add some register definitions
usb: dwc3: prevent setting PRTCAP to OTG from debugfs
usb: dwc3: add dual role support using OTG block
usb: dwc3: Prevent indefinite sleep in _dwc3_set_mode during suspend/resume
usb: dwc3: core: Fix broken system suspend/resume on AM437x

Sebastian Reichel (2):
usb: chipidea: imx: Cleanup ci_hdrc_imx_platform_flag
usb: chipidea: imx: Fix ULPI on imx53

Sevak Arakelyan (7):
usb: dwc2: Update bit polling functionality
usb: dwc2: Rename GLPMCFG... definitions
usb: dwc2: Add core parameters for LPM support
usb: dwc2: gadget: Add functionality to exit from LPM L1 state
usb: dwc2: gadget: LPM interrupt handler
usb: dwc2: Enable LPM Transaction Received interrupt
usb: dwc2: gadget: Configure the core to enable LPM

Shawn Guo (1):
dt-bindings: hisilicon: add doc for Hi3798CV200 peripheral controller

Shawn Lin (2):
phy: rockchip-emmc: retry calpad busy trimming
phy: rockchip-emmc: use regmap_read_poll_timeout to poll dllrdy

ShuFan Lee (2):
staging: typec: handle vendor defined part and modify drp toggling flow
staging: typec: modify parameter of tcpci_irq

Shuah Khan (6):
usbip: tools usbip_attach: Fix cryptic error messages
usbip: tools usbip_network: Fix cryptic error messages
usbip: tools: add more error codes for usbip request/reply messages
usbip: usbip_host_common: Use new error codes to return request status
usbip: tools: change to use new error codes in server reply messages
usbip: tools: usbipd: exclude exported devices from exportable device list

Souptick Joarder (2):
usb: host: ehci: Use dma_pool_zalloc()
usb: gadget: udc: bdc: Use dma_pool_zalloc

Stefan Agner (1):
usb: phy: ab8500: use correct enum type

Stefan Wahren (1):
usb: dwc2: Print error if unable to set DMA coherent mask

Teichmann, Martin (1):
USB: serial: ftdi_sio: add Id for Physik Instrumente E-870

Thierry Reding (1):
phy: tegra: xusb: Uncomment register write

Thinh Nguyen (13):
usb: gadget: mass_storage: Set max_speed to SSP
usb: core: urb: Check SSP isoc ep comp descriptor
usb: dwc3: pci: Properly cleanup resource
usb: dwc3: Add SoftReset PHY synchonization delay
usb: dwc3: Update DWC_usb31 GTXFIFOSIZ reg fields
usb: dwc3: Check IP revision for GTXFIFOSIZ
usb: dwc3: Add DWC_usb31 GRXTHRCFG bit fields
usb: dwc3: gadget: Check IP revision for GRXTHRCFG
usb: dwc3: Add DWC_usb31 GTXTHRCFG reg fields
usb: dwc3: Make TX/RX threshold configurable
usb: dwc3: Check for ESS TX/RX threshold config
usb: dwc3: Dump LSP and BMU debug info
usb: dwc3: Check controller type before setting speed

Tobin C. Harding (1):
usb: usbtest: Remove stack VLA usage

Tomeu Vizoso (1):
usb: hub: Reduce warning to notice on power loss

Tony Lindgren (1):
phy: mapphone-mdm6600: Add USB PHY driver for MDM6600 on Droid 4

Ulf Magnusson (1):
phy: Remove SOC_EXYNOS4212 dep. from PHY_EXYNOS4X12_USB

Vardan Mikayelyan (19):
usb: dwc2: eliminate irq parameter from dwc2_gadget_init
usb: dwc2: pci: Replace kzalloc() with devm_kzalloc()
usb: dwc2: pci: Move usb_phy_generic_register()
usb: dwc2: pci: Move devm_kzalloc() before platform_device_add()
usb: dwc2: pci: Handle error cleanup in probe
usb: dwc2: Rename hibernation to partial_power_down
usb: dwc2: Add hibernation field into dwc2_hw_params
usb: dwc2: gadget: Moved dtxfsiz backup array place
usb: dwc2: gadget: Fix dwc2_restore_device_registers
usb: dwc2: core: Add hibernated flag
usb: dwc2: gadget: Add remote_wakeup_allowed flag
usb: dwc2: Changes in registers backup/restore functions
usb: dwc2: Add helper functions for restore routine
usb: dwc2: Add host/device hibernation functions
usb: dwc2: Add dwc2_enter_hibernation(), dwc2_exit_hibernation()
usb: dwc2: Allow entering hibernation from USB_SUSPEND interrupt
usb: dwc2: Add dwc2_handle_gpwrdn_intr() handler
usb: dwc2: Change hub-control to allow hibernation
usb: dwc2: Force mode optimizations

Vivek Gautam (2):
phy: qcom-qmp: Fix phy pipe clock gating
phy: qcom-qmp: Adapt to clk_bulk_* APIs

Wei Yongjun (1):
usb: roles: Fix return value check in intel_xhci_usb_probe()

William wu (1):
phy: rockchip-typec: enable usb3 host during usb3 phy power on

Wolfram Sang (1):
usb: gadget: udc: change comparison to bitshift when dealing with a mask

Yavuz, Tuba (1):
USB: gadget: f_midi: fixing a possible double-free in f_midi

Yoshihiro Shimoda (3):
dt-bindings: rcar-gen3-phy-usb2: Add bindings for r8a77965
phy: rcar-gen3-usb2: Add support for r8a77965
dt-bindings: rcar-gen3-phy-usb3: Add bindings for r8a77965

Zhengjun Xing (1):
USB:fix USB3 devices behind USB3 hubs not resuming at hibernate thaw

Documentation/ABI/testing/sysfs-bus-usb | 10 +
Documentation/ABI/testing/sysfs-class-usb_role | 21 +
Documentation/admin-guide/kernel-parameters.txt | 58 ++
.../bindings/arm/hisilicon/hisilicon.txt | 23 +
.../devicetree/bindings/phy/meson-gxl-usb2-phy.txt | 4 +
.../devicetree/bindings/phy/meson-gxl-usb3-phy.txt | 31 +
.../bindings/phy/phy-hi3798cv200-combphy.txt | 59 ++
.../devicetree/bindings/phy/phy-hisi-inno-usb2.txt | 71 +++
.../bindings/phy/phy-mapphone-mdm6600.txt | 29 +
.../devicetree/bindings/phy/phy-mtk-tphy.txt | 4 +
.../devicetree/bindings/phy/phy-rockchip-typec.txt | 35 +-
.../devicetree/bindings/phy/phy-stm32-usbphyc.txt | 73 +++
.../devicetree/bindings/phy/qcom-qmp-phy.txt | 6 +-
.../devicetree/bindings/phy/qcom-qusb2-phy.txt | 5 +-
.../devicetree/bindings/phy/rcar-gen3-phy-usb2.txt | 2 +
.../devicetree/bindings/phy/rcar-gen3-phy-usb3.txt | 2 +
.../devicetree/bindings/phy/sun4i-usb-phy.txt | 1 +
.../devicetree/bindings/usb/amlogic,dwc3.txt | 42 ++
Documentation/devicetree/bindings/usb/dwc3.txt | 16 +
.../devicetree/bindings/usb/mediatek,mtk-xhci.txt | 5 +-
.../devicetree/bindings/usb/mediatek,mtu3.txt | 5 +-
Documentation/devicetree/bindings/usb/usb-ehci.txt | 6 +-
Documentation/devicetree/bindings/usb/usb-hcd.txt | 9 +
Documentation/devicetree/bindings/usb/usb-ohci.txt | 6 +-
Documentation/devicetree/bindings/usb/usb-uhci.txt | 3 +
Documentation/devicetree/bindings/usb/usb-xhci.txt | 5 +
Documentation/driver-api/device_connection.rst | 43 ++
Documentation/driver-api/usb/typec.rst | 73 ++-
MAINTAINERS | 14 +-
arch/mips/Kconfig | 1 +
drivers/base/Makefile | 3 +-
drivers/base/devcon.c | 136 +++++
drivers/extcon/Kconfig | 3 +-
drivers/extcon/extcon-axp288.c | 176 +++++-
drivers/phy/allwinner/phy-sun4i-usb.c | 22 +-
drivers/phy/amlogic/Kconfig | 13 +-
drivers/phy/amlogic/Makefile | 1 +
drivers/phy/amlogic/phy-meson-gxl-usb2.c | 78 ++-
drivers/phy/amlogic/phy-meson-gxl-usb3.c | 282 +++++++++
drivers/phy/hisilicon/Kconfig | 20 +
drivers/phy/hisilicon/Makefile | 2 +
drivers/phy/hisilicon/phy-hisi-inno-usb2.c | 197 +++++++
drivers/phy/hisilicon/phy-histb-combphy.c | 289 +++++++++
drivers/phy/marvell/phy-berlin-usb.c | 2 +-
drivers/phy/mediatek/phy-mtk-tphy.c | 23 +-
drivers/phy/motorola/Kconfig | 8 +
drivers/phy/motorola/Makefile | 1 +
drivers/phy/motorola/phy-mapphone-mdm6600.c | 542 +++++++++++++++++
drivers/phy/phy-core.c | 2 +
drivers/phy/phy-lpc18xx-usb-otg.c | 8 +-
drivers/phy/qualcomm/phy-qcom-qmp.c | 647 ++++++++++++++-------
drivers/phy/qualcomm/phy-qcom-qmp.h | 280 +++++++++
drivers/phy/qualcomm/phy-qcom-qusb2.c | 418 ++++++++++---
drivers/phy/ralink/Kconfig | 1 +
drivers/phy/renesas/phy-rcar-gen3-usb2.c | 4 +
drivers/phy/rockchip/Kconfig | 1 +
drivers/phy/rockchip/phy-rockchip-emmc.c | 60 +-
drivers/phy/rockchip/phy-rockchip-typec.c | 160 +++--
drivers/phy/samsung/Kconfig | 2 +-
drivers/phy/st/Kconfig | 14 +
drivers/phy/st/Makefile | 1 +
drivers/phy/st/phy-stm32-usbphyc.c | 461 +++++++++++++++
drivers/phy/tegra/xusb-tegra210.c | 6 +-
drivers/phy/tegra/xusb.c | 2 +-
drivers/platform/x86/intel_cht_int33fe.c | 24 +
drivers/staging/typec/tcpci.c | 127 +++-
drivers/staging/typec/tcpci.h | 14 +
drivers/usb/Kconfig | 5 +
drivers/usb/Makefile | 2 +
drivers/usb/chipidea/ci_hdrc_imx.c | 15 +-
drivers/usb/chipidea/debug.c | 65 +--
drivers/usb/chipidea/host.c | 6 +-
drivers/usb/chipidea/usbmisc_imx.c | 26 +-
drivers/usb/common/Makefile | 1 +
drivers/usb/common/roles.c | 305 ++++++++++
drivers/usb/core/Makefile | 2 +-
drivers/usb/core/generic.c | 9 +-
drivers/usb/core/hcd.c | 64 +-
drivers/usb/core/hub.c | 26 +-
drivers/usb/core/hub.h | 1 +
drivers/usb/core/phy.c | 158 +++++
drivers/usb/core/phy.h | 7 +
drivers/usb/core/port.c | 10 +
drivers/usb/core/quirks.c | 186 +++++-
drivers/usb/core/urb.c | 8 +
drivers/usb/core/usb-acpi.c | 4 +-
drivers/usb/core/usb.c | 1 +
drivers/usb/core/usb.h | 1 +
drivers/usb/dwc2/core.c | 395 +++++++++----
drivers/usb/dwc2/core.h | 136 +++--
drivers/usb/dwc2/core_intr.c | 304 +++++++++-
drivers/usb/dwc2/debugfs.c | 91 +--
drivers/usb/dwc2/gadget.c | 403 ++++++++++---
drivers/usb/dwc2/hcd.c | 445 ++++++++++----
drivers/usb/dwc2/hcd.h | 56 --
drivers/usb/dwc2/hw.h | 44 +-
drivers/usb/dwc2/params.c | 91 ++-
drivers/usb/dwc2/pci.c | 27 +-
drivers/usb/dwc2/platform.c | 16 +-
drivers/usb/dwc3/Makefile | 2 +-
drivers/usb/dwc3/core.c | 134 ++++-
drivers/usb/dwc3/core.h | 146 +++++
drivers/usb/dwc3/debugfs.c | 84 ++-
drivers/usb/dwc3/drd.c | 489 +++++++++++++++-
drivers/usb/dwc3/dwc3-of-simple.c | 31 +-
drivers/usb/dwc3/dwc3-pci.c | 2 +-
drivers/usb/dwc3/ep0.c | 2 +-
drivers/usb/dwc3/gadget.c | 82 ++-
drivers/usb/gadget/composite.c | 126 ++--
drivers/usb/gadget/function/f_fs.c | 6 +-
drivers/usb/gadget/function/f_midi.c | 3 +-
drivers/usb/gadget/function/f_tcm.c | 2 +-
drivers/usb/gadget/legacy/mass_storage.c | 2 +-
drivers/usb/gadget/u_f.h | 2 +
drivers/usb/gadget/udc/atmel_usba_udc.c | 158 ++---
drivers/usb/gadget/udc/atmel_usba_udc.h | 4 +-
drivers/usb/gadget/udc/bcm63xx_udc.c | 33 +-
drivers/usb/gadget/udc/bdc/bdc_ep.c | 3 +-
drivers/usb/gadget/udc/core.c | 7 +-
drivers/usb/gadget/udc/dummy_hcd.c | 2 +-
drivers/usb/gadget/udc/goku_udc.h | 2 +-
drivers/usb/gadget/udc/gr_udc.c | 17 +-
drivers/usb/gadget/udc/pxa25x_udc.c | 20 +-
drivers/usb/gadget/udc/pxa27x_udc.c | 42 +-
drivers/usb/host/Kconfig | 25 -
drivers/usb/host/Makefile | 2 +-
drivers/usb/host/ehci-fsl.c | 2 +
drivers/usb/host/ehci-mem.c | 3 +-
drivers/usb/host/ehci-platform.c | 55 +-
drivers/usb/host/ehci-sched.c | 6 +-
drivers/usb/host/ehci-tegra.c | 1 +
drivers/usb/host/fhci-dbg.c | 26 +-
drivers/usb/host/imx21-dbg.c | 65 +--
drivers/usb/host/isp116x-hcd.c | 15 +-
drivers/usb/host/ohci-omap.c | 1 +
drivers/usb/host/ohci-platform.c | 56 +-
drivers/usb/host/sl811-hcd.c | 17 +-
drivers/usb/host/whci/debug.c | 48 +-
drivers/usb/host/xhci-dbgtty.c | 5 +-
drivers/usb/host/xhci-ext-caps.c | 90 +++
drivers/usb/host/xhci-ext-caps.h | 7 +-
drivers/usb/host/xhci-mem.c | 2 +
drivers/usb/host/xhci-mtk.c | 98 +---
drivers/usb/host/xhci-pci.c | 5 +
drivers/usb/host/xhci-plat.c | 1 +
drivers/usb/host/xhci-ring.c | 27 +-
drivers/usb/host/xhci.c | 139 ++++-
drivers/usb/host/xhci.h | 4 +
drivers/usb/isp1760/isp1760-udc.c | 6 +-
drivers/usb/misc/adutux.c | 4 +-
drivers/usb/misc/chaoskey.c | 8 +-
drivers/usb/misc/usbtest.c | 5 +-
drivers/usb/misc/uss720.c | 7 +-
drivers/usb/musb/musb_debugfs.c | 13 +-
drivers/usb/musb/musb_gadget_ep0.c | 14 +-
drivers/usb/phy/phy-ab8500-usb.c | 508 +---------------
drivers/usb/phy/phy-generic.c | 6 +-
drivers/usb/phy/phy-mxs-usb.c | 2 +-
drivers/usb/phy/phy-tegra-usb.c | 14 +-
drivers/usb/roles/Kconfig | 14 +
drivers/usb/roles/Makefile | 1 +
drivers/usb/roles/intel-xhci-usb-role-switch.c | 192 ++++++
drivers/usb/serial/cp210x.c | 1 +
drivers/usb/serial/ftdi_sio.c | 2 +
drivers/usb/serial/ftdi_sio_ids.h | 9 +
drivers/usb/serial/option.c | 457 +++++----------
drivers/usb/typec/Kconfig | 3 +
drivers/usb/typec/Makefile | 2 +
drivers/usb/typec/{typec.c => class.c} | 168 ++++--
drivers/usb/typec/fusb302/fusb302.c | 19 +-
drivers/usb/typec/mux.c | 191 ++++++
drivers/usb/typec/mux/Kconfig | 10 +
drivers/usb/typec/mux/Makefile | 3 +
drivers/usb/typec/mux/pi3usb30532.c | 178 ++++++
drivers/usb/typec/tcpm.c | 96 +--
drivers/usb/typec/tps6598x.c | 41 +-
drivers/usb/typec/typec_wcove.c | 1 +
drivers/usb/typec/ucsi/ucsi.c | 44 +-
drivers/usb/usb-skeleton.c | 2 +-
drivers/usb/usbip/Kconfig | 2 +-
drivers/usb/wusbcore/crypto.c | 8 +-
drivers/usb/wusbcore/wa-nep.c | 1 -
drivers/uwb/uwb-debug.c | 32 +-
include/linux/device.h | 22 +
include/linux/phy/phy.h | 31 +-
include/linux/usb/composite.h | 3 +
include/linux/usb/gadget.h | 1 +
include/linux/usb/hcd.h | 8 +-
include/linux/usb/pd.h | 185 +++++-
include/linux/usb/pd_ado.h | 42 ++
include/linux/usb/pd_ext_sdb.h | 31 +
include/linux/usb/role.h | 53 ++
include/linux/usb/tcpm.h | 15 +-
include/linux/usb/typec.h | 28 +-
include/linux/usb/typec_mux.h | 55 ++
tools/usb/usbip/libsrc/usbip_common.c | 23 +
tools/usb/usbip/libsrc/usbip_common.h | 11 +
tools/usb/usbip/libsrc/usbip_host_common.c | 5 +-
tools/usb/usbip/src/usbip_attach.c | 10 +-
tools/usb/usbip/src/usbip_list.c | 6 +-
tools/usb/usbip/src/usbip_network.c | 10 +-
tools/usb/usbip/src/usbip_network.h | 6 +-
tools/usb/usbip/src/usbipd.c | 34 +-
203 files changed, 9264 insertions(+), 3082 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-class-usb_role
create mode 100644 Documentation/devicetree/bindings/phy/meson-gxl-usb3-phy.txt
create mode 100644 Documentation/devicetree/bindings/phy/phy-hi3798cv200-combphy.txt
create mode 100644 Documentation/devicetree/bindings/phy/phy-hisi-inno-usb2.txt
create mode 100644 Documentation/devicetree/bindings/phy/phy-mapphone-mdm6600.txt
create mode 100644 Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.txt
create mode 100644 Documentation/devicetree/bindings/usb/amlogic,dwc3.txt
create mode 100644 Documentation/devicetree/bindings/usb/usb-hcd.txt
create mode 100644 Documentation/driver-api/device_connection.rst
create mode 100644 drivers/base/devcon.c
create mode 100644 drivers/phy/amlogic/phy-meson-gxl-usb3.c
create mode 100644 drivers/phy/hisilicon/phy-hisi-inno-usb2.c
create mode 100644 drivers/phy/hisilicon/phy-histb-combphy.c
create mode 100644 drivers/phy/motorola/phy-mapphone-mdm6600.c
create mode 100644 drivers/phy/qualcomm/phy-qcom-qmp.h
create mode 100644 drivers/phy/st/phy-stm32-usbphyc.c
create mode 100644 drivers/usb/common/roles.c
create mode 100644 drivers/usb/core/phy.c
create mode 100644 drivers/usb/core/phy.h
create mode 100644 drivers/usb/host/xhci-ext-caps.c
create mode 100644 drivers/usb/roles/Kconfig
create mode 100644 drivers/usb/roles/Makefile
create mode 100644 drivers/usb/roles/intel-xhci-usb-role-switch.c
rename drivers/usb/typec/{typec.c => class.c} (91%)
create mode 100644 drivers/usb/typec/mux.c
create mode 100644 drivers/usb/typec/mux/Kconfig
create mode 100644 drivers/usb/typec/mux/Makefile
create mode 100644 drivers/usb/typec/mux/pi3usb30532.c
create mode 100644 include/linux/usb/pd_ado.h
create mode 100644 include/linux/usb/pd_ext_sdb.h
create mode 100644 include/linux/usb/role.h
create mode 100644 include/linux/usb/typec_mux.h