linux/drivers/usb/gadget
David Brownell 4051770706 USB: atmel_usba_udc fixes, mostly disconnect()
Various fixes to Atmel's high speed UDC driver.

  * Issue some missing disconnect() calls.  Currently they are only made
    when VBUS power goes away (on boards where the driver can sense such
    changes), but that's not enough for gadget drivers to clean out all
    the state that's needed.  Missing calls were:

      - After USB reset, before starting enumeration.
      - When unregistering a gadget driver, before unbind().

  * Don't assume gadget drivers provide disconnect callbacks; make sure
    to not call through a null pointer!

  * When the driver doesn't provide an unbind() callback, refuse to
    unregister it.

Also remove two bogus "error" messages:

  * Related to mis-handling of disconnect() ... don't emit error messages
    for disconnect() handlers that disable endpoints.  All of them should
    be doing that; the problem is (unfixed) oddness in atmel_usba_udc.

  * Don't emit a diagnostic for a curious and transient nonfatal error
    that shows up sometimes with EP0.

Those messages spammed syslog, for no good reason.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-05-14 10:00:30 -07:00
..
amd5536udc.c usb: fix integer as NULL pointer warnings found by sparse 2008-05-14 10:00:26 -07:00
amd5536udc.h USB: amd5536 UDC driver (in GEODE southbridge) 2007-07-19 17:46:05 -07:00
at91_udc.c usb: use non-racy method for proc entries creation 2008-04-29 08:06:21 -07:00
at91_udc.h USB: at91_udc uses generic GPIO calls; minor cleanup 2008-02-01 14:35:01 -08:00
atmel_usba_udc.c USB: atmel_usba_udc fixes, mostly disconnect() 2008-05-14 10:00:30 -07:00
atmel_usba_udc.h atmel_usba_udc: Add support for AT91CAP9 UDPHS 2008-04-06 17:25:06 -04:00
config.c USB: move <linux/usb_gadget.h> to <linux/usb/gadget.h> 2007-10-12 14:55:31 -07:00
dummy_hcd.c drivers/usb annotations and fixes 2008-04-28 10:03:31 -07:00
epautoconf.c USB: gadget section fixes 2008-04-24 21:16:48 -07:00
ether.c usb: pxa27x_udc driver 2008-05-02 10:25:53 -07:00
file_storage.c USB GADGET/PERIPHERAL: g_file_storage Bulk-Only Transport compliance, clear-feature ignore 2008-05-02 10:25:58 -07:00
fsl_usb2_udc.c USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
fsl_usb2_udc.h USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
gadget_chips.h USB: m66592-udc: fixes some problems 2007-07-19 17:46:05 -07:00
gmidi.c drivers/usb annotations and fixes 2008-04-28 10:03:31 -07:00
goku_udc.c usb: use get/put_unaligned_* helpers 2008-04-29 08:06:28 -07:00
goku_udc.h USB: goku_udc trivial cleanups 2007-07-12 16:34:43 -07:00
inode.c USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
Kconfig usb: pxa27x_udc driver 2008-05-02 10:25:53 -07:00
lh7a40x_udc.c USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
lh7a40x_udc.h USB: move <linux/usb_gadget.h> to <linux/usb/gadget.h> 2007-10-12 14:55:31 -07:00
m66592-udc.c usb gadget: fix platform driver hotplug/coldplug 2008-04-11 08:06:43 -07:00
m66592-udc.h drivers/usb annotations and fixes 2008-04-28 10:03:31 -07:00
Makefile usb: pxa27x_udc driver 2008-05-02 10:25:53 -07:00
ndis.h
net2280.c usb: net2280 can't have a function called show_registers() 2008-02-08 09:22:30 -08:00
net2280.h USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
omap_udc.c usb: use non-racy method for proc entries creation 2008-04-29 08:06:21 -07:00
omap_udc.h USB: gadget code switches to pr_err() and friends 2008-02-01 14:34:51 -08:00
printer.c USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
pxa2xx_udc.c USB: replace remaining __FUNCTION__ occurrences 2008-04-24 21:16:55 -07:00
pxa2xx_udc.h USB: pxa2xx_udc: fix misuse of clock enable/disable calls 2008-03-04 14:57:44 -08:00
pxa27x_udc.c USB: pxa27x_udc: minor fixes 2008-05-14 10:00:29 -07:00
pxa27x_udc.h USB: pxa27x_udc: minor fixes 2008-05-14 10:00:29 -07:00
rndis.c usb: use get/put_unaligned_* helpers 2008-04-29 08:06:28 -07:00
rndis.h USB gadget rndis: fix struct rndis_packet_msg_type unaligned bug 2007-04-27 13:28:40 -07:00
s3c2410_udc.c usb gadget: fix platform driver hotplug/coldplug 2008-04-11 08:06:43 -07:00
s3c2410_udc.h USB Gadget driver for Samsung s3c2410 ARM SoC 2007-07-12 16:34:30 -07:00
serial.c USB: serial gadget: descriptor cleanup 2008-05-14 10:00:28 -07:00
usbstring.c usb: use get/put_unaligned_* helpers 2008-04-29 08:06:28 -07:00
zero.c usb: gadget zero timer init fix 2008-05-02 10:25:54 -07:00