1
linux/drivers/usb/gadget
Michal Nazarewicz 0fb2c2a169 USB: gadget: f_mass_storage: per function
Mass Storage Function (MSF) used the same descriptors for each
usb_function instance (meaning usb_function::descriptors of different
functions pointed to the same static area (the same was true for
usb_function::hs_descriptors)).

This would leads to problems if MSF were used in several USB
configurations with different interface and/or endpoint numbers.
Descriptors for all configurations would have interface/endpoint
numbers overwritten by the values valid for the last configuration.

This patch adds code that copies the descriptors each time MSF is
added to USB configuration (that is for each usb_function).

Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
2010-05-20 13:21:36 -07:00
..
amd5536udc.c usb: amd5536udc: fixed shared interrupt bug and warning oops 2009-11-30 16:43:15 -08:00
amd5536udc.h
at91_udc.c ARM: 5965/1: Fix soft lockup in at91 udc driver 2010-03-29 17:36:04 +01:00
at91_udc.h
atmel_usba_udc.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
atmel_usba_udc.h USB: atmel uaba: Adding invert vbus_pin 2010-03-02 14:54:57 -08:00
audio.c USB: audio gadget: free alsa devices when unloading 2009-12-23 11:34:20 -08:00
cdc2.c
ci13xxx_udc.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
ci13xxx_udc.h
composite.c usb: gadget: Allow larger configuration descriptors 2010-05-20 13:21:36 -07:00
config.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
dummy_hcd.c USB: make hcd.h public (drivers dependency) 2010-05-20 13:21:30 -07:00
epautoconf.c USB: gadget: fix Blackfin builds after gadget cleansing 2010-03-19 07:24:19 -07:00
ether.c USB: Correct CONFIG variable typo. 2010-03-02 14:53:40 -08:00
f_acm.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_audio.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_ecm.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_eem.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_hid.c USB: gadget: add HID gadget driver 2010-05-20 13:21:35 -07:00
f_loopback.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_mass_storage.c USB: gadget: f_mass_storage: per function 2010-05-20 13:21:36 -07: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 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_rndis.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_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 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_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
file_storage.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-03-04 08:15:33 -08:00
fsl_mx3_udc.c fsl_mx3_udc: Add i.MX35 support 2010-02-04 15:55:09 +01:00
fsl_qe_udc.c USB gadget: make Open Firmware device id constant 2010-03-02 14:54:18 -08:00
fsl_qe_udc.h powerpc/qe&cpm: Implement static inline stubs for non-QE/CPM builds 2009-11-11 21:43:20 -06:00
fsl_udc_core.c USB: fsl_udc_core: Fix kernel oops on module removal 2009-10-30 14:57:33 -07:00
fsl_usb2_udc.h
g_zero.h
gadget_chips.h USB: gadget: add gadget controller number for s3c-hsotg driver 2010-03-19 07:24:22 -07:00
gmidi.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
goku_udc.c USB: goku_udc: remove potential null dereference 2010-03-19 07:24:19 -07:00
goku_udc.h
hid.c USB: gadget: add HID gadget driver 2010-05-20 13:21:35 -07:00
imx_udc.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
imx_udc.h
inode.c usb: gadgetfs: Convert semaphore to mutex 2010-03-02 14:54:52 -08:00
Kconfig USB: gadget: add HID gadget driver 2010-05-20 13:21:35 -07:00
langwell_udc.c
langwell_udc.h
lh7a40x_udc.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
lh7a40x_udc.h
m66592-udc.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
m66592-udc.h
Makefile USB: gadget: add HID gadget driver 2010-05-20 13:21:35 -07:00
mass_storage.c USB: mass_storage: eject LUNs on thread exit 2010-03-02 14:54:49 -08:00
multi.c USB: gadget/multi: cdc_do_config: remove redundant check 2010-03-19 07:24:24 -07:00
ndis.h
net2280.c
net2280.h
nokia.c USB: gadget: introduce g_nokia gadget driver 2010-03-02 14:54:02 -08:00
omap_udc.c omap1: omap_udc: Add clocking and disable vbus sense for omap7xx 2009-11-22 10:24:32 -08:00
omap_udc.h
printer.c USB: Remove unsupported usb gadget drivers 2010-03-02 14:54:57 -08:00
pxa25x_udc.c [ARM] pxa: move board board IRQ definitions out of irqs.h 2010-03-02 07:40:51 +08:00
pxa25x_udc.h USB: gadget: pxa25x: basic transceiver support 2009-09-23 06:46:23 -07:00
pxa27x_udc.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
pxa27x_udc.h USB: pxa27x_udc: Fix deadlocks on request queueing 2010-03-02 14:54:47 -08:00
r8a66597-udc.c Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
r8a66597-udc.h usb: r8a66597-udc unaligned fifo fix 2009-10-06 10:59:03 +09:00
rndis.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
rndis.h USB: gadget: Add EEM gadget driver 2009-09-23 06:46:35 -07:00
s3c2410_udc.c USB: s3c2410: unregister should call unbind, not disconnect 2009-09-23 06:46:35 -07:00
s3c2410_udc.h
s3c-hsotg.c USB: gadget: s3c-hsotg: Add missing unlock 2010-04-30 09:25:11 -07:00
serial.c
storage_common.c USB: g_mass_storage: code cleaned up and comments updated 2009-12-11 11:55:22 -08:00
u_audio.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
u_audio.h USB: audio gadget: free alsa devices when unloading 2009-12-23 11:34:20 -08:00
u_ether.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
u_ether.h USB: Remove unsupported usb gadget drivers 2010-03-02 14:54:57 -08:00
u_phonet.h
u_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
u_serial.h
usbstring.c
zero.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