[GIT PULL] USB driver patches for 4.8-rc1

From: Greg KH
Date: Sun Jul 24 2016 - 18:18:54 EST


The following changes since commit a99cde438de0c4c0cecc1d1af1a55a75b10bfdef:

Linux 4.7-rc6 (2016-07-03 23:01:00 -0700)

are available in the git repository at:

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

for you to fetch changes up to cb42b63d893d8d22d1739ddea0d86b10fd921aac:

cdc-acm: beautify probe() (2016-07-18 08:46:57 -0700)

----------------------------------------------------------------
USB update for 4.8-rc1

Here's the big USB driver update for 4.8-rc1. Lots of the normal stuff
in here, musb, gadget, xhci, and other updates and fixes. All of the
details are in the shortlog.

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

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

----------------------------------------------------------------
Alexander Popov (1):
usbip: don't call stub_device_reset() during stub_disconnect()

Alexandre Belloni (1):
usb: gadget: udc: atmel: Also get regmap for at91sam9x5-pmc

Arnd Bergmann (4):
usb: pxa27x_udc: remove unused function argument
usb: phy: move msm_hsusb.h into driver
USB: dwc2-usb: add USB_GADGET dependency
xhci: free the correct ring

Baolin Wang (2):
usb: dwc3: gadget: Add the suspend state checking when stopping gadget
dwc3: gadget: Implement the suspend entry event handler

Ben Dooks (3):
usb: renesas_usbhs: make usbhs_write32() static
usb: renesas_usbhs: make usbhs_write32() static
usb: musb: sunxi: make unexported symbols static

Bin Liu (10):
usb: musb: add tracepoints support for debugging
usb: musb: switch dev_dbg to tracepoints
usb: musb: dsps: use musb register read/write wrappers instead
usb: musb: add tracepoints for register access
usb: musb: add tracepoints to dump interrupt events
usb: musb: host: add urb tracepoints
usb: musb: gadget: add usb-request tracepoints
usb: musb: cleanup cppi_dma header
usb: musb: cppi41: move struct cppi41_dma_channel to header
usb: musb: cppi41: add dma channel tracepoints

Colin Ian King (1):
usb: gadget: bdc: fix spelling mistake: "allocted" -> "allocated"

Dan Carpenter (1):
usb: gadget: f_fs: check for allocation failure

David Lechner (3):
phy: Add set_mode callback
dt-bindings: Add bindings for phy-da8xx-usb
phy: da8xx-usb: new driver for DA8xx SoC USB PHY

Felipe Balbi (48):
usb: gadget: storage: get rid of fsg_num_buffers_validate()
usb: gadget: storage: increase maximum storage num buffers
usb: dwc3: gadget: re-factor ->udc_start and ->udc_stop
usb: dwc3: gadget: fix gadget suspend/resume
usb: dwc3: core: get rid of DWC3_PM_OPS macro
usb: dwc3: gadget: prepare TRBs on update transfers too
usb: dwc3: gadget: simplify __dwc3_gadget_kick_transfer()
usb: dwc3: gadget: rely on sg_is_last() and list_is_last()
usb: dwc3: gadget: remove udelay(1) when sending ep cmds
usb: dwc3: gadget: return 0 if we try to Wakeup in superspeed
usb: dwc3: gadget: split __dwc3_gadget_kick_transfer()
usb: dwc3: gadget: initialize NUMP based on RxFIFO Size
usb: dwc3: gadget: pass dep as argument to endpoint command
usb: dwc3: gadget: add a pointer to endpoint registers
usb: dwc3: core: move fladj to dwc3 structure
usb: dwc3: core: re-factor init and exit paths
usb: dwc3: core: simplify suspend/resume operations
usb: dwc3: gadget: hold gadget IRQ in dwc->irq_gadget
usb: dwc3: gadget: only resume USB2 PHY in <=HIGHSPEED
usb: dwc3: gadget: fix for possible endpoint disable race
usb: dwc3: implement runtime PM
usb: dwc3: pci: add Power Management dummy hooks
usb: dwc3: gadget: add a per-endpoint request queue lock
usb: dwc3: gadget: no more tracking endpoint type with its name
usb: dwc3: trace: fully decode IRQ events
usb: dwc3: gadget: fix trace output when command fails
usb: dwc3: gadget: loop while (timeout)
usb: dwc3: trace: print ep cmd status with a single trace
usb: dwc3: gadget: single return point on generic commands
usb: dwc3: gadget: remove udelay() from generic cmd
usb: dwc3: gadget: improve gcmd trace
usb: dwc3: remove trailing newline from dwc3_trace
usb: dwc3: gadget: update transfer needs transfer resource
usb: dwc3: gadget: keep track of allocated and queued reqs
usb: dwc3: gadget: halt and stop based HWO bit
usb: dwc3: gadget: use allocated/queued reqs for LST bit
usb: dwc3: gadget: disable XFER_NOT_READY
usb: dwc3: gadget: start Bulk endpoints more frequently
usb: dwc3: gadget: decrement trbs_left for each sg entry
usb: gadget: move gadget API functions to udc-core
usb: gadget: add tracepoints to the gadget API
usb: dwc3: gadget: rename 'ignore' argument to 'modify'
usb: dwc3: pci: add dr-mode for Intel dwc3
usb: dwc3: core: fixup dr_mode fallback selection
usb: dwc3: gadget: remove udelay() from run_stop()
usb: dwc3: gadget: avoid while(1) in run_stop()
usb: dwc3: gadget: simplify run_stop() break condition
usb: dwc3: gadget: issue ENDTRANSFER conditional on resource_index

Greg Kroah-Hartman (6):
Merge 4.7-rc4 into usb-next
Revert "usb: ohci-at91: Forcibly suspend ports while USB suspend"
Merge tag 'usb-for-v4.8' of git://git.kernel.org/.../balbi/usb into usb-next
Merge tag 'usb-v4.8-rc1' of git://git.kernel.org/.../peter.chen/usb into usb-next
Merge 4.7-rc6 into usb-next
Merge tag 'phy-for-4.8-rc1' of git://git.kernel.org/.../kishon/linux-phy into usb-testing

Hans de Goede (5):
ohci-platform: Add support for controllers with multiple reset lines
ehci-platform: Add support for shared reset controllers
USB: Fix of_usb_get_dr_mode_by_phy with a shared phy block
phy-sun4i-usb: Add workaround for missing Vbus det interrupts on A31
usb: musb: sunxi: Simplify dr_mode handling

Heikki Krogerus (5):
usb: dwc3: pci: use build-in properties instead of platform data
usb: dwc3: remove handling of platform data
xhci: plat: adapt to unified device property interface
usb: dwc3: host: use build-in property instead of platform data
xhci: get rid of platform data

Heiko Stuebner (1):
phy: rockchip-usb: should be a child device of the GRF

Iago Abal (1):
usb: gadget: pch_udc: reorder spin_[un]lock to avoid deadlock

Janusz Dziedzic (1):
usb: dwc3: trace: pretty-print TRB's ctrl field

Jiancheng Xue (1):
usb: ehci-platform: add reset controller number in struct ehci_platform_priv

Jisheng Zhang (1):
dt-bindings: ci-hdrc-usb2: s/gadget-itc-setting/itc-setting in example

John Youn (13):
usb: dwc3: ep0: Fix endianness of wIndex passed to dwc3_wIndex_to_dep
usb: dwc3: ep0: Use the correct type for SET_SEL data
usb: dwc3: gadget: Fix usage of bitwise operator
usb: dwc3: Endianness issue on dwc3_log_ctrl
usb: dwc3: gadget: Simplify skipping of link TRBs
usb: dwc3: gadget: Initialize the TRB ring
usb: dwc3: gadget: Don't prepare TRBs if no space
usb: dwc3: gadget: Account for max size in TRB space
usb: dwc3: gadget: Account for link TRB in TRBs left
usb: dwc3: gadget: Handle TRB index 0 when full or empty
usb: dwc3: gadget: Fix truncated cast issue
usb: dwc3: Use the correct speed macros for DSTS/DCFG
usb: dwc3: Fix DWC3_USB31_REVISION_110A definition

Joseph Salisbury (1):
usb: quirks: Add no-lpm quirk for Elan

Kishon Vijay Abraham I (2):
phy: xgene: rename "enum phy_mode" to "enum xgene_phy_mode"
Merge tag 'phy-set-mode-v2' of git://git.kernel.org/.../kishon/linux-phy into next

Konrad Leszczynski (1):
usb: dwc3: fix for the isoc transfer EP_BUSY flag

Krzysztof Kozlowski (2):
usb: misc: usb3503: Set platform data
usb: misc: usb3503: Clean up on driver unbind

Mathias Nyman (11):
xhci: rename ep_ring variable in queue_bulk_tx(), no functionalÂchange
xhci: properly prepare zero packet TD after normal bulk TD.
xhci: use boolean to indicate last trb in td remainder calculation
xhci: don't rely on precalculated value of needed trbs in the enqueue loop
xhci: align the last trb before link if it is easily splittable.
xhci: TD-fragment, align the unsplittable case with a bounce buffer
xhci: clean up event ring checks from inc_enq()
xhci: use and add separate function for checking for link trbs
xhci: rework inc_deq() and fix off by one error.
xhci: remove enqueue_is_link() helper
xhci: rename and simplify last_trb_on_last_seg() helper

Michal Nazarewicz (6):
usb: gadget: fix unused-but-set-variale warnings
usb: gadget: m66592: fix unused-but-set-variable warnings
usb: gadget: r8a66597: fix unused-but-set-variable warnings
usb: gadget: mv_u3d: fix unused-but-set-variable warnings
usb: gadget: f_fs: printk error when excess data is dropped on read
usb: gadget: f_fs: buffer data from âoversizedâ OUT requests

Nicolas Iooss (1):
usb: dwc2: add printf attribute to cat_printf()

Oliver Neukum (5):
usbnet: move the CDC parser into USB core
cdc-acm: use the common parser
cdc-acm: cleanup error handling
cdc-wdm: use the common CDC parser
cdc-acm: beautify probe()

Paul Gortmaker (1):
usb: early/ehci-dbgp: make it explicitly non-modular

Peter Chen (1):
usb: chipidea: Kconfig: improve Kconfig help text

Peter Griffin (2):
phy: phy-qcom-ufs-qmp-20nm: Remove site specific OOM error message
phy: phy-qcom-ufs-qmp-14nm: Remove site specific OOM error message

Roger Quadros (7):
usb: dwc3: omap: use request_threaded_irq()
usb: dwc3: omap: Mark the interrupt handler as shared
usb: dwc3: omap: Don't set POWERPRESENT
usb: dwc3: omap: Pass VBUS and ID events transparently
usb: dwc3: fix runtime PM in error path
usb: dwc3: core: cleanup IRQ resources
usb: dwc3: host: Fix broken XHCI host

Sandhya Bankar (4):
usb: cdc-acm: Space prohibited before close parenthesis ')'.
usb: microtek: Use "foo *bar" instead of "foo * bar".
usb: phy: omap-otg: Space required after that ','.
usb: Use (foo *) instead of (foo*).

Sudip Mukherjee (2):
usb: usbip: remove null check
phy: rockhip-usb: use devm_add_action_or_reset()

Tim Harvey (1):
usb: gadget: net2280: add USB2380 support

Vardan Mikayelyan (13):
usb: dwc2: Add missing register field definitions
usb: dwc2: gadget: Remove unnecessary line
usb: dwc2: gadget: Remove unnecessary code
usb: dwc2: gadget: Corrected field names
usb: dwc2: gadget: Fix transfer stop programming for out endpoint
usb: dwc2: gadget: Add dwc2_gadget_incr_frame_num()
usb: dwc2: gadget: Corrected interval calculation
usb: dwc2: gadget: Add dwc2_gadget_read_ep_interrupts function
usb: dwc2: gadget: Add dwc2_gadget_start_next_request function
usb: dwc2: gadget: Add OUTTKNEPDIS and NAKINTRPT handlers
usb: dwc2: gadget: Add Incomplete ISO IN/OUT Interrupt handlers
usb: dwc2: gadget: Add EP disabled interrupt handler
usb: dwc2: gadget: Final fixes for BDMA ISOC

Wenyou Yang (2):
usb: ohci-at91: Forcibly suspend ports while USB suspend
ARM: at91/dt: sama5d2: Use new compatible for ohci node

William Wu (1):
usb: dwc3: add DWC3_GUCTL1 reg for debug

Yoshihiro Shimoda (4):
usb: renesas_usbhs: show error code when probe failed
usb: renesas_usbhs: fix NULL pointer dereference in xfer_work()
usb: renesas_usbhs: protect the CFIFOSEL setting in usbhsg_ep_enable()
phy: rcar-gen3-usb2: fix mutex_lock calling in interrupt

.../devicetree/bindings/phy/phy-da8xx-usb.txt | 40 +
.../devicetree/bindings/phy/rockchip-usb-phy.txt | 27 +-
.../devicetree/bindings/usb/ci-hdrc-usb2.txt | 2 +-
Documentation/devicetree/bindings/usb/usb-ohci.txt | 2 +-
arch/arm/boot/dts/sama5d2.dtsi | 2 +-
drivers/net/usb/usbnet.c | 138 --
drivers/phy/Kconfig | 11 +
drivers/phy/Makefile | 1 +
drivers/phy/phy-core.c | 15 +
drivers/phy/phy-da8xx-usb.c | 245 ++++
drivers/phy/phy-qcom-ufs-qmp-14nm.c | 1 -
drivers/phy/phy-qcom-ufs-qmp-20nm.c | 1 -
drivers/phy/phy-rcar-gen3-usb2.c | 26 +-
drivers/phy/phy-rockchip-usb.c | 23 +-
drivers/phy/phy-sun4i-usb.c | 34 +-
drivers/phy/phy-xgene.c | 4 +-
drivers/power/Kconfig | 1 +
drivers/usb/chipidea/Kconfig | 5 +-
drivers/usb/class/cdc-acm.c | 103 +-
drivers/usb/class/cdc-wdm.c | 30 +-
drivers/usb/common/common.c | 26 +-
drivers/usb/core/message.c | 153 ++
drivers/usb/core/quirks.c | 3 +
drivers/usb/dwc2/Kconfig | 1 +
drivers/usb/dwc2/core.h | 8 +-
drivers/usb/dwc2/gadget.c | 574 ++++++--
drivers/usb/dwc2/hcd_queue.c | 3 +-
drivers/usb/dwc2/hw.h | 14 +
drivers/usb/dwc3/core.c | 388 ++---
drivers/usb/dwc3/core.h | 59 +-
drivers/usb/dwc3/debug.h | 140 +-
drivers/usb/dwc3/debugfs.c | 191 +--
drivers/usb/dwc3/dwc3-omap.c | 53 +-
drivers/usb/dwc3/dwc3-pci.c | 161 ++-
drivers/usb/dwc3/ep0.c | 26 +-
drivers/usb/dwc3/gadget.c | 863 ++++++-----
drivers/usb/dwc3/gadget.h | 4 +-
drivers/usb/dwc3/host.c | 61 +-
drivers/usb/dwc3/io.h | 7 +-
drivers/usb/dwc3/platform_data.h | 53 -
drivers/usb/dwc3/trace.h | 96 +-
drivers/usb/early/ehci-dbgp.c | 4 +-
drivers/usb/gadget/Kconfig | 2 +-
drivers/usb/gadget/config.c | 2 +-
drivers/usb/gadget/function/f_fs.c | 192 ++-
drivers/usb/gadget/function/f_mass_storage.c | 22 +-
drivers/usb/gadget/function/u_serial.c | 3 +-
drivers/usb/gadget/legacy/g_ffs.c | 15 +-
drivers/usb/gadget/udc/Kconfig | 4 +-
drivers/usb/gadget/udc/Makefile | 5 +
drivers/usb/gadget/udc/amd5536udc.c | 9 +-
drivers/usb/gadget/udc/atmel_usba_udc.c | 2 +
drivers/usb/gadget/udc/bdc/bdc_cmd.c | 3 -
drivers/usb/gadget/udc/bdc/bdc_ep.c | 6 +-
drivers/usb/gadget/udc/core.c | 1523 ++++++++++++++++++++
drivers/usb/gadget/udc/dummy_hcd.c | 5 -
drivers/usb/gadget/udc/m66592-udc.c | 24 +-
drivers/usb/gadget/udc/mv_u3d_core.c | 23 +-
drivers/usb/gadget/udc/mv_udc_core.c | 9 +-
drivers/usb/gadget/udc/net2272.c | 4 -
drivers/usb/gadget/udc/net2280.c | 51 +-
drivers/usb/gadget/udc/net2280.h | 1 +
drivers/usb/gadget/udc/pch_udc.c | 36 +-
drivers/usb/gadget/udc/pxa27x_udc.c | 9 +-
drivers/usb/gadget/udc/r8a66597-udc.c | 24 +-
drivers/usb/gadget/udc/trace.c | 18 +
drivers/usb/gadget/udc/trace.h | 298 ++++
drivers/usb/gadget/udc/udc-core.c | 800 ----------
drivers/usb/gadget/udc/udc-xilinx.c | 3 -
drivers/usb/host/Kconfig | 2 +-
drivers/usb/host/ehci-platform.c | 37 +-
drivers/usb/host/ohci-platform.c | 43 +-
drivers/usb/host/xhci-mem.c | 74 +-
drivers/usb/host/xhci-plat.c | 8 +-
drivers/usb/host/xhci-ring.c | 458 +++---
drivers/usb/host/xhci.c | 5 +-
drivers/usb/host/xhci.h | 10 +-
drivers/usb/image/microtek.h | 6 +-
drivers/usb/misc/usb3503.c | 25 +
drivers/usb/musb/Makefile | 5 +-
drivers/usb/musb/cppi_dma.c | 51 +-
drivers/usb/musb/cppi_dma.h | 31 +-
drivers/usb/musb/musb_core.c | 87 +-
drivers/usb/musb/musb_cppi41.c | 47 +-
drivers/usb/musb/musb_debug.h | 2 +
drivers/usb/musb/musb_dsps.c | 112 +-
drivers/usb/musb/musb_gadget.c | 122 +-
drivers/usb/musb/musb_gadget_ep0.c | 22 +-
drivers/usb/musb/musb_host.c | 133 +-
drivers/usb/musb/musb_trace.c | 33 +
drivers/usb/musb/musb_trace.h | 371 +++++
drivers/usb/musb/musb_virthub.c | 24 +-
drivers/usb/musb/musbhsdma.c | 10 +-
drivers/usb/musb/sunxi.c | 74 +-
drivers/usb/phy/Kconfig | 11 +-
drivers/usb/phy/phy-am335x.c | 2 +-
drivers/usb/phy/phy-msm-usb.c | 178 ++-
drivers/usb/phy/phy-omap-otg.c | 2 +-
drivers/usb/renesas_usbhs/common.c | 2 +-
drivers/usb/renesas_usbhs/fifo.c | 18 +-
drivers/usb/renesas_usbhs/mod_gadget.c | 9 +-
drivers/usb/renesas_usbhs/rcar3.c | 2 +-
drivers/usb/usbip/usbip_common.h | 2 +-
drivers/usb/usbip/vudc_sysfs.c | 2 +-
include/linux/phy/phy.h | 17 +
include/linux/usb/gadget.h | 589 +-------
include/linux/usb/msm_hsusb.h | 200 ---
include/linux/usb/of.h | 4 +-
include/linux/usb/xhci_pdriver.h | 27 -
109 files changed, 5790 insertions(+), 3759 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt
create mode 100644 drivers/phy/phy-da8xx-usb.c
delete mode 100644 drivers/usb/dwc3/platform_data.h
create mode 100644 drivers/usb/gadget/udc/core.c
create mode 100644 drivers/usb/gadget/udc/trace.c
create mode 100644 drivers/usb/gadget/udc/trace.h
delete mode 100644 drivers/usb/gadget/udc/udc-core.c
create mode 100644 drivers/usb/musb/musb_trace.c
create mode 100644 drivers/usb/musb/musb_trace.h
delete mode 100644 include/linux/usb/msm_hsusb.h
delete mode 100644 include/linux/usb/xhci_pdriver.h