linux/drivers/usb/gadget
David Brownell c1dca562be usb gadget: split out serial core
This abstracts the "gadget serial" driver TTY glue into a separate
component, cleaning it up and disentangling it from connection state.

It also changed some behaviors for the better:

  - Stops using "experimental" major #127, and switches over to
    having the TTY layer allocate the dev_t numbers.
    
  - Provides /sys/class/tty/ttyGS* nodes, thus mdev/udev support.
    (Note "mdev" hotplug bug in Busybox v1.7.2: /dev/ttyGS0 will
    be a *block* device without CONFIG_SYSFS_DEPRECATED_V2.)

  - The tty nodes no longer reject opens when there's no host.
    Now they can support normal getty configs in /etc/inttab...

  - Now implements RX throttling.  When the line discipline says
    it doesn't want any more data, only packets in flight will be
    delivered (currently, max 1K/8K at full/high speeds) until it
    unthrottles the data.

  - Supports low_latency.  This is a good policy for all USB serial
    adapters, since it eliminates scheduler overhead on RX paths.

This also includes much cleanup including better comments, fixing
memory leaks and other bugs (including some locking fixes), messaging
cleanup, and an interface audit and tightening.  This added up to a
significant object code shrinkage, on the order of 20% (!) depending
on CPU and compiler.

A separate patch actually kicks in this new code, using the functions
declared in this new header, and removes the previous glue.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-07-21 15:15:59 -07:00
..
Kconfig [ARM] Merge most of the PXA work for initial merge 2008-07-14 23:34:46 +01:00
Makefile [ARM] 5120/1: pxa: correct platform driver names for PXA25x and PXA27x UDC drivers 2008-07-09 21:30:13 +01:00
amd5536udc.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
amd5536udc.h
at91_udc.c USB: at91_udc: updated fifo sizes 2008-07-21 15:15:58 -07:00
at91_udc.h
atmel_usba_udc.c
atmel_usba_udc.h
config.c
dummy_hcd.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
epautoconf.c
ether.c USB: usb dev_name() instead of dev->bus_id 2008-07-21 15:15:46 -07:00
file_storage.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
fsl_usb2_udc.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
fsl_usb2_udc.h
gadget_chips.h [ARM] 5120/1: pxa: correct platform driver names for PXA25x and PXA27x UDC drivers 2008-07-09 21:30:13 +01:00
gmidi.c
goku_udc.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
goku_udc.h
inode.c [ARM] 5120/1: pxa: correct platform driver names for PXA25x and PXA27x UDC drivers 2008-07-09 21:30:13 +01:00
lh7a40x_udc.c USB: usb dev_name() instead of dev->bus_id 2008-07-21 15:15:46 -07:00
lh7a40x_udc.h
m66592-udc.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
m66592-udc.h
ndis.h
net2280.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
net2280.h
omap_udc.c USB: usb dev_set_name() instead of dev->bus_id 2008-07-21 15:15:47 -07:00
omap_udc.h ARM: OMAP: USB: Change omap USB code to use omap_read/write instead of __REG 2008-07-03 12:24:43 +03:00
printer.c printer gadget: BKL pushdown 2008-06-20 14:05:52 -06:00
pxa25x_udc.c USB: usb dev_name() instead of dev->bus_id 2008-07-21 15:15:46 -07:00
pxa25x_udc.h [ARM] 5120/1: pxa: correct platform driver names for PXA25x and PXA27x UDC drivers 2008-07-09 21:30:13 +01:00
pxa27x_udc.c [ARM] Merge most of the PXA work for initial merge 2008-07-14 23:34:46 +01:00
pxa27x_udc.h [ARM] 5080/1: touch PSSR_OTGPH only on pxa27x in ohci-pxa27x and pxa27x_udc 2008-06-15 19:54:23 +01:00
rndis.c USB: rndis: switch to seq_files 2008-07-21 15:15:57 -07:00
rndis.h USB: remove CVS keywords 2008-07-21 15:15:55 -07:00
s3c2410_udc.c
s3c2410_udc.h
serial.c
u_serial.c usb gadget: split out serial core 2008-07-21 15:15:59 -07:00
u_serial.h usb gadget: split out serial core 2008-07-21 15:15:59 -07:00
usbstring.c
zero.c