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

From: Greg KH
Date: Thu Oct 15 2020 - 08:27:55 EST


The following changes since commit 549738f15da0e5a00275977623be199fbbf7df50:

Linux 5.9-rc8 (2020-10-04 16:04:34 -0700)

are available in the Git repository at:

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

for you to fetch changes up to 93578a25d4e21603518daf27a5f9caa4bf79de68:

usb: musb: gadget: Use fallthrough pseudo-keyword (2020-10-10 12:32:29 +0200)

----------------------------------------------------------------
USB/PHY/Thunderbolt driver patches for 5.10-rc1

Here is the big set of USB, PHY, and Thunderbolt driver updates for
5.10-rc1.

Lots of tiny different things for these subsystems are in here,
including:
- phy driver updates
- thunderbolt / USB 4 updates and additions
- USB gadget driver updates
- xhci fixes and updates
- typec driver additions and updates
- api conversions to various drivers for core kernel api changes
- new USB control message functions to make it harder to get
wrong, as found by syzbot (took 2 tries to get it right)
- lots of tiny USB driver fixes and updates all over the place

All of these have been in linux-next for a while, with the exception of
the last "obviously correct" patch that updated a FALLTHROUGH comment
that got merged last weekend.

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

----------------------------------------------------------------
Alan Stern (5):
USB: UDC: Expand device model API interface
USB: UDC: net2280: Fix memory leaks
USB: UDC: net2272: Fix memory leaks
USB: hub: Clean up use of port initialization schemes and retries
USB: hub: Add Kconfig option to reduce number of port initialization retries

Alex Dewar (1):
usb: atm: don't use snprintf() for sysfs attrs

Allen Pais (7):
usb: atm: convert tasklets to use new tasklet_setup() API
usb: c67x00: convert tasklets to use new tasklet_setup() API
usb: hcd: convert tasklets to use new tasklet_setup() API
usb/gadget: f_midi: convert tasklets to use new tasklet_setup() API
usb/gadget: fsl_qe_udc: convert tasklets to use new tasklet_setup() API
usb: xhci: convert tasklets to use new tasklet_setup() API
usb: mos7720: convert tasklets to use new tasklet_setup() API

Amelie Delaunay (5):
dt-bindings: usb: dwc2: add optional usb-role-switch property
usb: dwc2: override PHY input signals with usb role switch support
usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs
usb: typec: add typec_find_pwr_opmode
usb: typec: add support for STUSB160x Type-C controller family

Anand Moon (1):
phy: samsung: Use readl_poll_timeout function

Azhar Shaikh (1):
usb: typec: intel_pmc_mux: Pass correct USB Type-C port number to SoC

Badhri Jagan Sridharan (12):
usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart
usb: typec: pd: Fix formatting in pd.h header
usb: typec: tcpm: Migrate workqueue to RT priority for processing events
usb: typec: tcpci: Add register definitions to tcpci
usb: typec: tcpci: Add support when hidden tx registers are inaccessible
usb: typec: tcpci: update ROLE_CONTROL for DRP
usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference
usb: typec: tcpci: Add set_vbus tcpci callback
usb: typec: tcpci_maxim: Chip level TCPC driver
usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS)
usb: typec: tcpci: Implement callbacks for FRS
usb: typec: tcpci_maxim: Add support for Sink FRS

Bastien Nocera (1):
USB: Better name for __check_usb_generic()

Biju Das (2):
dt-bindings: usb: renesas,usb3-peri: Document HS and SS data bus
usb: typec: hd3ss3220: Use OF graph API to get the connector fwnode

Bryan O'Donoghue (1):
USB: gadget: f_ncm: Fix NDP16 datagram validation

ChiYuan Huang (2):
usb typec: mt6360: Add support for mt6360 Type-C driver
usb typec: mt6360: Add MT6360 Type-C DT binding documentation

Chris Packham (1):
usb: host: ehci-platform: Add workaround for brcm, xgs-iproc-ehci

Christian Lamparter (2):
dt-bindings: usb: dwc2: add support for APM82181 SoCs USB OTG HS and FS
usb: dwc2: add support for APM82181 USB OTG

Christophe JAILLET (1):
usb: gadget: tegra-xudc: Avoid GFP_ATOMIC where it is not needed

Chunfeng Yun (18):
phy: phy-bcm-ns-usb3: convert to readl_poll_timeout_atomic()
phy: phy-bcm-ns2-usbdrd: convert to readl_poll_timeout_atomic()
phy: phy-bcm-sr-usb: convert to readl_poll_timeout_atomic()
phy: phy-qcom-apq8064-sata: convert to readl_relaxed_poll_timeout()
phy: phy-pxa-28nm-hsic: convert to readl_poll_timeout()
phy: phy-pxa-28nm-usb2: convert to readl_poll_timeout()
usb: early: convert to readl_poll_timeout_atomic()
usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic()
usb: pci-quirks: convert to readl_poll_timeout_atomic()
usb: xhci-rcar: convert to readl_poll_timeout_atomic()
usb: oxu210hp-hcd: convert to readl_poll_timeout_atomic()
usb: fotg210-hcd: convert to readl_poll_timeout_atomic()
usb: isp1760-hcd: convert to readl_poll_timeout_atomic()
usb: phy-ulpi-viewport: convert to readl_poll_timeout_atomic()
usb: phy: phy-mv-usb: convert to readl_poll_timeout_atomic()
usb: udc: net2280: convert to readl_poll_timeout_atomic()
iopoll: update kerneldoc of read_poll_timeout_atomic()
usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root

Claudiu Beznea (1):
usb: gadget: udc: atmel: use of_find_matching_node_and_match

Colin Ian King (2):
USB: storage: isd200: fix spelling mistake "removeable" -> "removable"
usb: gadget: fix spelling mistake "Dectected" -> "Detected"

Cristian Birsan (5):
dt-bindings: usb: atmel: Update DT bindings documentation for sam9x60
usb: gadget: udc: atmel: simplify endpoint allocation
usb: gadget: udc: atmel: use 1 bank endpoints for control transfers
usb: gadget: udc: atmel: update endpoint allocation for sam9x60
ARM: dts: at91: sam9x60ek: enable usb device

Dan Carpenter (1):
thunderbolt: debugfs: Fix uninitialized return in counters_write()

Eli Billauer (1):
usb: core: Solve race condition in anchor cleanup functions

Ezequiel Garcia (1):
phy: Move phy-rockchip-dphy-rx0 out of staging

Felipe Balbi (11):
usb: dwc3: meson: fix coccinelle WARNING
usb: dwc3: debug: fix sparse warning
usb: dwc3: meson: fix checkpatch errors and warnings
usb: dwc3: ulpi: fix checkpatch warning
usb: dwc3: trace: fix checkpatch warnings
usb: dwc3: debug: fix checkpatch warning
usb: dwc3: ep0: fix checkpatch warnings
usb: dwc3: qcom: fix checkpatch warnings
usb: dwc3: debugfs: fix checkpatch warnings
usb: dwc3: core: fix checkpatch warnings
usb: dwc3: gadget: fix checkpatch warnings

Florian Fainelli (1):
MAINTAINERS: Add entry for Broadcom BDC driver

Frank Wunderlich (1):
usb: xhci-mtk: Fix typo

Gil Fine (2):
thunderbolt: Introduce tb_switch_is_tiger_lake()
thunderbolt: Add debugfs interface

Greg Kroah-Hartman (27):
Merge 5.9-rc3 into usb-next
Merge 5.9-rc5 into usb-next
USB: move snd_usb_pipe_sanity_check into the USB core
USB: add usb_control_msg_send() and usb_control_msg_recv()
USB: core: message.c: use usb_control_msg_send() in a few places
USB: core: hub.c: use usb_control_msg_send() in a few places
USB: legousbtower: use usb_control_msg_recv()
sound: usx2y: move to use usb_control_msg_send()
sound: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv()
sound: line6: move to use usb_control_msg_send() and usb_control_msg_recv()
sound: hiface: move to use usb_control_msg_send()
Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv()
ALSA: remove calls to usb_pipe_type_check for control endpoints
Merge 5.0-rc6 into usb-next
Merge a31128384dfd ("Merge tag 'libnvdimm-fixes-5.9-rc7' of git://git.kernel.org/.../nvdimm/nvdimm") into usb-next
Merge tag 'usb-ci-v5.10-rc1' of git://git.kernel.org/.../peter.chen/usb into usb-next
sound: usx2y: move to use usb_control_msg_send()
sound: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv()
USB: legousbtower: use usb_control_msg_recv()
sound: line6: move to use usb_control_msg_send() and usb_control_msg_recv()
sound: hiface: move to use usb_control_msg_send()
Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv()
Merge tag 'thunderbolt-for-v5.10-rc1' of git://git.kernel.org/.../westeri/thunderbolt into usb-next
Merge tag 'phy-for-5.10' of git://git.kernel.org/.../phy/linux-phy into usb-next
Merge tag 'usb-for-v5.10' of git://git.kernel.org/.../balbi/usb into usb-next
Merge 5.9-rc8 into usb-next
Merge tag 'usb-serial-5.10-rc1' of https://git.kernel.org/.../johan/usb-serial into usb-next

Grygorii Strashko (3):
phy: ti: gmii-sel: move phy init in separate function
phy: ti: gmii-sel: use features mask during init
phy: ti: gmii-sel: retrieve ports number and base offset from dt

Gustavo A. R. Silva (1):
usb: musb: gadget: Use fallthrough pseudo-keyword

Hamish Martin (2):
usb: ohci: Default to per-port over-current protection
usb: ohci: Make distrust_firmware param default to false

Heikki Krogerus (4):
usb: typec: intel_pmc_mux: Check the port status before connect
usb: typec: intel_pmc_mux: Support for device role (UFP)
usb: typec: intel_pmc_mux: Add dependency on ACPI
usb: typec: displayport: Reduce noise from the driver

JC Kuo (1):
usb: host: xhci-tegra: remove a duplicated entry

Jing Xiangfeng (1):
USB: usblcd: Remove the superfluous break

Johan Hovold (6):
Revert "cdc-acm: hardening against malicious devices"
USB: cdc-acm: handle broken union descriptors
USB: cdc-acm: use common data-class define
USB: cdc-acm: clean up no-union-descriptor handling
USB: serial: ftdi_sio: clean up jtag quirks
USB: serial: qcserial: fix altsetting probing

Krzysztof Kozlowski (1):
usb: gadget: s3c: Remove unused 'udc' variable

Kunihiko Hayashi (2):
dt-bindings: phy: Add UniPhier AHCI PHY description
phy: socionext: Add UniPhier AHCI PHY driver support

Lad Prabhakar (5):
dt-bindings: usb: renesas,usb-xhci: Document r8a774e1 support
dt-bindings: usb: renesas, usb3-peri: Document r8a774e1 support
dt-bindings: usb: renesas,usbhs: Add r8a774e1 support
dt-bindings: usb: renesas,usb-xhci: Document r8a774e1 support
dt-bindings: usb: convert ti,hd3ss3220 bindings to json-schema

Leonid Bloch (1):
USB: serial: option: Add Telit FT980-KS composition

Li Jun (7):
dt-bindings: phy-imx8mq-usb: add compatible string for imx8mp usb phy
phy: freescale: imx8mq-usb: add support for imx8mp usb phy
usb: xhci: add debugfs support for ep with stream
usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG
usb: dwc3: core: don't trigger runtime pm when remove driver
usb: dwc3: core: add phy cleanup for probe error handling
usb: dwc3: debugfs: do not queue work if try to change mode on non-drd

Linus Walleij (2):
usb: gadget: udc: Drop surplus include
usb: gadget: pch_udc: Convert to use GPIO descriptors

Liu Shixin (3):
usbip: simplify the return expression of usbip_core_init()
USB: bcma: use module_bcma_driver to simplify the code
usb: appledisplay: use module_usb_driver to simplify the code

Lorenzo Colitti (4):
usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above.
usb: gadget: f_ncm: set SuperSpeed bulk descriptor bMaxBurst to 15
usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets.
usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well

Lukas Bulwahn (1):
MAINTAINERS: make linux-usb list remarks consistent

Marc Zyngier (2):
usb: dwc2: Always disable regulators on driver teardown
usb: dwc2: Always disable regulators on driver teardown

Martin Blumenstingl (1):
usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails

Mathias Nyman (2):
xhci: Tune interrupt blocking for isochronous transfers
xhci: don't create endpoint debugfs entry before ring buffer is set.

Mauro Carvalho Chehab (2):
usb: dwc3: simple: add support for Hikey 970
dt-bindings: document a new quirk for dwc3

Michał Mirosław (1):
usb: gadget: f_acm: don't disable disabled EP

Mika Westerberg (31):
thunderbolt: Software CM only should set force power in Tiger Lake
thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake
thunderbolt: Do not program NFC buffers for USB4 router protocol adapters
thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails
thunderbolt: Send reset only to first generation routers
thunderbolt: Tear down DP tunnels when suspending
thunderbolt: Initialize TMU again on resume
thunderbolt: Do not change default USB4 router notification timeout
thunderbolt: Configure link after lane bonding is enabled
thunderbolt: Set port configured for both ends of the link
thunderbolt: Configure port for XDomain
thunderbolt: Disable lane 1 for XDomain connection
thunderbolt: Enable wakes from system suspend
PCI / thunderbolt: Switch to use device links instead of PCI quirk
ACPI: Export acpi_get_first_physical_node() to modules
thunderbolt: Create device links from ACPI description
thunderbolt: Add runtime PM for Software CM
thunderbolt: Move struct tb_cap_any to tb_regs.h
thunderbolt: Introduce tb_port_next_cap()
thunderbolt: Introduce tb_switch_next_cap()
thunderbolt: Introduce tb_port_is_nhi()
thunderbolt: Check for Intel vendor ID when identifying controller
thunderbolt: Introduce tb_switch_is_ice_lake()
thunderbolt: No need to warn in TB_CFG_ERROR_INVALID_CONFIG_SPACE
thunderbolt: Only stop control channel when entering freeze
thunderbolt: Allow KUnit tests to be built also when CONFIG_USB4=m
thunderbolt: Use "if USB4" instead of "depends on" in Kconfig
thunderbolt: Handle ERR_LOCK notification
thunderbolt: Log correct zeroX entries in decode_error()
thunderbolt: Correct tb_check_quirks() kernel-doc
thunderbolt: Capitalize comment on top of QUIRK_FORCE_POWER_LINK_CONTROLLER

Minas Harutyunyan (1):
usb: dwc2: Fix INTR OUT transfers in DDMA mode.

Mychaela N. Falconia (2):
USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
USB: serial: ftdi_sio: use cur_altsetting for consistency

Nathan Chancellor (1):
usb: dwc2: Fix parameter type in function pointer prototype

Neil Armstrong (2):
dt-bindings: usb: amlogic,meson-g12a-usb-ctrl: add the Amlogic AXG Families USB Glue Bindings
usb: dwc-meson-g12a: Add support for USB on AXG SoCs

Nicolas Saenz Julienne (9):
dt-bindings: reset: Add a binding for the RPi Firmware reset controller
reset: Add Raspberry Pi 4 firmware reset controller
ARM: dts: bcm2711: Add firmware usb reset node
ARM: dts: bcm2711: Add reset controller to xHCI node
usb: xhci-pci: Add support for reset controllers
Revert "USB: pci-quirks: Add Raspberry Pi 4 quirk"
usb: host: pci-quirks: Bypass xHCI quirks for Raspberry Pi 4
Revert "firmware: raspberrypi: Introduce vl805 init routine"
Revert "PCI: brcmstb: Wait for Raspberry Pi's firmware when present"

Oliver Neukum (14):
USB: microtek: use set_host_byte()
USB: UAS: fix disconnect by unplugging a hub
USB: UAS: use macro for reporting results
USB: adutux: fix debugging
USB: cdc-acm: cleanup of data structures
Revert "USB: core: hub.c: use usb_control_msg_send() in a few places"
Revert "Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv()"
Revert "sound: hiface: move to use usb_control_msg_send()"
Revert "sound: line6: move to use usb_control_msg_send() and usb_control_msg_recv()"
Revert "sound: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv()"
Revert "sound: usx2y: move to use usb_control_msg_send()"
Revert "USB: legousbtower: use usb_control_msg_recv()"
USB: correct API of usb_control_msg_send/recv
USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync().

Paul Cercueil (5):
usb/misc: usb4604: Use pm_ptr() macro
usb/misc: usb3503: Use pm_ptr() macro
usb/host: ehci-platform: Use pm_ptr() macro
usb/host: ehci-spear: Use pm_ptr() macro
usb/host: ehci-npcm7xx: Use pm_ptr() macro

Pawel Laszczak (2):
usb: cdns3: Enable workaround for USB2.0 PHY Rx compliance test PHY lockup
usb: gadget: config_ep_by_speed_and_alt instead of config_ep_by_speed

Peter Chen (32):
doc: dt-binding: ci-hdrc-usb2: add property for samsung picophy
usb: chipidea: imx: add two samsung picophy parameters tuning implementation
usb: chipidea: ci_hdrc_imx: restore pinctrl
usb: host: xhci-plat: add platform data support
usb: host: xhci-plat: add .suspend_quirk for struct xhci_plat_priv
usb: host: xhci-plat: delete the unnecessary code
usb: host: xhci-plat: add priv quirk for skip PHY initialization
usb: host: xhci-plat: add wakeup entry at sysfs
usb: host: xhci-plat: improve the comments for xhci_plat_suspend
usb: xhci: omit duplicate actions when suspending a runtime suspended host.
usb: cdns3: gadget: free interrupt after gadget has deleted
MAINTAINERS: add Cadence USB3 DRD IP driver entry
usb: cdns3: introduce set_phy_power_on{off} APIs
usb: cdns3: add runtime PM support
usb: cdns3: imx: add glue layer runtime pm implementation
usb: cdns3: core: quit if it uses role switch class
usb: cdns3: gadget: set fast access bit
usb: cdns3: gadget: clear the interrupt status when disconnect the host
usb: cdns3: drd: call PHY .set_mode accordingly
usb: cdns3: gadget: move wait configuration operation
usb: cdns3: gadget: fix some endian issues
usb: cdns3: gadget: fix possible memory leak
usb: dwc3: allocate gadget structure dynamically
Revert "usb: udc: allow adding and removing the same gadget device"
usb: gadget: core: do not try to disconnect gadget if it is not connected
usb: cdns3: gadget: using correct sg operations
usb: cdns3: gadget: improve the dump TRB operation at cdns3_ep_run_transfer
usb: cdns3: gadget: add CHAIN and ISP bit for sg list use case
usb: cdns3: gadget: handle sg list use case at completion correctly
usb: cdns3: gadget: need to handle sg case for workaround 2 case
usb: cdns3: gadget: sg_support is only for DEV_VER_V2 or above
usb: cdns3: gadget: enlarge the TRB ring length

Petko Manolov (2):
net: rtl8150: Use the new usb control message API.
net: pegasus: Use the new usb control message API.

Qinglang Miao (1):
usb: gadget: lpc32xx_udc: Convert to DEFINE_SHOW_ATTRIBUTE

Rajmohan Mani (2):
thunderbolt: Optimize Force Power logic
thunderbolt: Optimize NHI LC mailbox command processing

Ramuthevar Vadivel Murugan (2):
dt-bindings: phy: Add USB PHY support for Intel LGM SoC
phy: Add USB3 PHY support for Intel LGM SoC

Randy Dunlap (3):
usb: phy: phy-ab8500-usb: fix spello of "function"
phy: fix USB_LGM_PHY warning & build errors
usb: phy: phy-ab8500-usb: fix spello of "function"

Raymond Tan (1):
usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality

Rikard Falkeborn (11):
phy: cadence: salvo: Constify cdns_salvo_phy_ops
phy: fsl-imx8mq-usb: Constify imx8mq_usb_phy_ops
phy: hisilicon; Constify hi3660_phy_ops
phy: lantiq: rcu-usb2: Constify ltq_rcu_usb2_phy_ops
phy: lantiq: vrx200-pcie: Constify ltq_vrx200_pcie_phy_ops
phy: ralink-usb: Constify ralink_usb_phy_ops
phy: samsung-ufs: Constify samsung_ufs_phy_ops
phy: qcom-ipq4019-usb: Constify static phy_ops structs
phy: cadence: Sierra: Constify static structs
phy: cadence: salvo: Constify cdns_nxp_sequence_pair
phy: cadence: torrent: Constify regmap_config structs

Roger Quadros (4):
phy: omap-usb2-phy: fix coding style issues
dt-binding: phy: convert ti,omap-usb2 to YAML
dt-bindings: usb: Convert cdns-usb3.txt to YAML schema
dt-bindings: usb: cdns,usb3: Add cdns,phyrst-a-enable property

Sandeep Maheswaram (1):
usb: dwc3: qcom: Add interconnect support in dwc3 driver

Scott Chen (1):
USB: serial: pl2303: add device-id for HP GC device

Sekhar Nori (3):
phy: ti: am654: simplify regfield handling
phy: ti: am654: simplify return handling
phy: ti: am654: update PCIe serdes config

Sergey Korolev (1):
USB: core: remove polling for /sys/kernel/debug/usb/devices

Sergey Shtylyov (1):
usb: core: driver: fix stray tabs in error messages

Shuah Khan (1):
usbip: vhci_hcd: fix calling usb_hcd_giveback_urb() with irqs enabled

Stephen Boyd (8):
dt-bindings: phy: qcom,qmp-usb3-dp: Add DP phy information
phy: qcom-qmp: Move phy mode into struct qmp_phy
phy: qcom-qmp: Remove 'initialized' in favor of 'init_count'
phy: qcom-qmp: Move 'serdes' and 'cfg' into 'struct qcom_phy'
phy: qcom-qmp: Get dp_com I/O resource by index
phy: qcom-qmp: Use devm_platform_ioremap_resource() to simplify
phy: qcom-qmp: Add support for DP in USB3+DP combo phy
phy: qcom-qmp: Add support for sc7180 DP phy

Swapnil Jakhade (22):
phy: Add new PHY attribute max_link_rate
phy: cadence-torrent: Set Torrent PHY attributes
phy: cadence-torrent: Use of_device_get_match_data() to get driver data
phy: cadence-torrent: Use devm_platform_ioremap_resource() to get reg addresses
phy: cadence-torrent: Enable support for multiple subnodes
phy: cadence-torrent: Add separate regmap functions for torrent and DP
phy: cadence-torrent: Check total lane count for all subnodes is within limit
dt-bindings: phy: cadence-torrent: Add binding to specify SSC mode
dt-bindings: phy: cadence-torrent: Update Torrent PHY bindings for generic use
phy: cadence-torrent: Add single link PCIe support
phy: cadence-torrent: Check cmn_ready assertion during PHY power on
phy: cadence-torrent: Add PHY APB reset support
dt-bindings: phy: Add PHY_TYPE_QSGMII definition
phy: cadence-torrent: Add support for PHY multilink configuration
phy: cadence-torrent: Update PHY reset for multilink configuration
phy: cadence-torrent: Add clk changes for multilink configuration
phy: cadence-torrent: Add PHY link configuration sequences for single link
phy: cadence-torrent: Configure PHY_PLL_CFG as part of link_cmn_vals
phy: cadence-torrent: Add single link SGMII/QSGMII register sequences
phy: cadence-torrent: Add single link USB register sequences
phy: cadence-torrent: Add PCIe + USB multilink configuration
phy: cadence-torrent: Add USB + SGMII/QSGMII multilink configuration

Tang Bin (2):
usb: bdc: Fix unused assignment in bdc_probe()
usb: bdc: remove duplicated error message

Tao Ren (1):
usb: gadget: aspeed: fixup vhub port irq handling

Thierry Reding (5):
usb: common: usb-conn-gpio: Make VBUS supply optional
usb: common: usb-conn-gpio: Print error on failure to get VBUS
usb: gadget: tegra-xudc: Use consistent spelling and formatting
usb: gadget: tegra-xudc: Properly align parameters
usb: gadget: tegra-xudc: Do not print errors on probe deferral

Thinh Nguyen (21):
usb: dwc3: gadget: Resume pending requests after CLEAR_STALL
usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command
usb: dwc3: core: Properly default unspecified speed
usb: dwc3: core: Print warning on unsupported speed
usb: dwc3: gadget: Refactor ep command completion
usb: dwc3: gadget: Check MPS of the request length
usb: dwc3: gadget: Reclaim extra TRBs after request completion
usb: dwc3: gadget: Refactor preparing extra TRB
usb: dwc3: gadget: Improve TRB ZLP setup
usb: dwc3: ep0: Fix ZLP for OUT ep0 requests
usb: dwc3: gadget: Return the number of prepared TRBs
usb: dwc3: gadget: Check for number of TRBs prepared
usb: dwc3: gadget: Set IOC if not enough for extra TRBs
usb: dwc3: gadget: Refactor preparing last TRBs
usb: dwc3: gadget: Rename misleading function names
usb: dwc3: gadget: Allow restarting a transfer
usb: dwc3: gadget: Look ahead when setting IOC
usb: dwc3: gadget: Revise setting IOC when no TRB left
usb: dwc3: gadget: Keep TRBs in request order
usb: dwc3: gadget: Return early if no TRB update
usb: dwc3: gadget: Support up to max stream id

Tian Tao (1):
thunderbolt: Use kobj_to_dev() instead of container_of()

Tom Yan (3):
usb-storage: fix sdev->host->dma_dev
uas: fix sdev->host->dma_dev
uas: bump hw_max_sectors to 2048 blocks for SS or faster drives

Tomasz Figa (1):
phy: rockchip-dphy-rx0: Include linux/delay.h

Tomi Valkeinen (2):
dt-bindings: phy: cdns,torrent-phy: add reset-names
dt-bindings: phy: ti,phy-j721e-wiz: fix bindings for torrent phy

Vincent Mailhol (1):
usb: cdc-acm: add quirk to blacklist ETAS ES58X devices

Vinod Koul (3):
Merge branch 'fixes' into next
Merge branch 'topic/phy_attrs' into next
phy: qcom-qmp: initialize the pointer to NULL

Wan Ahmad Zainie (5):
phy: intel: Rename phy-intel to phy-intel-lgm
dt-bindings: phy: intel: Add Keem Bay eMMC PHY bindings
phy: intel: Add Keem Bay eMMC PHY support
dt-bindings: usb: Add Intel Keem Bay USB controller bindings
usb: dwc3: of-simple: Add compatible string for Intel Keem Bay platform

Wesley Cheng (2):
usb: dwc3: Stop active transfers before halting the controller
usb: typec: Add QCOM PMIC typec detection driver

Wilken Gottwalt (1):
USB: serial: option: add Cellient MPL200 card

Xu Wang (1):
USB: yurex: remove needless check before usb_free_coherent()

Ye Bin (1):
usb: gadget: fsl: Fix unsigned expression compared with zero in fsl_udc_probe

Yoshihiro Shimoda (1):
usb: gadget: u_serial: clear suspended flag when disconnecting

Yu Chen (1):
usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc

YueHaibing (4):
usb: mtu3: Remove unsused inline function is_first_entry
phy: ti: j721e-wiz: Remove duplicate include
usb: host: ehci-sched: Remove ununsed function tt_start_uframe()
usb: mtu3: Remove unsused inline function is_first_entry

Zqiang (2):
usb: gadget: function: printer: fix use-after-free in __lock_acquire
usb: gadget: uvc: Fix the wrong v4l2_device_unregister call

.../arm/bcm/raspberrypi,bcm2835-firmware.yaml | 21 +
.../devicetree/bindings/phy/fsl,imx8mq-usb-phy.txt | 2 +-
.../bindings/phy/intel,lgm-emmc-phy.yaml | 17 +-
.../devicetree/bindings/phy/intel,lgm-usb-phy.yaml | 58 +
.../bindings/phy/phy-cadence-torrent.yaml | 96 +-
.../bindings/phy/qcom,qmp-usb3-dp-phy.yaml | 95 +-
.../bindings/phy/socionext,uniphier-ahci-phy.yaml | 76 +
.../devicetree/bindings/phy/ti,omap-usb2.yaml | 74 +
.../devicetree/bindings/phy/ti,phy-j721e-wiz.yaml | 13 +-
Documentation/devicetree/bindings/phy/ti-phy.txt | 37 -
.../bindings/usb/amlogic,meson-g12a-usb-ctrl.yaml | 22 +-
.../devicetree/bindings/usb/atmel-usb.txt | 1 +
.../devicetree/bindings/usb/cdns,usb3.yaml | 96 +
.../devicetree/bindings/usb/cdns-usb3.txt | 45 -
.../devicetree/bindings/usb/ci-hdrc-usb2.txt | 9 +
Documentation/devicetree/bindings/usb/dwc2.yaml | 5 +
Documentation/devicetree/bindings/usb/dwc3.txt | 3 +
.../bindings/usb/intel,keembay-dwc3.yaml | 77 +
.../bindings/usb/mediatek,mt6360-tcpc.yaml | 95 +
.../devicetree/bindings/usb/renesas,usb-xhci.yaml | 1 +
.../devicetree/bindings/usb/renesas,usb3-peri.yaml | 35 +-
.../devicetree/bindings/usb/renesas,usbhs.yaml | 1 +
.../devicetree/bindings/usb/ti,hd3ss3220.txt | 38 -
.../devicetree/bindings/usb/ti,hd3ss3220.yaml | 82 +
MAINTAINERS | 20 +-
arch/arm/boot/dts/at91-sam9x60ek.dts | 13 +
arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 22 +
arch/arm/boot/dts/sam9x60.dtsi | 14 +
drivers/acpi/bus.c | 1 +
drivers/bluetooth/ath3k.c | 93 +-
drivers/firmware/Kconfig | 3 +-
drivers/firmware/raspberrypi.c | 61 -
drivers/net/usb/pegasus.c | 61 +-
drivers/net/usb/rtl8150.c | 32 +-
drivers/pci/controller/pcie-brcmstb.c | 17 -
drivers/pci/quirks.c | 57 -
drivers/phy/Kconfig | 11 +
drivers/phy/Makefile | 1 +
drivers/phy/broadcom/phy-bcm-ns-usb3.c | 22 +-
drivers/phy/broadcom/phy-bcm-ns2-usbdrd.c | 13 +-
drivers/phy/broadcom/phy-bcm-sr-usb.c | 19 +-
drivers/phy/cadence/phy-cadence-salvo.c | 8 +-
drivers/phy/cadence/phy-cadence-sierra.c | 24 +-
drivers/phy/cadence/phy-cadence-torrent.c | 2119 +++++++++++++++++++-
drivers/phy/freescale/phy-fsl-imx8mq-usb.c | 79 +-
drivers/phy/hisilicon/phy-hi3660-usb3.c | 2 +-
drivers/phy/intel/Kconfig | 22 +-
drivers/phy/intel/Makefile | 5 +-
drivers/phy/intel/phy-intel-keembay-emmc.c | 307 +++
.../{phy-intel-combo.c => phy-intel-lgm-combo.c} | 0
.../{phy-intel-emmc.c => phy-intel-lgm-emmc.c} | 0
drivers/phy/lantiq/phy-lantiq-rcu-usb2.c | 2 +-
drivers/phy/lantiq/phy-lantiq-vrx200-pcie.c | 2 +-
drivers/phy/marvell/phy-pxa-28nm-hsic.c | 40 +-
drivers/phy/marvell/phy-pxa-28nm-usb2.c | 33 +-
drivers/phy/phy-lgm-usb.c | 284 +++
drivers/phy/qualcomm/phy-qcom-apq8064-sata.c | 21 +-
drivers/phy/qualcomm/phy-qcom-ipq4019-usb.c | 4 +-
drivers/phy/qualcomm/phy-qcom-qmp.c | 1053 ++++++++--
drivers/phy/qualcomm/phy-qcom-qmp.h | 80 +
drivers/phy/ralink/phy-ralink-usb.c | 2 +-
drivers/phy/rockchip/Kconfig | 12 +
drivers/phy/rockchip/Makefile | 1 +
.../rockchip}/phy-rockchip-dphy-rx0.c | 1 +
drivers/phy/samsung/phy-exynos5-usbdrd.c | 39 +-
drivers/phy/samsung/phy-samsung-ufs.c | 2 +-
drivers/phy/socionext/Kconfig | 10 +
drivers/phy/socionext/Makefile | 1 +
drivers/phy/socionext/phy-uniphier-ahci.c | 321 +++
drivers/phy/ti/phy-am654-serdes.c | 325 +--
drivers/phy/ti/phy-gmii-sel.c | 159 +-
drivers/phy/ti/phy-j721e-wiz.c | 1 -
drivers/phy/ti/phy-omap-usb2.c | 36 +-
drivers/reset/Kconfig | 11 +
drivers/reset/Makefile | 1 +
drivers/reset/reset-raspberrypi.c | 122 ++
drivers/staging/media/Kconfig | 2 -
drivers/staging/media/Makefile | 1 -
.../staging/media/phy-rockchip-dphy-rx0/Kconfig | 13 -
.../staging/media/phy-rockchip-dphy-rx0/Makefile | 2 -
drivers/staging/media/phy-rockchip-dphy-rx0/TODO | 6 -
drivers/thunderbolt/Kconfig | 14 +-
drivers/thunderbolt/Makefile | 4 +-
drivers/thunderbolt/acpi.c | 117 ++
drivers/thunderbolt/cap.c | 136 +-
drivers/thunderbolt/ctl.c | 23 +-
drivers/thunderbolt/debugfs.c | 701 +++++++
drivers/thunderbolt/domain.c | 48 +-
drivers/thunderbolt/icm.c | 5 +-
drivers/thunderbolt/lc.c | 151 +-
drivers/thunderbolt/nhi.c | 90 +-
drivers/thunderbolt/nhi_ops.c | 31 +-
drivers/thunderbolt/quirks.c | 2 +-
drivers/thunderbolt/switch.c | 216 +-
drivers/thunderbolt/tb.c | 207 +-
drivers/thunderbolt/tb.h | 160 +-
drivers/thunderbolt/tb_msgs.h | 1 +
drivers/thunderbolt/tb_regs.h | 34 +-
drivers/thunderbolt/test.c | 13 +-
drivers/thunderbolt/usb4.c | 251 ++-
drivers/usb/atm/cxacru.c | 27 +-
drivers/usb/atm/usbatm.c | 14 +-
drivers/usb/c67x00/c67x00-sched.c | 7 +-
drivers/usb/cdns3/cdns3-imx.c | 191 +-
drivers/usb/cdns3/core.c | 202 +-
drivers/usb/cdns3/core.h | 17 +
drivers/usb/cdns3/drd.c | 20 +
drivers/usb/cdns3/drd.h | 5 +-
drivers/usb/cdns3/ep0.c | 10 +-
drivers/usb/cdns3/gadget.c | 276 ++-
drivers/usb/cdns3/gadget.h | 11 +-
drivers/usb/cdns3/host.c | 7 +
drivers/usb/chipidea/ci_hdrc_imx.c | 13 +-
drivers/usb/chipidea/ci_hdrc_imx.h | 2 +
drivers/usb/chipidea/usbmisc_imx.c | 21 +
drivers/usb/class/cdc-acm.c | 79 +-
drivers/usb/class/cdc-acm.h | 19 +-
drivers/usb/class/cdc-wdm.c | 72 +-
drivers/usb/common/usb-conn-gpio.c | 32 +-
drivers/usb/core/Kconfig | 14 +
drivers/usb/core/devices.c | 41 -
drivers/usb/core/driver.c | 8 +-
drivers/usb/core/generic.c | 4 +-
drivers/usb/core/hcd.c | 6 +-
drivers/usb/core/hub.c | 62 +-
drivers/usb/core/message.c | 180 +-
drivers/usb/core/urb.c | 120 +-
drivers/usb/core/usb.h | 1 -
drivers/usb/dwc2/Kconfig | 1 +
drivers/usb/dwc2/Makefile | 2 +-
drivers/usb/dwc2/core.h | 9 +
drivers/usb/dwc2/drd.c | 180 ++
drivers/usb/dwc2/gadget.c | 42 +-
drivers/usb/dwc2/params.c | 5 +-
drivers/usb/dwc2/platform.c | 43 +-
drivers/usb/dwc3/core.c | 90 +-
drivers/usb/dwc3/core.h | 47 +-
drivers/usb/dwc3/debug.h | 8 +-
drivers/usb/dwc3/debugfs.c | 59 +-
drivers/usb/dwc3/dwc3-meson-g12a.c | 41 +-
drivers/usb/dwc3/dwc3-of-simple.c | 2 +
drivers/usb/dwc3/dwc3-pci.c | 3 +-
drivers/usb/dwc3/dwc3-qcom.c | 128 +-
drivers/usb/dwc3/ep0.c | 61 +-
drivers/usb/dwc3/gadget.c | 593 +++---
drivers/usb/dwc3/gadget.h | 3 +-
drivers/usb/dwc3/trace.h | 17 +-
drivers/usb/dwc3/ulpi.c | 2 +-
drivers/usb/early/ehci-dbgp.c | 15 +-
drivers/usb/early/xhci-dbc.c | 14 +-
drivers/usb/gadget/function/f_acm.c | 8 +-
drivers/usb/gadget/function/f_midi.c | 6 +-
drivers/usb/gadget/function/f_ncm.c | 10 +-
drivers/usb/gadget/function/f_printer.c | 16 +-
drivers/usb/gadget/function/f_tcm.c | 12 +-
drivers/usb/gadget/function/f_uvc.c | 8 +-
drivers/usb/gadget/function/u_ether.c | 2 +-
drivers/usb/gadget/function/u_serial.c | 1 +
drivers/usb/gadget/udc/aspeed-vhub/core.c | 10 +-
drivers/usb/gadget/udc/aspeed-vhub/vhub.h | 3 +
drivers/usb/gadget/udc/atmel_usba_udc.c | 68 +-
drivers/usb/gadget/udc/atmel_usba_udc.h | 3 +-
drivers/usb/gadget/udc/bcm63xx_udc.c | 1 +
drivers/usb/gadget/udc/bdc/bdc_core.c | 9 +-
drivers/usb/gadget/udc/core.c | 82 +-
drivers/usb/gadget/udc/fsl_qe_udc.c | 7 +-
drivers/usb/gadget/udc/fsl_udc_core.c | 9 +-
drivers/usb/gadget/udc/lpc32xx_udc.c | 17 +-
drivers/usb/gadget/udc/net2272.c | 24 +-
drivers/usb/gadget/udc/net2272.h | 1 +
drivers/usb/gadget/udc/net2280.c | 32 +-
drivers/usb/gadget/udc/net2280.h | 1 +
drivers/usb/gadget/udc/pch_udc.c | 55 +-
drivers/usb/gadget/udc/s3c2410_udc.c | 3 -
drivers/usb/gadget/udc/tegra-xudc.c | 60 +-
drivers/usb/host/bcma-hcd.c | 13 +-
drivers/usb/host/ehci-npcm7xx.c | 8 +-
drivers/usb/host/ehci-platform.c | 16 +-
drivers/usb/host/ehci-sched.c | 20 -
drivers/usb/host/ehci-spear.c | 8 +-
drivers/usb/host/fotg210-hcd.c | 20 +-
drivers/usb/host/ohci-hcd.c | 18 +-
drivers/usb/host/oxu210hp-hcd.c | 21 +-
drivers/usb/host/pci-quirks.c | 35 +-
drivers/usb/host/xhci-dbgtty.c | 6 +-
drivers/usb/host/xhci-debugfs.c | 109 +-
drivers/usb/host/xhci-debugfs.h | 10 +
drivers/usb/host/xhci-mtk.c | 6 +-
drivers/usb/host/xhci-pci.c | 10 +
drivers/usb/host/xhci-plat.c | 44 +-
drivers/usb/host/xhci-plat.h | 1 +
drivers/usb/host/xhci-rcar.c | 43 +-
drivers/usb/host/xhci-ring.c | 23 +-
drivers/usb/host/xhci-tegra.c | 1 -
drivers/usb/host/xhci.c | 11 +-
drivers/usb/host/xhci.h | 3 +
drivers/usb/image/microtek.c | 14 +-
drivers/usb/isp1760/isp1760-hcd.c | 20 +-
drivers/usb/misc/adutux.c | 1 +
drivers/usb/misc/appledisplay.c | 14 +-
drivers/usb/misc/legousbtower.c | 61 +-
drivers/usb/misc/usb3503.c | 18 +-
drivers/usb/misc/usb4604.c | 8 +-
drivers/usb/misc/usblcd.c | 1 -
drivers/usb/misc/yurex.c | 6 +-
drivers/usb/mtu3/mtu3.h | 6 -
drivers/usb/musb/musb_gadget_ep0.c | 2 +-
drivers/usb/phy/phy-ab8500-usb.c | 2 +-
drivers/usb/phy/phy-mv-usb.c | 18 +-
drivers/usb/phy/phy-ulpi-viewport.c | 12 +-
drivers/usb/serial/ftdi_sio.c | 37 +-
drivers/usb/serial/ftdi_sio_ids.h | 7 +
drivers/usb/serial/mos7720.c | 8 +-
drivers/usb/serial/option.c | 5 +
drivers/usb/serial/pl2303.c | 1 +
drivers/usb/serial/pl2303.h | 1 +
drivers/usb/serial/qcserial.c | 4 +-
drivers/usb/storage/isd200.c | 2 +-
drivers/usb/storage/scsiglue.c | 2 +-
drivers/usb/storage/uas.c | 31 +-
drivers/usb/storage/usb.c | 5 +-
drivers/usb/typec/Kconfig | 24 +
drivers/usb/typec/Makefile | 2 +
drivers/usb/typec/altmodes/displayport.c | 2 +-
drivers/usb/typec/class.c | 15 +
drivers/usb/typec/hd3ss3220.c | 18 +-
drivers/usb/typec/mux/Kconfig | 1 +
drivers/usb/typec/mux/intel_pmc_mux.c | 207 +-
drivers/usb/typec/qcom-pmic-typec.c | 262 +++
drivers/usb/typec/stusb160x.c | 875 ++++++++
drivers/usb/typec/tcpm/Kconfig | 14 +
drivers/usb/typec/tcpm/Makefile | 14 +-
drivers/usb/typec/tcpm/tcpci.c | 113 +-
drivers/usb/typec/tcpm/tcpci.h | 25 +
drivers/usb/typec/tcpm/tcpci_maxim.c | 503 +++++
drivers/usb/typec/tcpm/tcpci_mt6360.c | 212 ++
drivers/usb/typec/tcpm/tcpm.c | 362 +++-
drivers/usb/usbip/usbip_common.c | 8 +-
drivers/usb/usbip/vhci_hcd.c | 8 +-
include/dt-bindings/phy/phy-cadence-torrent.h | 13 +
include/dt-bindings/phy/phy.h | 1 +
.../dt-bindings/reset/raspberrypi,firmware-reset.h | 13 +
include/linux/iopoll.h | 4 +-
include/linux/phy/phy.h | 2 +
include/linux/usb.h | 9 +
include/linux/usb/gadget.h | 27 +-
include/linux/usb/pd.h | 26 +-
include/linux/usb/tcpm.h | 8 +-
include/linux/usb/typec.h | 1 +
include/soc/bcm2835/raspberrypi-firmware.h | 7 -
sound/usb/6fire/firmware.c | 38 +-
sound/usb/helper.c | 16 +-
sound/usb/helper.h | 1 -
sound/usb/hiface/pcm.c | 14 +-
sound/usb/line6/driver.c | 72 +-
sound/usb/line6/podhd.c | 23 +-
sound/usb/line6/toneport.c | 9 +-
sound/usb/mixer_scarlett_gen2.c | 2 +-
sound/usb/quirks.c | 12 +-
sound/usb/usx2y/us122l.c | 42 +-
260 files changed, 12933 insertions(+), 2874 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/intel,lgm-usb-phy.yaml
create mode 100644 Documentation/devicetree/bindings/phy/socionext,uniphier-ahci-phy.yaml
create mode 100644 Documentation/devicetree/bindings/phy/ti,omap-usb2.yaml
create mode 100644 Documentation/devicetree/bindings/usb/cdns,usb3.yaml
delete mode 100644 Documentation/devicetree/bindings/usb/cdns-usb3.txt
create mode 100644 Documentation/devicetree/bindings/usb/intel,keembay-dwc3.yaml
create mode 100644 Documentation/devicetree/bindings/usb/mediatek,mt6360-tcpc.yaml
delete mode 100644 Documentation/devicetree/bindings/usb/ti,hd3ss3220.txt
create mode 100644 Documentation/devicetree/bindings/usb/ti,hd3ss3220.yaml
create mode 100644 drivers/phy/intel/phy-intel-keembay-emmc.c
rename drivers/phy/intel/{phy-intel-combo.c => phy-intel-lgm-combo.c} (100%)
rename drivers/phy/intel/{phy-intel-emmc.c => phy-intel-lgm-emmc.c} (100%)
create mode 100644 drivers/phy/phy-lgm-usb.c
rename drivers/{staging/media/phy-rockchip-dphy-rx0 => phy/rockchip}/phy-rockchip-dphy-rx0.c (99%)
create mode 100644 drivers/phy/socionext/phy-uniphier-ahci.c
create mode 100644 drivers/reset/reset-raspberrypi.c
delete mode 100644 drivers/staging/media/phy-rockchip-dphy-rx0/Kconfig
delete mode 100644 drivers/staging/media/phy-rockchip-dphy-rx0/Makefile
delete mode 100644 drivers/staging/media/phy-rockchip-dphy-rx0/TODO
create mode 100644 drivers/thunderbolt/acpi.c
create mode 100644 drivers/thunderbolt/debugfs.c
create mode 100644 drivers/usb/dwc2/drd.c
create mode 100644 drivers/usb/typec/qcom-pmic-typec.c
create mode 100644 drivers/usb/typec/stusb160x.c
create mode 100644 drivers/usb/typec/tcpm/tcpci_maxim.c
create mode 100644 drivers/usb/typec/tcpm/tcpci_mt6360.c
create mode 100644 include/dt-bindings/phy/phy-cadence-torrent.h
create mode 100644 include/dt-bindings/reset/raspberrypi,firmware-reset.h