aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/usb-serial.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-06 13:31:35 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-17 16:34:15 -0400
commit455b4f7e18e741c0603f9030f9a1897f4c5150c1 (patch)
tree73e4ebe545f7b660afe800599eaf3334bf656c81 /drivers/usb/serial/usb-serial.c
parente5b1e2062e0535e8ffef79bb34d857e21380d101 (diff)
USB: serial: increase the number of devices we support
We had the limit of 255 USB to serial devices on one system for almost 15 years, with no complaints. But now it's time to move on from these tiny "baby" systems, and bump the number up to 512, which should last us a few more years: "512 is a nice number" -- Tobias Winter Note, this is still a static value, and uses up tty core memory with this many tty devices allocated. Converting the driver to use TTY_DRIVER_DYNAMIC_DEV is the next thing to do in order to remove this limitation. Reported-by: Tobias Winter <tobias@linuxdingsda.de> Tested-by: Tobias Winter <tobias@linuxdingsda.de> Reviewed-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/serial/usb-serial.c')
-rw-r--r--drivers/usb/serial/usb-serial.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
index e2e131f85002..cb27fcb2fc90 100644
--- a/drivers/usb/serial/usb-serial.c
+++ b/drivers/usb/serial/usb-serial.c
@@ -43,6 +43,9 @@
43#define DRIVER_AUTHOR "Greg Kroah-Hartman <gregkh@linuxfoundation.org>" 43#define DRIVER_AUTHOR "Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
44#define DRIVER_DESC "USB Serial Driver core" 44#define DRIVER_DESC "USB Serial Driver core"
45 45
46#define USB_SERIAL_TTY_MAJOR 188
47#define USB_SERIAL_TTY_MINORS 512 /* should be enough for a while */
48
46/* There is no MODULE_DEVICE_TABLE for usbserial.c. Instead 49/* There is no MODULE_DEVICE_TABLE for usbserial.c. Instead
47 the MODULE_DEVICE_TABLE declarations in each serial driver 50 the MODULE_DEVICE_TABLE declarations in each serial driver
48 cause the "hotplug" program to pull in whatever module is necessary 51 cause the "hotplug" program to pull in whatever module is necessary
@@ -449,7 +452,7 @@ static int serial_proc_show(struct seq_file *m, void *v)
449 char tmp[40]; 452 char tmp[40];
450 453
451 seq_puts(m, "usbserinfo:1.0 driver:2.0\n"); 454 seq_puts(m, "usbserinfo:1.0 driver:2.0\n");
452 for (i = 0; i < SERIAL_TTY_MINORS; ++i) { 455 for (i = 0; i < USB_SERIAL_TTY_MINORS; ++i) {
453 port = usb_serial_port_get_by_minor(i); 456 port = usb_serial_port_get_by_minor(i);
454 if (port == NULL) 457 if (port == NULL)
455 continue; 458 continue;
@@ -1217,7 +1220,7 @@ static int __init usb_serial_init(void)
1217{ 1220{
1218 int result; 1221 int result;
1219 1222
1220 usb_serial_tty_driver = alloc_tty_driver(SERIAL_TTY_MINORS); 1223 usb_serial_tty_driver = alloc_tty_driver(USB_SERIAL_TTY_MINORS);
1221 if (!usb_serial_tty_driver) 1224 if (!usb_serial_tty_driver)
1222 return -ENOMEM; 1225 return -ENOMEM;
1223 1226
@@ -1230,7 +1233,7 @@ static int __init usb_serial_init(void)
1230 1233
1231 usb_serial_tty_driver->driver_name = "usbserial"; 1234 usb_serial_tty_driver->driver_name = "usbserial";
1232 usb_serial_tty_driver->name = "ttyUSB"; 1235 usb_serial_tty_driver->name = "ttyUSB";
1233 usb_serial_tty_driver->major = SERIAL_TTY_MAJOR; 1236 usb_serial_tty_driver->major = USB_SERIAL_TTY_MAJOR;
1234 usb_serial_tty_driver->minor_start = 0; 1237 usb_serial_tty_driver->minor_start = 0;
1235 usb_serial_tty_driver->type = TTY_DRIVER_TYPE_SERIAL; 1238 usb_serial_tty_driver->type = TTY_DRIVER_TYPE_SERIAL;
1236 usb_serial_tty_driver->subtype = SERIAL_TYPE_NORMAL; 1239 usb_serial_tty_driver->subtype = SERIAL_TYPE_NORMAL;