Hi Greg, here's the big Gadget pull request. It contains 146 non-merge commits this time around. All patches have been soaking in next for quite a while and have also been tested with the platforms I have around. Let me know if you want anything to be changed. cheers The following changes since commit cbfe8fa6cd672011c755c3cd85c9ffd4e2d10a6f: Linux 4.2-rc4 (2015-07-26 12:26:21 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git tags/usb-for-v4.3 for you to fetch changes up to 2f3cc24f07b8bfe8302a46ceb1ed58cde62cbd09: usb: musb: gadget: fix build break by adding missing 'break' (2015-08-07 09:25:46 -0500) ---------------------------------------------------------------- usb: patches for v4.3 merge window New support for Allwinne SoC on the MUSB driver has been added to the list of glue layers. MUSB also got support for building all DMA engines in one binary; this will be great for distros. DWC3 now has no trace of dev_dbg()/dev_vdbg() usage. We will rely solely on tracing to debug DWC3. There was also a fix for memory corruption with EP0 when maxpacket size transfers are > 512 bytes. Robert's EP capabilities flags is making EP selection a lot simpler. UDCs are now required to set these flags up when adding endpoints to the framework. Other than these, we have the usual set of miscelaneous cleanups and minor fixes. Signed-off-by: Felipe Balbi <balbi@xxxxxx> ---------------------------------------------------------------- Chanwoo Choi (5): usb: dwc3: omap: Replace deprecated API of extcon usb: phy: omap-otg: Replace deprecated API of extcon usb: phy: tahvo: Use devm_extcon_dev_[allocate|register]() and replace deprecated API usb: renesas_usbhs: Replace deprecated API of extcon usb: phy: msm-usb: Replace deprecated API of extcon Dan Carpenter (2): usb: gadget: fotg210-udc: remove duplicate conditions usb: gadget: m66592-udc: forever loop in set_feature() Diego Viola (1): usb: gadget: composite.c: i18n is not an acronym Felipe Balbi (15): usb: dwc2: gadget: use | instead of + for bitmasks usb: dwc3: omap: drop dev_dbg() usage usb: dwc3: keystone: convert dev_dbg() to dev_err() usb: dwc3: exynos: switch dev_dbg() to dev_info() usb: dwc3: qcom: switch dev_dbg() to dev_info() usb: dwc3: st: remove two unnecessary messages usb: dwc3: drop CONFIG_USB_DWC3_DEBUG usb: dwc3: core: remove unnecessary dev_warn() usb: dwc3: gadget: add a trace when disabling EPs usb: dwc3: gadget: defer endpoint name change usb: gadget: f_uac2: fix build warning usb: musb: gadget: remove remaining DMA ifdeferry usb: musb: cppi41: allow it to work again usb: gadget: f_mass_storage: add mising <linux/uaccess.h> usb: gadget: legacy: nokia: add CONFIG_BLOCK dependency Fupan Li (1): usb: gadget: f_printer: fix deadlock caused by nested spinlock Hans de Goede (3): usb: musb: sunxi: Add support for the Allwinner sunxi musb controller usb: musb: sunxi: Add support for musb controller in A31 SoC usb: musb: sunxi: Add support for musb controller in A33 SoC Ivan T. Ivanov (2): usb: phy: qcom: New APQ8016/MSM8916 USB transceiver driver usb: phy: msm: Add D+/D- lines route control Kishon Vijay Abraham I (6): usb: dwc3: ep0: Fix mem corruption on OUT transfers of more than 512 bytes usb: dwc3: ep0: use _roundup_ to calculate the transfer size usb: dwc3: ep0: preparation for handling non maxpacket aligned transfers > 512 usb: dwc3; ep0: Modify _dwc3_ep0_start_trans_ API to take 'chain' parameter usb: dwc3: ep0: Add chained TRB support usb: dwc3: ep0: handle non maxpacket aligned transfers > 512 Krzysztof Opasiak (7): usb: gadget: loopback: Remove out-of-date comment usb: gadget: SourceSink: Remove out-of-date comment usb: gadget: mass_storage: Free buffers if create lun fails usb: gadget: mass_storage: Place EXPORT_SYMBOL_GPL() after func definition usb: gadget: storage-common: Set FSG_MAX_LUNS to 16 usb: gadget: mass_storage: Fix freeing luns sysfs implementation usb: gadget: mass_storage: Use static array for luns Li Jun (20): usb: otg: add usb_otg_caps structure for otg capabilities doc: dt-binding: usb: add otg related properties usb: common: add API to update usb otg capabilities by device tree usb: chipidea: set usb otg capabilities usb: chipidea: update ci_otg_is_fsm_mode conditions usb: gadget: add usb otg descriptor allocate and init interface usb: gadget: configfs: allocate and init otg descriptor by otg capabilities usb: gadget: ether: allocate and init otg descriptor by otg capabilities usb: gadget: acm_ms: allocate and init otg descriptor by otg capabilities usb: gadget: audio: allocate and init otg descriptor by otg capabilities usb: gadget: cdc2: allocate and init otg descriptor by otg capabilities usb: gadget: g_ffs: allocate and init otg descriptor by otg capabilities usb: gadget: hid: allocate and init otg descriptor by otg capabilities usb: gadget: mass_storage: allocate and init otg descriptor by otg capabilities usb: gadget: multi: allocate and init otg descriptor by otg capabilities usb: gadget: ncm: allocate and init otg descriptor by otg capabilities usb: gadget: printer: allocate and init otg descriptor by otg capabilities usb: gadget: serial: allocate and init otg descriptor by otg capabilities usb: gadget: zero: allocate and init otg descriptor by otg capabilities usb: chipidea: add ci->is_otg condition for otg judgement Macpaul Lin (4): usb: add usb_otg20_descriptor for OTG 2.0 and above usb: add USB_OTG_ADP definition usb: add usb_otg_caps to usb_gadget structure. usb: gadget: composite: add USB_DT_OTG request handling Pali Rohár (1): usb: gadget: nokia: Add mass storage driver to g_nokia Pengyu Ma (1): usb: gadget: udc: fix spin_lock in pch_udc Peter Chen (4): usb: gadget: f_uac2: finalize wMaxPacketSize according to bandwidth Doc: ABI: testing: configfs-usb-gadget-loopback Doc: ABI: testing: configfs-usb-gadget-sourcesink doc: usb: gadget-testing: using the updated testusb.c Phil Edworthy (1): usb: renesas_usbhs: Allow an OTG PHY driver to provide VBUS Robert Baldyga (64): usb: gadget: add usb_gadget_activate/deactivate functions usb: composite: fix usb_function_activate/deactivate functions usb: composite: add bind_deactivated flag to usb_function usb: gadget: f_uvc: use bind_deactivated flag usb: gadget: f_obex: use bind_deactivated flag usb: gadget: add 'quirk_altset_not_supp' to usb_gadget usb: gadget: add 'quirk_stall_not_supp' to usb_gadget usb: gadget: add 'quirk_zlp_not_supp' to usb_gadget usb: gadget: f_mass_storage: check quirk instead of UDC name usb: gadget: f_ecm/f_ncm: check quirk instead of UDC name usb: gadget: apply generic altsetting support check mechanism usb: gadget: ffs: call functionfs_unbind() if _ffs_func_bind() fails usb: gadget: midi: avoid redundant f_midi_set_alt() call usb: isp1760: udc: add missing usb_ep_set_maxpacket_limit() staging: emxx_udc: add missing usb_ep_set_maxpacket_limit() usb: gadget: atmel_usba_udc: add missing ret value check usb: gadget: encapsulate endpoint claiming mechanism usb: gadget: add endpoint capabilities flags usb: gadget: add endpoint capabilities helper macros staging: emxx_udc: add ep capabilities support usb: chipidea: udc: add ep capabilities support usb: dwc2: gadget: add ep capabilities support usb: dwc3: gadget: add ep capabilities support usb: gadget: amd5536udc: add ep capabilities support usb: gadget: at91_udc: add ep capabilities support usb: gadget: bcm63xx_udc: add ep capabilities support usb: gadget: bdc: add ep capabilities support usb: gadget: dummy-hcd: add ep capabilities support usb: gadget: fotg210-udc: add ep capabilities support usb: gadget: fsl_qe_udc: add ep capabilities support usb: gadget: fsl_udc_core: add ep capabilities support usb: gadget: fusb300_udc: add ep capabilities support usb: gadget: goku_udc: add ep capabilities support usb: gadget: gr_udc: add ep capabilities support usb: gadget: lpc32xx_udc: add ep capabilities support usb: gadget: m66592-udc: add ep capabilities support usb: gadget: mv_u3d_core: add ep capabilities support usb: gadget: mv_udc_core: add ep capabilities support usb: gadget: net2272: add ep capabilities support usb: gadget: net2280: add ep capabilities support usb: gadget: omap_udc: add ep capabilities support usb: gadget: pch_udc: add ep capabilities support usb: gadget: pxa25x_udc: add ep capabilities support usb: gadget: pxa27x_udc: add ep capabilities support usb: gadget: r8a66597-udc: add ep capabilities support usb: gadget: s3c-hsudc: add ep capabilities support usb: gadget: s3c2410_udc: add ep capabilities support usb: gadget: udc-xilinx: add ep capabilities support usb: isp1760: udc: add ep capabilities support usb: musb: gadget: add ep capabilities support usb: renesas: gadget: add ep capabilities support usb: gadget: atmel_usba_udc: add ep capabilities support usb: gadget: epautoconf: add endpoint capabilities flags verification usb: gadget: epautoconf: remove pxa quirk from ep_matches() usb: gadget: epautoconf: remove ep and desc configuration from ep_matches() usb: gadget: epautoconf: rework ep_matches() function usb: gadget: add 'ep_match' callback to usb_gadget_ops usb: gadget: move ep_matches() from epautoconf to udc-core usb: gadget: move find_ep() from epautoconf to udc-core usb: gadget: net2280: add net2280_match_ep() function usb: gadget: goku_udc: add goku_match_ep() function usb: musb: gadget: add musb_match_ep() function usb: gadget: remove gadget_chips.h usb: musb: gadget: fix build break by adding missing 'break' Sanjay Singh Rawat (1): usb: gadget: f_mass_storage: stop thread in bind failure case Saurabh Karajgaonkar (3): usb: phy: phy-mxs-usb: Simplify return statement usb: phy: phy-keystone: Simplify return statement usb: musb: musb_dsps: Simplify return statement Tony Lindgren (1): usb: musb: Allow building in all the DMA code Uwe Kleine-König (2): usb: dwc3: pci: make better use of gpiod API usb: pass flags parameter to gpiod_get functions Vaishali Thakkar (2): usb: gadget: Convert use of __constant_cpu_to_le16 to cpu_to_le16 usb: udc: Convert use of __constant_cpu_to_leXX to cpu_to_leXX .../ABI/testing/configfs-usb-gadget-loopback | 2 +- .../ABI/testing/configfs-usb-gadget-sourcesink | 2 +- .../bindings/usb/allwinner,sun4i-a10-musb.txt | 29 + Documentation/devicetree/bindings/usb/generic.txt | 15 + .../devicetree/bindings/usb/msm-hsusb.txt | 4 + .../devicetree/bindings/usb/qcom,usb-8x16-phy.txt | 76 +++ Documentation/usb/gadget-testing.txt | 7 +- drivers/staging/emxx_udc/emxx_udc.c | 76 ++- drivers/usb/chipidea/ci.h | 5 +- drivers/usb/chipidea/core.c | 15 + drivers/usb/chipidea/debug.c | 1 + drivers/usb/chipidea/udc.c | 21 +- drivers/usb/common/common.c | 56 ++ drivers/usb/dwc2/gadget.c | 15 +- drivers/usb/dwc3/Kconfig | 7 - drivers/usb/dwc3/Makefile | 2 - drivers/usb/dwc3/core.c | 2 - drivers/usb/dwc3/dwc3-exynos.c | 2 +- drivers/usb/dwc3/dwc3-keystone.c | 2 +- drivers/usb/dwc3/dwc3-omap.c | 75 +- drivers/usb/dwc3/dwc3-pci.c | 26 +- drivers/usb/dwc3/dwc3-qcom.c | 4 +- drivers/usb/dwc3/dwc3-st.c | 4 - drivers/usb/dwc3/ep0.c | 92 ++- drivers/usb/dwc3/gadget.c | 57 +- drivers/usb/gadget/composite.c | 41 +- drivers/usb/gadget/config.c | 56 ++ drivers/usb/gadget/configfs.c | 29 +- drivers/usb/gadget/epautoconf.c | 282 ++------ drivers/usb/gadget/function/f_acm.c | 1 - drivers/usb/gadget/function/f_ecm.c | 4 +- drivers/usb/gadget/function/f_fs.c | 8 +- drivers/usb/gadget/function/f_loopback.c | 5 - drivers/usb/gadget/function/f_mass_storage.c | 164 ++--- drivers/usb/gadget/function/f_mass_storage.h | 6 +- drivers/usb/gadget/function/f_midi.c | 4 + drivers/usb/gadget/function/f_ncm.c | 5 +- drivers/usb/gadget/function/f_obex.c | 22 +- drivers/usb/gadget/function/f_printer.c | 7 +- drivers/usb/gadget/function/f_serial.c | 1 - drivers/usb/gadget/function/f_sourcesink.c | 6 - drivers/usb/gadget/function/f_uac2.c | 31 +- drivers/usb/gadget/function/f_uvc.c | 7 +- drivers/usb/gadget/function/storage_common.h | 2 +- drivers/usb/gadget/function/u_ether.h | 4 +- drivers/usb/gadget/function/u_uac1.h | 2 - drivers/usb/gadget/legacy/Kconfig | 2 + drivers/usb/gadget/legacy/acm_ms.c | 41 +- drivers/usb/gadget/legacy/audio.c | 41 +- drivers/usb/gadget/legacy/cdc2.c | 35 +- drivers/usb/gadget/legacy/dbgp.c | 10 +- drivers/usb/gadget/legacy/ether.c | 36 +- drivers/usb/gadget/legacy/g_ffs.c | 32 +- drivers/usb/gadget/legacy/gmidi.c | 8 +- drivers/usb/gadget/legacy/hid.c | 37 +- drivers/usb/gadget/legacy/mass_storage.c | 41 +- drivers/usb/gadget/legacy/multi.c | 43 +- drivers/usb/gadget/legacy/ncm.c | 34 +- drivers/usb/gadget/legacy/nokia.c | 105 ++- drivers/usb/gadget/legacy/printer.c | 51 +- drivers/usb/gadget/legacy/serial.c | 38 +- drivers/usb/gadget/legacy/zero.c | 41 +- drivers/usb/gadget/udc/amd5536udc.c | 88 ++- drivers/usb/gadget/udc/at91_udc.c | 39 +- drivers/usb/gadget/udc/atmel_usba_udc.c | 15 + drivers/usb/gadget/udc/bcm63xx_udc.c | 29 +- drivers/usb/gadget/udc/bdc/bdc_ep.c | 9 + drivers/usb/gadget/udc/dummy_hcd.c | 95 ++- drivers/usb/gadget/udc/fotg210-udc.c | 29 +- drivers/usb/gadget/udc/fsl_qe_udc.c | 11 + drivers/usb/gadget/udc/fsl_udc_core.c | 13 + drivers/usb/gadget/udc/fusb300_udc.c | 11 + drivers/usb/gadget/udc/gadget_chips.h | 55 -- drivers/usb/gadget/udc/goku_udc.c | 38 ++ drivers/usb/gadget/udc/gr_udc.c | 11 + drivers/usb/gadget/udc/lpc32xx_udc.c | 32 + drivers/usb/gadget/udc/m66592-udc.c | 13 +- drivers/usb/gadget/udc/mv_u3d_core.c | 9 + drivers/usb/gadget/udc/mv_udc_core.c | 9 + drivers/usb/gadget/udc/net2272.c | 15 +- drivers/usb/gadget/udc/net2280.c | 95 ++- drivers/usb/gadget/udc/omap_udc.c | 22 + drivers/usb/gadget/udc/pch_udc.c | 52 +- drivers/usb/gadget/udc/pxa25x_udc.c | 30 + drivers/usb/gadget/udc/pxa27x_udc.c | 3 +- drivers/usb/gadget/udc/pxa27x_udc.h | 40 +- drivers/usb/gadget/udc/r8a66597-udc.c | 10 + drivers/usb/gadget/udc/s3c-hsudc.c | 15 + drivers/usb/gadget/udc/s3c2410_udc.c | 10 + drivers/usb/gadget/udc/udc-core.c | 90 +++ drivers/usb/gadget/udc/udc-xilinx.c | 9 + drivers/usb/isp1760/isp1760-udc.c | 15 +- drivers/usb/musb/Kconfig | 51 +- drivers/usb/musb/Makefile | 1 + drivers/usb/musb/musb_cppi41.c | 6 +- drivers/usb/musb/musb_dsps.c | 6 +- drivers/usb/musb/musb_gadget.c | 87 ++- drivers/usb/musb/sunxi.c | 756 +++++++++++++++++++++ drivers/usb/phy/Kconfig | 14 + drivers/usb/phy/Makefile | 1 + drivers/usb/phy/phy-generic.c | 6 +- drivers/usb/phy/phy-keystone.c | 6 +- drivers/usb/phy/phy-msm-usb.c | 67 +- drivers/usb/phy/phy-mxs-usb.c | 6 +- drivers/usb/phy/phy-omap-otg.c | 22 +- drivers/usb/phy/phy-qcom-8x16-usb.c | 436 ++++++++++++ drivers/usb/phy/phy-tahvo.c | 27 +- drivers/usb/renesas_usbhs/common.c | 2 +- drivers/usb/renesas_usbhs/mod_gadget.c | 68 ++ include/linux/usb/chipidea.h | 1 + include/linux/usb/composite.h | 2 + include/linux/usb/gadget.h | 198 +++++- include/linux/usb/msm_hsusb.h | 9 +- include/linux/usb/of.h | 7 + include/linux/usb/otg.h | 15 + include/uapi/linux/usb/ch9.h | 12 + 116 files changed, 3504 insertions(+), 1093 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/allwinner,sun4i-a10-musb.txt create mode 100644 Documentation/devicetree/bindings/usb/qcom,usb-8x16-phy.txt delete mode 100644 drivers/usb/gadget/udc/gadget_chips.h create mode 100644 drivers/usb/musb/sunxi.c create mode 100644 drivers/usb/phy/phy-qcom-8x16-usb.c -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html