[GIT PULL] USB patches for v4.4 merge window

From: Felipe Balbi
Date: Tue Oct 20 2015 - 14:44:16 EST


Hi Greg,

Here's the large gadget pull request for v4.4. All patches have been
in next for a while and should be safe to apply.

Let me know if you want any changes to this pull request.

cheers

The following changes since commit 9ffecb10283508260936b96022d4ee43a7798b4c:

Linux 4.3-rc3 (2015-09-27 07:50:08 -0400)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git tags/usb-for-v4.4

for you to fetch changes up to 81e9d14a53eb1abfbe6ac828a87a2deb4702b5f1:

usb: gadget: net2280: restore ep_cfg after defect7374 workaround (2015-10-19 09:25:53 -0500)

----------------------------------------------------------------
usb: patches for v4.4 merge window

This pull request is large with a total of 136 non-merge
commits. Because of its size, we will only describe the big things in
broad terms.

Many will be happy to know that dwc3 is now almost twice as fast after
some profiling and speed improvements. Also in dwc3, John Youn from
Synopsys added support for their new DWC USB3.1 IP Core and the HAPS
platform which can be used to validate it.

A series of patches from Robert Baldyga cleaned up uses of
ep->driver_data as a flag for "claimed endpoint" in favor of the new
ep->claimed flag.

Sudip Mukherjee fixed a ton of really old problems on the amd5536udc
driver. That should make a few people happy.

Heikki Krogerus worked on converting dwc3 to the unified device property
interface.

Together with these, there's a ton of non-critical fixes, typos and
stuff like that.

Signed-off-by: Felipe Balbi <balbi@xxxxxx>

----------------------------------------------------------------
Alan Stern (1):
usb: misc: usbtest: format the data pattern according to max packet size

Alexandre Belloni (1):
usb: gadget: at91_udc: move at91_udc_data in at91_udc.h

Antti SeppÃlà (1):
usb: dwc2: Use platform endianness when accessing registers

Bin Liu (2):
usb: musb: set the controller speed based on the config setting
usb: musb: dsps: control musb speed based on dts setting

Doug Anderson (1):
usb: dwc2: host: Fix use after free w/ simultaneous irqs

Douglas Anderson (1):
usb: dwc2: host: Protect PCGCTL with lock in dwc2_port_resume()

Felipe Balbi (12):
usb: dwc3: gadget: move trace_dwc3_ep_queue()
usb: dwc3: gadget: start requests as soon as they come
usb: dwc3: gadget: clear DWC3_PENDING_REQUEST when request is queued
usb: dwc3: gadget: improve ep_queue's error reporting
usb: gadget: mass_storage: allow for deeper queue lengths
usb: dwc2: rename all s3c_* to dwc2_*
usb: gadget: pch-udc: fix lock
usb: dwc3: gadget: start transfer on XFER_COMPLETE
usb: dwc3: gadget: use update transfer command
usb: dwc3: gadget: use Update Transfer from Xfer In Progress
usb: dwc3: gadget: remove unnecessary _irqsave()
Revert "usb: dwc3: gadget: remove unnecessary _irqsave()"

Felipe F. Tonello (1):
usb: gadget: f_midi: check for error on usb_ep_queue

Geliang Tang (1):
usb: gadget: fix a trivial typo

Gregory Herrero (22):
usb: dwc2: host: don't clear hprt0 status bits when exiting hibernation
usb: dwc2: host: create a function to handle port_resume
usb: dwc2: host: add flag to reflect bus state
usb: dwc2: host: enter hibernation during bus suspend
usb: dwc2: host: update hcd and lx_state during start/stop callbacks
usb: dwc2: host: avoid resetting lx_state to L3 during disconnect
usb: dwc2: host: ignore wakeup interrupt if hibernation supported
usb: dwc2: host: resume only if bus is suspended
usb: dwc2: host: reset frame number after suspend
usb: dwc2: host: disconnect hcd prior stopping it
usb: dwc2: host: disable interrupt during stop
usb: dwc2: host: clear pending interrupts prior hibernation
usb: dwc2: host: wait 3ms for controller stabilization
usb: dwc2: host: correctly dump urb isochronous descriptors
usb: dwc2: host: use correct frame number during qh init
usb: dwc2: host: kill remaining urbs using -ECONNRESET status
usb: dwc2: gadget: ensure lx_state corresponds to current state
usb: dwc2: gadget: don't modify pullup state in host mode
usb: dwc2: gadget: set op_state in vbus_session call
usb: dwc2: gadget: abort core init if core_reset fails
usb: dwc2: gadget: unmask idstschng interrupt only if controller supports it
usb: dwc2: gadget: exit hibernation before power down

Hans de Goede (1):
musb: sunxi: Make sunxi musb glue work without MUSB_PIO_ONLY

Heikki Krogerus (5):
usb: common: of_usb_get_maximum_speed to usb_get_maximum_speed
usb: dwc3: st: prepare the driver for generic usb_get_dr_mode function
usb: common: of_usb_get_dr_mode to usb_get_dr_mode
usb: dwc3: core: convert to unified device property interface
usb: dwc3: pci: passing forward the ACPI companion

Igor Kotrasinski (1):
usb: gadget: composite: fill bcdUSB for any gadget max speed

Ivan T. Ivanov (1):
usb: phy: qcom: Switch to new extcon framework API

John Youn (7):
usb: dwc3: pci: Add the Synopsys HAPS AXI Product ID
usb: dwc3: pci: Add the PCI Product ID for Synopsys USB 3.1
usb: dwc3: Support Synopsys USB 3.1 IP
usb: dwc3: pci: trivial: Formatting
usb: dwc3: pci: Add platform data for Synopsys HAPS
usb: dwc3: Add dis_enblslpm_quirk
usb: dwc3: pci: Set enblslpm quirk for Synopsys platforms

Krzysztof Opasiak (4):
usb: gadget: loopback: Fix show methods for attributes
usb: gadget: SourceSink: Fix show methods for attributes
usb: gadget: loopback: fix: Don't share qlen and buflen between instances
usb: gadget: loopback: Fix looping back logic implementation

Marek Szyprowski (5):
usb: dwc2: remove double call to dwc2_hsotg_of_probe
usb: dwc2: remove non-functional clock gating
usb: dwc2: fix unbalanced phy control
usb: dwc2: remove no longer needed init_mutex
usb: dwc2: refactor common low-level hw code to platform.c

Mian Yousaf Kaukab (12):
usb: dwc2: host: add disconnect interrupt to host only interrupts
usb: dwc2: gadget: initialize op_state for peripheral only configuration
usb: dwc2: force dr_mode in case of configuration mismatch
usb: dwc2: gadget: ignore stall check for ep0
usb: dwc2: gadget: print complete setup packet
usb: dwc2: gadget: stop current transfer on dequeue
usb: dwc2: gadget: kill ep0 requests before reinitializing core
usb: dwc2: gadget: only reset core after addressed state
usb: dwc2: gadget: handle reset interrupt before endpoint interrupts
usb: dwc2: exit hibernation on session request
usb: dwc2: fix duplicate argument warning
usb: gadget: net2280: restore ep_cfg after defect7374 workaround

Mike Looijmans (1):
usb: gadget: ether: Allow jumbo frames

Nikhil Badola (2):
Documentation: dt: dwc3: Add snps,quirk-frame-length-adjustment property
usb: dwc3: Add frame length adjustment quirk

Peter Chen (8):
usb: misc: usbtest: allocate size of urb array according to user parameter
usb: misc: usbtest: delete useless memset for urbs array
usb: misc: usbtest: using the same data format among write/compare/output
usb: gadget: f_sourcesink: format data pattern according to max packet size
tools: usb: testusb: change the help text
tools: usb: testusb: change the default value for length from 512 to 1024
usb: phy: change some comments
usb: misc: usbtest: add bulk queue test

Robert Baldyga (27):
usb: gadget: fix few outdated comments
usb: gadget: f_ncm: obtain cdev from function instead of driver_data
usb: gadget: epautoconf: add usb_ep_autoconfig_release() function
usb: gadget: introduce 'enabled' flag in struct usb_ep
usb: gadget: f_ecm: eliminate abuse of ep->driver data
usb: gadget: f_acm: eliminate abuse of ep->driver data
usb: gadget: f_eem: eliminate abuse of ep->driver data
usb: gadget: f_hid: eliminate abuse of ep->driver data
usb: gadget: f_loopback: eliminate abuse of ep->driver data
usb: gadget: f_mass_storage: eliminate abuse of ep->driver data
usb: gadget: f_midi: eliminate abuse of ep->driver data
usb: gadget: f_ncm: eliminate abuse of ep->driver data
usb: gadget: f_obex: eliminate abuse of ep->driver data
usb: gadget: f_phonet: eliminate abuse of ep->driver data
usb: gadget: f_printer: eliminate abuse of ep->driver data
usb: gadget: f_rndis: eliminate abuse of ep->driver data
usb: gadget: f_serial: eliminate abuse of ep->driver data
usb: gadget: f_sourcesink: eliminate abuse of ep->driver data
usb: gadget: f_subset: eliminate abuse of ep->driver data
usb: gadget: f_uac1: eliminate abuse of ep->driver data
usb: gadget: f_uac2: eliminate abuse of ep->driver data
usb: gadget: f_uvc: eliminate abuse of ep->driver data
usb: gadget: u_ether: eliminate abuse of ep->driver data
usb: gadget: u_serial: eliminate abuse of ep->driver data
usb: gadget: legacy: dbgp: eliminate abuse of ep->driver data
usb: gadget: legacy: tcm: eliminate abuse of ep->driver data
usb: gadget: f_sourcesink: fix function params handling

Roman Alyautdin (1):
usb: musb: core: add common method of getting vbus status

Roman Bacik (1):
usb: dwc2: gadget: parity fix in isochronous mode

Sekhar Nori (1):
usb: dwc3: support for pinctrl state change during system sleep

Sudip Mukherjee (13):
usb: gadget: amd5536udc: rewrite init_dma_pools
usb: gadget: amd5536udc: fix error path
usb: gadget: amd5536udc: use WARN_ON
usb: gadget: amd5536udc: use free_dma_pools
usb: gadget: amd5536udc: remove unnecessary conditions
usb: gadget: amd5536udc: remove forward declaration of udc_probe
usb: gadget: amd5536udc: remove forward declaration of udc_remote_wakeup
usb: gadget: amd5536udc: remove forward declaration of udc_create_dma_chain
usb: gadget: amd5536udc: remove forward declaration of udc_free_dma_chain
usb: gadget: amd5536udc: remove forward declaration of udc_pci_*
usb: gadget: amd5536udc: remove forward declaration of udc_basic_init
usb: gadget: amd5536udc: NULL comparison
usb: gadget: at91_udc: mention proper dependency

Ville SyrjÃlà (1):
Revert "usb: dwc3: gadget: drop unnecessary loop when cleaning up TRBs"

WEN Pingbo (1):
usb: gadget: dummy_hcd: replace timeval with timespec64

Yunzhi Li (1):
usb: dwc2: gadget: fix a memory use-after-free bug

Documentation/devicetree/bindings/usb/dwc3.txt | 5 +
arch/arm/mach-s3c64xx/mach-crag6410.c | 4 +-
arch/arm/mach-s3c64xx/mach-smartq.c | 4 +-
arch/arm/mach-s3c64xx/mach-smdk6410.c | 4 +-
arch/arm/plat-samsung/devs.c | 6 +-
drivers/usb/chipidea/core.c | 4 +-
drivers/usb/common/common.c | 59 +-
drivers/usb/dwc2/core.c | 478 ++++----
drivers/usb/dwc2/core.h | 107 +-
drivers/usb/dwc2/core_intr.c | 106 +-
drivers/usb/dwc2/debugfs.c | 72 +-
drivers/usb/dwc2/gadget.c | 1422 ++++++++++++------------
drivers/usb/dwc2/hcd.c | 346 ++++--
drivers/usb/dwc2/hcd.h | 15 +-
drivers/usb/dwc2/hcd_ddma.c | 10 +-
drivers/usb/dwc2/hcd_intr.c | 152 ++-
drivers/usb/dwc2/hcd_queue.c | 21 +-
drivers/usb/dwc2/hw.h | 1 +
drivers/usb/dwc2/platform.c | 236 +++-
drivers/usb/dwc3/core.c | 104 +-
drivers/usb/dwc3/core.h | 27 +
drivers/usb/dwc3/dwc3-pci.c | 39 +-
drivers/usb/dwc3/dwc3-st.c | 12 +-
drivers/usb/dwc3/gadget.c | 100 +-
drivers/usb/dwc3/platform_data.h | 3 +
drivers/usb/gadget/Kconfig | 2 +-
drivers/usb/gadget/composite.c | 6 +-
drivers/usb/gadget/epautoconf.c | 25 +-
drivers/usb/gadget/function/f_acm.c | 23 +-
drivers/usb/gadget/function/f_ecm.c | 31 +-
drivers/usb/gadget/function/f_eem.c | 16 +-
drivers/usb/gadget/function/f_hid.c | 12 +-
drivers/usb/gadget/function/f_loopback.c | 162 ++-
drivers/usb/gadget/function/f_mass_storage.c | 10 +-
drivers/usb/gadget/function/f_midi.c | 26 +-
drivers/usb/gadget/function/f_ncm.c | 29 +-
drivers/usb/gadget/function/f_obex.c | 10 +-
drivers/usb/gadget/function/f_phonet.c | 8 +-
drivers/usb/gadget/function/f_printer.c | 2 -
drivers/usb/gadget/function/f_rndis.c | 24 +-
drivers/usb/gadget/function/f_serial.c | 10 +-
drivers/usb/gadget/function/f_sourcesink.c | 167 ++-
drivers/usb/gadget/function/f_subset.c | 10 +-
drivers/usb/gadget/function/f_uac1.c | 4 -
drivers/usb/gadget/function/f_uac2.c | 11 -
drivers/usb/gadget/function/f_uvc.c | 42 +-
drivers/usb/gadget/function/u_ether.c | 11 +-
drivers/usb/gadget/function/u_serial.c | 5 -
drivers/usb/gadget/legacy/dbgp.c | 18 +-
drivers/usb/gadget/legacy/tcm_usb_gadget.c | 18 -
drivers/usb/gadget/udc/Kconfig | 2 +-
drivers/usb/gadget/udc/amd5536udc.c | 609 +++++-----
drivers/usb/gadget/udc/amd5536udc.h | 5 +-
drivers/usb/gadget/udc/at91_udc.h | 8 +
drivers/usb/gadget/udc/dummy_hcd.c | 6 +-
drivers/usb/gadget/udc/net2280.c | 2 +-
drivers/usb/gadget/udc/pch_udc.c | 10 +-
drivers/usb/misc/usbtest.c | 156 ++-
drivers/usb/musb/musb_core.c | 29 +-
drivers/usb/musb/musb_core.h | 2 +-
drivers/usb/musb/musb_dsps.c | 15 +-
drivers/usb/musb/sunxi.c | 14 +-
drivers/usb/phy/phy-msm-usb.c | 2 +-
drivers/usb/phy/phy-qcom-8x16-usb.c | 21 +-
drivers/usb/phy/phy-tegra-usb.c | 2 +-
include/linux/platform_data/atmel.h | 9 -
include/linux/platform_data/s3c-hsotg.h | 10 +-
include/linux/usb/ch9.h | 11 +-
include/linux/usb/gadget.h | 29 +-
include/linux/usb/musb.h | 2 +-
include/linux/usb/of.h | 12 -
include/linux/usb/otg.h | 9 +
include/linux/usb/phy.h | 8 +-
tools/usb/testusb.c | 10 +-
74 files changed, 2747 insertions(+), 2255 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/