linux/drivers/usb/gadget
Felipe Balbi 2ccea03a8f usb: gadget: introduce UDC Class
this class will be used to abstract away several of the duplicated
operations scattered among the USB gadget controller drivers.

Later, we can add an atomic notifier to tell interested drivers about
what's happening with the controller. Notifications such as suspend,
resume, enumerated, etc. will be useful, at a minimum, for implementing
usb charger detection.

As part of the converting process usb_gadget_probe_driver() is no longer
part of each udc but pushed into the ->stap() callback. The same for his
couterpart.

The core is currently set explicit to 'n'. It will be changed to 'y' once
all users are converted since it provides functions which clash with
other drivers.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-06-28 11:12:51 -07:00
..
Kconfig USB: deprecate g_file_storage 2011-06-15 17:54:46 -07:00
Makefile USB: net2272: driver for PLX NET2272 USB device controller 2011-06-06 16:47:27 -07:00
amd5536udc.c usb: gadget: include <linux/prefetch.h> to fix compiling error 2011-06-06 16:27:00 -07:00
amd5536udc.h Fix common misspellings 2011-03-31 11:26:23 -03:00
at91_udc.c usb: gadget: include <linux/prefetch.h> to fix compiling error 2011-06-06 16:27:00 -07:00
at91_udc.h ARM: 6209/3: at91_udc: Add vbus polarity and polling mode 2010-07-18 20:39:10 +01:00
atmel_usba_udc.c Haavard Skinnemoen has left Atmel 2011-05-18 23:24:50 +02:00
atmel_usba_udc.h USB: atmel uaba: Adding invert vbus_pin 2010-03-02 14:54:57 -08:00
audio.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
cdc2.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
ci13xxx_msm.c USB: gadget: Implement runtime PM for MSM bus glue driver 2010-12-10 14:23:34 -08:00
ci13xxx_pci.c USB: gadget: Introduce ci13xxx_udc_driver struct 2010-12-10 14:23:33 -08:00
ci13xxx_udc.c USB: OTG: msm: Implement charger detection 2011-05-06 18:27:48 -07:00
ci13xxx_udc.h USB: gadget: Add test mode support for ci13xxx_udc 2011-02-25 11:33:57 -08:00
composite.c usb: gadget: composite: Allow function drivers to pause control transfers 2011-05-10 14:14:57 -07:00
config.c USB: gadget: __init and __exit tags removed 2010-05-20 13:21:43 -07:00
dbgp.c USB: dbpg gadget: dont mask out direction bit 2011-04-29 17:24:30 -07:00
dummy_hcd.c USB: dummy-hcd needs the has_tt flag 2011-06-07 09:05:43 -07:00
epautoconf.c USB: Gadget: Initialize wMaxPacketSize if not already set 2011-02-04 11:42:52 -08:00
ether.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
f_acm.c USB: Change acm_iad_descriptor bFunctionProtocol to USB_CDC_ACM_PROTO_AT_V25TER 2010-10-22 10:21:35 -07:00
f_audio.c USB: gadget: f_audio: Fix invalid dereference of initdata 2011-05-17 11:20:24 -07:00
f_ecm.c USB: gadget: __init and __exit tags removed 2010-05-20 13:21:43 -07:00
f_eem.c usb: gadget: eem: fix echo command processing 2011-04-13 15:44:01 -07:00
f_fs.c USB: gadget: f_fs: even zero-length packets require a buffer 2011-02-04 11:57:22 -08:00
f_hid.c BKL: remove extraneous #include <smp_lock.h> 2010-11-17 08:59:32 -08:00
f_loopback.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
f_mass_storage.c usb: gadget: Remove the LUN checks which are always true 2011-05-10 14:14:59 -07:00
f_ncm.c Fix common misspellings 2011-03-31 11:26:23 -03:00
f_obex.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
f_phonet.c f_phonet: avoid pskb_pull(), fix OOPS with CONFIG_HIGHMEM 2011-02-28 12:36:39 -08:00
f_rndis.c usb: gadget: rndis: don't test against req->length 2011-05-13 15:51:09 -07:00
f_serial.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
f_sourcesink.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
f_subset.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
f_uvc.c V4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h 2010-08-02 16:43:15 -03:00
f_uvc.h V4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h 2010-08-02 16:43:15 -03:00
file_storage.c USB: deprecate g_file_storage 2011-06-15 17:54:46 -07:00
fsl_mxc_udc.c usb: gadget/fsl_mxc_udc: Detect the CPU type in run-time 2011-02-04 11:42:52 -08:00
fsl_qe_udc.c drivercore: revert addition of of_match to struct device 2011-05-18 12:32:23 -06:00
fsl_qe_udc.h usb: fix a typo in a comment 2011-04-13 16:41:00 -07:00
fsl_udc_core.c fsl/usb: Unused endpoint failure for USB gadget 2011-05-06 18:19:39 -07:00
fsl_usb2_udc.h USB: extend ehci-fsl and fsl_udc_core driver for OTG operation 2011-05-02 16:59:38 -07:00
fusb300_udc.c usb/gadget: (fusb300_udc) Remove unused function fusb300_ep0_complete 2011-06-06 16:32:36 -07:00
fusb300_udc.h usb: udc: add Faraday fusb300 driver 2011-01-22 19:45:36 -08:00
g_ffs.c usb: gadget: g_fs: Fix compilation warning 2010-11-17 13:24:46 -08:00
g_zero.h
gadget_chips.h USB: net2272: driver for PLX NET2272 USB device controller 2011-06-06 16:47:27 -07:00
gmidi.c Fix common misspellings 2011-03-31 11:26:23 -03:00
goku_udc.c sanitize <linux/prefetch.h> usage 2011-05-20 12:50:29 -07:00
goku_udc.h usb: gadget: goku_udc: add registered flag bit, fixing build 2010-11-11 06:57:24 -08:00
hid.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
imx_udc.c sanitize <linux/prefetch.h> usage 2011-05-20 12:50:29 -07:00
imx_udc.h usb: gadget/imx-udc: remove usage of deprecated symbol USBD_INT0 2010-11-11 05:51:15 -08:00
inode.c usb-gadget: unlock data->lock mutex on error path in ep_write() 2011-06-06 15:59:40 -07:00
langwell_udc.c Fix common misspellings 2011-03-31 11:26:23 -03:00
langwell_udc.h USB: langwell: USB Client driver memory handling 2010-10-22 10:21:19 -07:00
m66592-udc.c usb: m66592-udc: Fixed bufnum of Bulk 2011-02-25 11:33:00 -08:00
m66592-udc.h usb: gadget: m66592-udc pio to mmio accessor conversion. 2010-06-02 16:26:13 +09:00
mass_storage.c USB: gadget: f_mass_storage: code style clean ups 2010-11-11 05:58:49 -08:00
multi.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
mv_udc.h USB: pxa: Add USB client support for Marvell PXA9xx/PXA168 chips 2010-11-30 16:51:21 -08:00
mv_udc_core.c usb/mv_udc_core: fix compile 2011-06-06 16:28:02 -07:00
mv_udc_phy.c USB: pxa: Add USB client support for Marvell PXA9xx/PXA168 chips 2010-11-30 16:51:21 -08:00
ncm.c usb: gadget: g_ncm added 2010-12-10 14:29:43 -08:00
ndis.h
net2272.c USB: net2272: driver for PLX NET2272 USB device controller 2011-06-06 16:47:27 -07:00
net2272.h USB: net2272: driver for PLX NET2272 USB device controller 2011-06-06 16:47:27 -07:00
net2280.c usb: gadget: include <linux/prefetch.h> to fix compiling error 2011-06-06 16:27:00 -07:00
net2280.h
nokia.c Fix common misspellings 2011-03-31 11:26:23 -03:00
omap_udc.c sanitize <linux/prefetch.h> usage 2011-05-20 12:50:29 -07:00
omap_udc.h
pch_udc.c usb: pch_udc: unlock on allocation failure 2011-04-13 15:44:05 -07:00
printer.c USB: g_printer required set interface request 2011-04-29 17:24:31 -07:00
pxa25x_udc.c usb/pxa25x_udc: cleanup the LUBBOCK err path 2011-06-06 16:28:03 -07:00
pxa25x_udc.h
pxa27x_udc.c sanitize <linux/prefetch.h> usage 2011-05-20 12:50:29 -07:00
pxa27x_udc.h USB: pxa27x_udc: use four bits to store endpoint addresses 2010-05-20 13:21:36 -07:00
r8a66597-udc.c usb: r8a66597-udc: fix spinlock usage 2011-04-13 15:44:00 -07:00
r8a66597-udc.h USB: r8a66597-udc: Initialize uninitialized variable, fix compile warning 2010-10-22 10:21:34 -07:00
rndis.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-10-24 13:41:39 -07:00
rndis.h USB: rndis: section mismatch fix 2010-09-03 17:33:40 -07:00
s3c-hsotg.c USB: s3c-hsotg: Tone down debugging 2011-06-06 16:26:59 -07:00
s3c-hsudc.c usb/s3c-hsudc: fix error path 2011-06-06 16:28:03 -07:00
s3c2410_udc.c usb: gadget: include <linux/prefetch.h> to fix compiling error 2011-06-06 16:27:00 -07:00
s3c2410_udc.h
serial.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
storage_common.c usb: gadget: storage_common: use kstrto*() [bug fix] 2011-04-29 17:24:36 -07:00
u_audio.c usb: g_audio: Fix crash at driver removal 2010-12-03 12:05:35 -08:00
u_audio.h USB: audio gadget: free alsa devices when unloading 2009-12-23 11:34:20 -08:00
u_ether.c usb-gadget: fix warning in ethernet 2011-03-02 19:52:29 -05:00
u_ether.h usb: gadget: f_ncm.c added 2010-12-10 14:29:43 -08:00
u_phonet.h
u_serial.c usb: subtle increased memory usage in u_serial 2010-11-11 07:03:48 -08:00
u_serial.h
udc-core.c usb: gadget: introduce UDC Class 2011-06-28 11:12:51 -07:00
usbstring.c
uvc.h V4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h 2010-08-02 16:43:15 -03:00
uvc_queue.c V4L/DVB: uvc: Fix multiple symbols definitions with UVC gadget and host drivers 2010-07-11 17:45:10 -03:00
uvc_queue.h V4L/DVB: uvc: Fix multiple symbols definitions with UVC gadget and host drivers 2010-07-11 17:45:10 -03:00
uvc_v4l2.c USB: uvc_v4l2: cleanup test for end of loop 2010-08-23 20:50:14 -07:00
uvc_video.c V4L/DVB: uvc: Fix multiple symbols definitions with UVC gadget and host drivers 2010-07-11 17:45:10 -03:00
webcam.c usb gadget: don't save bind callback in struct usb_configuration 2010-10-22 10:21:26 -07:00
zero.c usb gadget: don't save bind callback in struct usb_composite_driver 2010-10-22 10:21:25 -07:00