linux/drivers/usb/serial
Greg Kroah-Hartman e5b1e2062e USB: serial: make minor allocation dynamic
This moves the allocation of minor device numbers from a static array to
be dynamic, using the idr interface.  This means that you could
potentially get "gaps" in a minor number range for a single USB serial
device with multiple ports, but all should still work properly.

We remove the 'minor' field from the usb_serial structure, as it no
longer makes any sense for it (use the field in the usb_serial_port
structure if you really want to know this number), and take the fact
that we were overloading a number in this field to determine if we had
initialized the minor numbers or not, and just use a flag variable
instead.

Note, we still have the limitation of 255 USB to serial devices in the
system, as that is all we are registering with the TTY layer at this
point in time.

Tested-by: Tobias Winter <tobias@linuxdingsda.de>
Reviewed-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-06-17 13:30:02 -07:00
..
aircable.c TTY: switch tty_flip_buffer_push 2013-01-15 22:30:15 -08:00
ark3116.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
belkin_sa.c TTY: switch tty_flip_buffer_push 2013-01-15 22:30:15 -08:00
belkin_sa.h
bus.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
ch341.c USB: ch341: fix TIOCMIWAIT and disconnect 2013-03-25 13:50:52 -07:00
console.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
cp210x.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
cyberjack.c USB: cyberjack: fix disconnect handling 2013-03-25 13:48:26 -07:00
cypress_m8.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
cypress_m8.h USB: Serial: cypress_M8: Enable FRWD Dongle hidcom device 2013-06-03 10:33:10 -07:00
digi_acceleport.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
empeg.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
ezusb_convert.pl
f81232.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
flashloader.c USB: serial: add support Infineon modem USB flashloader driver 2013-06-03 10:52:40 -07:00
ftdi_sio_ids.h USB: ftdi_sio: Add support for Newport CONEX motor drivers 2013-05-17 11:55:23 -07:00
ftdi_sio.c USB: ftdi_sio: Add support for Newport CONEX motor drivers 2013-05-17 11:55:23 -07:00
ftdi_sio.h
funsoft.c USB: serial: funsoft.c: remove debug module parameter 2012-09-14 12:31:27 -07:00
garmin_gps.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
generic.c USB: serial: add generic wait_until_sent implementation 2013-05-16 17:32:21 -07:00
hp4x.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
io_16654.h
io_edgeport.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
io_edgeport.h
io_ionsp.h
io_tables.h USB: io_edgeport: switch to generic TIOCMIWAIT implementation 2013-03-25 13:50:53 -07:00
io_ti.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
io_ti.h
io_usbvend.h
ipaq.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
ipw.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
ir-usb.c TTY: switch tty_flip_buffer_push 2013-01-15 22:30:15 -08:00
iuu_phoenix.c USB: iuu_phoenix: fix bulk-message timeout 2013-05-29 10:50:43 +09:00
iuu_phoenix.h
Kconfig USB: serial: add support Infineon modem USB flashloader driver 2013-06-03 10:52:40 -07:00
keyspan_pda.c USB patches for 3.10-rc1 2013-04-29 12:19:23 -07:00
keyspan_usa26msg.h
keyspan_usa28msg.h
keyspan_usa49msg.h
keyspan_usa67msg.h
keyspan_usa90msg.h
keyspan.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
keyspan.h USB: keyspan: fix NULL-pointer dereferences and memory leaks 2012-10-25 09:37:13 -07:00
kl5kusb105.c USB: kl5kusb105: always disable uart on close 2013-03-25 13:54:31 -07:00
kl5kusb105.h
kobil_sct.c USB: kobil_sct: use port interrupt-out urb 2013-04-17 10:05:35 -07:00
kobil_sct.h
Makefile USB: serial: add support Infineon modem USB flashloader driver 2013-06-03 10:52:40 -07:00
Makefile-keyspan_pda_fw
mct_u232.c USB: mct_u232: clean up read implementation 2013-04-17 10:05:35 -07:00
mct_u232.h
metro-usb.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
mos7720.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
mos7840.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
moto_modem.c
navman.c TTY: switch tty_flip_buffer_push 2013-01-15 22:30:15 -08:00
omninet.c USB: omninet: switch to generic read implementation 2013-04-17 10:05:34 -07:00
opticon.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
option.c USB: option,zte_ev: move most ZTE CDMA devices to zte_ev 2013-06-06 09:06:25 -07:00
oti6858.c USB: oti6858: fix TIOCMIWAIT and disconnect 2013-03-25 13:52:25 -07:00
oti6858.h
pl2303.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
pl2303.h
qcaux.c qcaux: add Franklin U600 2013-03-11 11:09:17 -07:00
qcserial.c USB: serial: Add Option GTM681W to qcserial device table. 2013-06-03 10:33:22 -07:00
quatech2.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
safe_serial.c TTY: switch tty_flip_buffer_push 2013-01-15 22:30:15 -08:00
siemens_mpi.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
sierra.c USB: serial: ports: add minor and port number 2013-06-10 14:46:40 -07:00
spcp8x5.c USB: spcp8x5: fix device initialisation at open 2013-06-10 11:00:49 -07:00
ssu100.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
symbolserial.c USB: symbolserial: move private-data allocation to port_probe 2013-04-17 10:05:35 -07:00
ti_usb_3410_5052.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
ti_usb_3410_5052.h
usb_debug.c
usb_wwan.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
usb-serial.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
usb-wwan.h USB: usb-wwan: fix multiple memory leaks in error paths 2012-10-25 09:37:13 -07:00
visor.c USB: visor: fix initialisation of Treo/Kyocera devices 2013-05-29 10:47:45 +09:00
visor.h
vivopay-serial.c USB: serial: remove driver version information 2012-10-31 12:48:06 -07:00
whiteheat.c USB: serial: make minor allocation dynamic 2013-06-17 13:30:02 -07:00
whiteheat.h
wishbone-serial.c USB: serial: wishbone-serial: fix up minor sparse warning 2013-04-11 08:45:34 -07:00
xsens_mt.c usb: add driver for xsens motion trackers 2013-01-25 09:56:54 -08:00
zio.c
zte_ev.c USB: option,zte_ev: move most ZTE CDMA devices to zte_ev 2013-06-06 09:06:25 -07:00