summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/udc
Commit message (Collapse)AuthorAgeFilesLines
...
* | | usb: gadget: Add UDC driver for Broadcom USB3.0 device controller IP BDCAshwini Pahuja2014-11-1814-0/+4384
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a UDC driver for Broadcom's USB3.0 Peripheral core named BDC. BDC supports control traffic on ep0 and bulk/Int/Isoch traffic on all other endpoints. [ balbi@ti.com : fix build error on randconfig due to lack of <linux/dmapool.h> ] Signed-off-by: Ashwini Pahuja <ashwini.linux@gmail.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: atmel_usba_udc: use udc-core's reset notifierPeter Chen2014-11-101-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: bcm63xx_udc: use udc-core's reset notifierPeter Chen2014-11-101-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: r8a66597-udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: amd5536udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: pch_udc: use udc-core's reset notifierPeter Chen2014-11-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: fsl_qe_udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: mv_udc_core: use udc-core's reset notifierPeter Chen2014-11-101-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: at91_udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: fsl_udc_core: use udc-core's reset notifierPeter Chen2014-11-101-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: m66592-udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: pxa25x_udc: use udc-core's reset notifierPeter Chen2014-11-101-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: net2272: use udc-core's reset notifierAlan Stern2014-11-101-10/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the new udc-core reset notifier to the net2272 driver. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: net2280: use udc-core's reset notifierAlan Stern2014-11-101-10/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the new udc-core reset notifier to the net2280 driver. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: dummy-hcd: use udc-core's reset notifierAlan Stern2014-11-101-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace usb_gadget_driver's disconnect with udc-core's reset notifier at bus reset handler. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Peter chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: pxa27x_udc: fix warning in non device-tree buildRobert Jarzmik2014-11-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The recent change bringing device-tree support triggers a warning in a non device-tree build : drivers/usb/gadget/udc/pxa27x_udc.c:2405:28: warning: 'udc_pxa_dt_ids' defined but not used [-Wunused-variable] Fix the warning with a preprocessor condition. Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: fix ptr_ret.cocci warningsFengguang Wu2014-11-031-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drivers/usb/gadget/udc/r8a66597-udc.c:1849:1-3: WARNING: PTR_ERR_OR_ZERO can be used Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR Generated by: scripts/coccinelle/api/ptr_ret.cocci Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: pxa27x: do not call usb_gadget_unregister_driver()Felipe Balbi2014-11-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | that call is completely unnecessary because usb_del_gadget_udc() already makes sure the gadget driver is properly unregistered from the UDC. Acked-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: net2272: do not call usb_gadget_unregister_driver()Felipe Balbi2014-11-031-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | that call is completely unnecessary because usb_del_gadget_udc() already makes sure the gadget driver is properly unregistered from the UDC. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: dummy: do not call usb_gadget_unregister_driver()Felipe Balbi2014-11-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | that call is completely unnecessary because usb_del_gadget_udc() already makes sure the gadget driver is properly unregistered from the UDC. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: pxa27x_udc: fix clock prepare and enableRobert Jarzmik2014-11-031-21/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the udc clock controls both the output signals and the internal IP, it must be enabled before any UDC register is touched. The bug is revealed when the clock framework disables the clock for a couple of milliseconds during the boot sequence, and the endpoint configuration is lost. The bug is hidden when clock framework is not used, because no "unused clocks disable" occurs. This patch fixes the wrong behaviour by ensuring that : - whenever a UDC register is read or written, the clock is enabled - reworks the endpoints programming to have it done under running clock - reworks suspend/resume to ensure the same thing Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: pxa27x_udc: use devm_* helpersRobert Jarzmik2014-11-031-32/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use devm_* helpers in the probe function to simplify the error path and the remove path. Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Cc: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: core: prepend udc_attach_driver with usb_Felipe Balbi2014-11-031-2/+2
| | | | | | | | | | | | | | | | | | | | | No functional changes, just adding a prefix which should have been there from the start. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: remove unnecessary 'driver' argumentFelipe Balbi2014-11-0326-83/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | now that no UDC driver relies on the extra 'driver' argument to ->udc_stop(), we can safely remove it. This commit is based on previous work by Robert Baldyga <r.baldyga@samsung.com> which can be found at [1]; however that patch turned out to have a high probability of regressing many UDC drivers because of a blind search & replace s/driver/$udc->driver/ which caused the 'driver' argument to stop_activity() to be a valid non-NULL pointer when it should be NULL, thus causing UDCs to mistakenly call gadget driver's ->disconnect() callback. [1] http://markmail.org/message/x5zneg4xea4zntab Acked-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: core: fix unregistering messageFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Currently, we're printing gadget driver name when registering and UDC name when unregistering. Standardize on always printing gadget driver name. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: s3c-hsudc: remove bind/unbind messagesFelipe Balbi2014-11-031-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: net2280: remove bind/unbind messagesFelipe Balbi2014-11-031-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: net2272: remove bind/unbind messagesFelipe Balbi2014-11-031-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: gr_udc: remove bind/unbind messagesFelipe Balbi2014-11-031-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: fsl_qe: remove bind/unbind messagesFelipe Balbi2014-11-031-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: dummy: remove bind/unbind messagesFelipe Balbi2014-11-031-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: atmel_usba: remove bind/unbind messagesFelipe Balbi2014-11-031-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: at91: remove bind/unbind messagesFelipe Balbi2014-11-031-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | now that we provide generic register/unregister debugging messages from udc-core, we can remove the same messages from this driver. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: pass a single argument to usb_gadget_udc_start/stopFelipe Balbi2014-11-031-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | We know that our udc points to our gadget and our gadget_driver, simplify the interface by passing a single argument. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: s3c-hsudc: do not rely on 'driver' argumentFelipe Balbi2014-11-031-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: pxa27x: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: pxa25x: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: net2280: do not rely on 'driver' argumentFelipe Balbi2014-11-031-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: net2272: do not rely on 'driver' argumentFelipe Balbi2014-11-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: mv_udc: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: mv_u3d: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: lpc32xx: do not rely on 'driver' argumentFelipe Balbi2014-11-031-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: fsl_qe: do not rely on 'driver' argumentFelipe Balbi2014-11-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: dummy: do not rely on 'driver' argumentFelipe Balbi2014-11-031-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: at91: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: udc: amd5536: do not rely on 'driver' argumentFelipe Balbi2014-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | future patches will remove the extra 'driver' argument to ->udc_stop(), in order to do that, we must make sure that our UDC does not rely on it first. Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: s3c-hsudc: delete unnecessary 'out of memory' messagesPeter Chen2014-11-031-3/+1
| | | | | | | | | | | | | | | | | | | | | The memory subsystem has already had similar message for it. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: bcm63xx_udc: delete unnecessary 'out of memory' messagesPeter Chen2014-11-031-3/+1
| | | | | | | | | | | | | | | | | | | | | The memory subsystem has already had similar message for it. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: fsl_qe_udc: delete unnecessary 'out of memory' messagesPeter Chen2014-11-031-1/+0
| | | | | | | | | | | | | | | | | | | | | The memory subsystem has already had similar message for it. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
* | | usb: gadget: mv_udc_core: delete unnecessary 'out of memory' messagesPeter Chen2014-11-031-5/+1
| | | | | | | | | | | | | | | | | | | | | The memory subsystem has already had similar message for it. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
OpenPOWER on IntegriCloud