]> git.karo-electronics.de Git - linux-beck.git/commitdiff
USB: serial: move the "simple" drivers into usb-serial-simple.c
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 5 Aug 2013 11:27:19 +0000 (19:27 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 12 Aug 2013 19:14:52 +0000 (12:14 -0700)
Instead of having to create a new driver for a "simple" usb to serial
device, mush them all into one file, with a macro, so as to make it easy
to add new ones.

Cc: "René Bürgel" <rene.buergel@sohard.de>
Acked-by: Wei Shuai <cpuwolf@gmail.com>
Cc: Josh Triplett <josh@joshtriplett.org>
Acked-by: Frans Klaver <frans.klaver@xsens.com>
Cc: "Wesley W. Terpstra" <w.terpstra@gsi.de>
Cc: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/serial/Kconfig
drivers/usb/serial/Makefile
drivers/usb/serial/flashloader.c [deleted file]
drivers/usb/serial/funsoft.c [deleted file]
drivers/usb/serial/hp4x.c [deleted file]
drivers/usb/serial/moto_modem.c [deleted file]
drivers/usb/serial/siemens_mpi.c [deleted file]
drivers/usb/serial/suunto.c [deleted file]
drivers/usb/serial/usb-serial-simple.c [new file with mode: 0644]
drivers/usb/serial/vivopay-serial.c [deleted file]
drivers/usb/serial/zio.c [deleted file]

index 7eef9b33fde66c78405509adf6ca8b461f8045c7..c454bfa22a106184bbaee567e4f49fbad5d8d057 100644 (file)
@@ -51,6 +51,24 @@ config USB_SERIAL_GENERIC
          support" be compiled as a module for this driver to be used
          properly.
 
+config USB_SERIAL_SIMPLE
+       tristate "USB Serial Simple Driver"
+       help
+         Say Y here to use the USB serial "simple" driver.  This driver
+         handles a wide range of very simple devices, all in one
+         driver.  Specifically, it supports:
+               - Suunto ANT+ USB device.
+               - Fundamental Software dongle.
+               - HP4x calculators
+               - a number of Motoroloa phones
+               - Siemens USB/MPI adapter.
+               - ViVOtech ViVOpay USB device.
+               - Infineon Modem Flashloader USB interface
+               - ZIO Motherboard USB serial interface
+
+         To compile this driver as a module, choose M here: the module
+         will be called usb-serial-simple.
+
 config USB_SERIAL_AIRCABLE
        tristate "USB AIRcable Bluetooth Dongle Driver"
        help
@@ -158,14 +176,6 @@ config USB_SERIAL_FTDI_SIO
          To compile this driver as a module, choose M here: the
          module will be called ftdi_sio.
 
-config USB_SERIAL_FUNSOFT
-       tristate "USB Fundamental Software Dongle Driver"
-       ---help---
-         Say Y here if you want to use the Fundamental Software dongle.
-
-         To compile this driver as a module, choose M here: the
-         module will be called funsoft.
-
 config USB_SERIAL_VISOR
        tristate "USB Handspring Visor / Palm m50x / Sony Clie Driver"
        help
@@ -462,15 +472,6 @@ config USB_SERIAL_MOS7840
          To compile this driver as a module, choose M here: the
          module will be called mos7840.  If unsure, choose N.
 
-config USB_SERIAL_MOTOROLA
-       tristate "USB Motorola Phone modem driver"
-       ---help---
-         Say Y here if you want to use a Motorola phone with a USB
-         connector as a modem link.
-
-         To compile this driver as a module, choose M here: the
-         module will be called moto_modem.  If unsure, choose N.
-
 config USB_SERIAL_NAVMAN
        tristate "USB Navman GPS device"
        help
@@ -525,14 +526,6 @@ config USB_SERIAL_SPCP8X5
          To compile this driver as a module, choose M here: the
          module will be called spcp8x5.
 
-config USB_SERIAL_HP4X
-        tristate "USB HP4x Calculators support"
-        help
-          Say Y here if you want to use an Hewlett-Packard 4x Calculator.
-
-          To compile this driver as a module, choose M here: the
-          module will be called hp4x.
-
 config USB_SERIAL_SAFE
        tristate "USB Safe Serial (Encapsulated) Driver"
 
@@ -540,14 +533,6 @@ config USB_SERIAL_SAFE_PADDED
        bool "USB Secure Encapsulated Driver - Padded"
        depends on USB_SERIAL_SAFE
 
-config USB_SERIAL_SIEMENS_MPI
-       tristate "USB Siemens MPI driver"
-       help
-         Say M here if you want to use a Siemens USB/MPI adapter.
-
-         To compile this driver as a module, choose M here: the
-         module will be called siemens_mpi.
-
 config USB_SERIAL_SIERRAWIRELESS
        tristate "USB Sierra Wireless Driver"
        help
@@ -639,14 +624,6 @@ config USB_SERIAL_OPTICON
          To compile this driver as a module, choose M here: the
          module will be called opticon.
 
-config USB_SERIAL_VIVOPAY_SERIAL
-        tristate "USB ViVOpay serial interface driver"
-        help
-          Say Y here if you want to use a ViVOtech ViVOpay USB device.
-
-          To compile this driver as a module, choose M here: the
-          module will be called vivopay-serial.
-
 config USB_SERIAL_XSENS_MT
        tristate "Xsens motion tracker serial interface driver"
        help
@@ -659,14 +636,6 @@ config USB_SERIAL_XSENS_MT
          To compile this driver as a module, choose M here: the
          module will be called xsens_mt.
 
-config USB_SERIAL_ZIO
-       tristate "ZIO Motherboard USB serial interface driver"
-       help
-         Say Y here if you want to use ZIO Motherboard.
-
-         To compile this driver as a module, choose M here: the
-         module will be called zio.
-
 config USB_SERIAL_WISHBONE
        tristate "USB-Wishbone adapter interface driver"
        help
@@ -710,23 +679,6 @@ config USB_SERIAL_QT2
          To compile this driver as a module, choose M here: the
          module will be called quatech-serial.
 
-config USB_SERIAL_FLASHLOADER
-       tristate "Infineon Modem Flashloader USB interface driver"
-       help
-         Say Y here if you want to download Infineon Modem
-         via USB Flashloader serial driver.
-
-         To compile this driver as a module, choose M here: the
-         module will be called flashloader.
-
-config USB_SERIAL_SUUNTO
-       tristate "USB Suunto ANT+ driver"
-       help
-         Say Y here if you want to use the Suunto ANT+ USB device.
-
-         To compile this driver as a module, choose M here: the
-         module will be called suunto.
-
 config USB_SERIAL_DEBUG
        tristate "USB Debugging Device"
        help
index a14a870d993fe3bc1ea60001c9f1dcb6637c620a..42670f0b5bc0e0e85354cd758a9ed0adce655afe 100644 (file)
@@ -24,9 +24,7 @@ obj-$(CONFIG_USB_SERIAL_EDGEPORT_TI)          += io_ti.o
 obj-$(CONFIG_USB_SERIAL_EMPEG)                 += empeg.o
 obj-$(CONFIG_USB_SERIAL_F81232)                        += f81232.o
 obj-$(CONFIG_USB_SERIAL_FTDI_SIO)              += ftdi_sio.o
-obj-$(CONFIG_USB_SERIAL_FUNSOFT)               += funsoft.o
 obj-$(CONFIG_USB_SERIAL_GARMIN)                        += garmin_gps.o
-obj-$(CONFIG_USB_SERIAL_HP4X)                  += hp4x.o
 obj-$(CONFIG_USB_SERIAL_IPAQ)                  += ipaq.o
 obj-$(CONFIG_USB_SERIAL_IPW)                   += ipw.o
 obj-$(CONFIG_USB_SERIAL_IR)                    += ir-usb.o
@@ -39,7 +37,6 @@ obj-$(CONFIG_USB_SERIAL_MCT_U232)             += mct_u232.o
 obj-$(CONFIG_USB_SERIAL_METRO)                 += metro-usb.o
 obj-$(CONFIG_USB_SERIAL_MOS7720)               += mos7720.o
 obj-$(CONFIG_USB_SERIAL_MOS7840)               += mos7840.o
-obj-$(CONFIG_USB_SERIAL_MOTOROLA)              += moto_modem.o
 obj-$(CONFIG_USB_SERIAL_NAVMAN)                        += navman.o
 obj-$(CONFIG_USB_SERIAL_OMNINET)               += omninet.o
 obj-$(CONFIG_USB_SERIAL_OPTICON)               += opticon.o
@@ -50,11 +47,10 @@ obj-$(CONFIG_USB_SERIAL_QCAUX)                      += qcaux.o
 obj-$(CONFIG_USB_SERIAL_QUALCOMM)              += qcserial.o
 obj-$(CONFIG_USB_SERIAL_QT2)                   += quatech2.o
 obj-$(CONFIG_USB_SERIAL_SAFE)                  += safe_serial.o
-obj-$(CONFIG_USB_SERIAL_SIEMENS_MPI)           += siemens_mpi.o
 obj-$(CONFIG_USB_SERIAL_SIERRAWIRELESS)                += sierra.o
+obj-$(CONFIG_USB_SERIAL_SIMPLE)                        += usb-serial-simple.o
 obj-$(CONFIG_USB_SERIAL_SPCP8X5)               += spcp8x5.o
 obj-$(CONFIG_USB_SERIAL_SSU100)                        += ssu100.o
-obj-$(CONFIG_USB_SERIAL_SUUNTO)                        += suunto.o
 obj-$(CONFIG_USB_SERIAL_SYMBOL)                        += symbolserial.o
 obj-$(CONFIG_USB_SERIAL_WWAN)                  += usb_wwan.o
 obj-$(CONFIG_USB_SERIAL_TI)                    += ti_usb_3410_5052.o
@@ -62,8 +58,5 @@ obj-$(CONFIG_USB_SERIAL_VISOR)                        += visor.o
 obj-$(CONFIG_USB_SERIAL_WISHBONE)              += wishbone-serial.o
 obj-$(CONFIG_USB_SERIAL_WHITEHEAT)             += whiteheat.o
 obj-$(CONFIG_USB_SERIAL_XIRCOM)                        += keyspan_pda.o
-obj-$(CONFIG_USB_SERIAL_VIVOPAY_SERIAL)                += vivopay-serial.o
 obj-$(CONFIG_USB_SERIAL_XSENS_MT)              += xsens_mt.o
-obj-$(CONFIG_USB_SERIAL_ZIO)                   += zio.o
 obj-$(CONFIG_USB_SERIAL_ZTE)                   += zte_ev.o
-obj-$(CONFIG_USB_SERIAL_FLASHLOADER)           += flashloader.o
diff --git a/drivers/usb/serial/flashloader.c b/drivers/usb/serial/flashloader.c
deleted file mode 100644 (file)
index e6f5c10..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Infineon Flashloader driver
- *
- * Copyright (C) 2013 Wei Shuai <cpuwolf@gmail.com>
- *
- *     This program is free software; you can redistribute it and/or
- *     modify it under the terms of the GNU General Public License version
- *     2 as published by the Free Software Foundation.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-#include <linux/uaccess.h>
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(0x8087, 0x0716) },
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver flashloader_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "flashloader",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &flashloader_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/funsoft.c b/drivers/usb/serial/funsoft.c
deleted file mode 100644 (file)
index 9362f8f..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Funsoft Serial USB driver
- *
- * Copyright (C) 2006 Greg Kroah-Hartman <gregkh@suse.de>
- *
- *     This program is free software; you can redistribute it and/or
- *     modify it under the terms of the GNU General Public License version
- *     2 as published by the Free Software Foundation.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-#include <linux/uaccess.h>
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(0x1404, 0xcddc) },
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver funsoft_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "funsoft",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &funsoft_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/hp4x.c b/drivers/usb/serial/hp4x.c
deleted file mode 100644 (file)
index 2cba60d..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * HP4x Calculators Serial USB driver
- *
- * Copyright (C) 2005 Arthur Huillet (ahuillet@users.sf.net)
- * Copyright (C) 2001-2005 Greg Kroah-Hartman (greg@kroah.com)
- *
- *     This program is free software; you can redistribute it and/or modify
- *     it under the terms of the GNU General Public License as published by
- *     the Free Software Foundation; either version 2 of the License, or
- *     (at your option) any later version.
- *
- * See Documentation/usb/usb-serial.txt for more information on using this
- * driver
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-
-#define DRIVER_DESC "HP4x (48/49) Generic Serial driver"
-
-#define HP_VENDOR_ID 0x03f0
-#define HP49GP_PRODUCT_ID 0x0121
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(HP_VENDOR_ID, HP49GP_PRODUCT_ID) },
-       { }                                     /* Terminating entry */
-};
-
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver hp49gp_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "hp4X",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &hp49gp_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-
-MODULE_DESCRIPTION(DRIVER_DESC);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/moto_modem.c b/drivers/usb/serial/moto_modem.c
deleted file mode 100644 (file)
index c5ff6c7..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Motorola USB Phone driver
- *
- * Copyright (C) 2008 Greg Kroah-Hartman <greg@kroah.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 2 as
- *  published by the Free Software Foundation.
- *
- * {sigh}
- * Motorola should be using the CDC ACM USB spec, but instead
- * they try to just "do their own thing"...  This driver should handle a
- * few phones in which a basic "dumb serial connection" is needed to be
- * able to get a connection through to them.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(0x05c6, 0x3197) }, /* unknown Motorola phone */
-       { USB_DEVICE(0x0c44, 0x0022) }, /* unknown Mororola phone */
-       { USB_DEVICE(0x22b8, 0x2a64) }, /* Motorola KRZR K1m */
-       { USB_DEVICE(0x22b8, 0x2c84) }, /* Motorola VE240 phone */
-       { USB_DEVICE(0x22b8, 0x2c64) }, /* Motorola V950 phone */
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver moto_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "moto-modem",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &moto_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/siemens_mpi.c b/drivers/usb/serial/siemens_mpi.c
deleted file mode 100644 (file)
index a76b1ae..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Siemens USB-MPI Serial USB driver
- *
- * Copyright (C) 2005 Thomas Hergenhahn <thomas.hergenhahn@suse.de>
- * Copyright (C) 2005,2008 Greg Kroah-Hartman <gregkh@suse.de>
- *
- *     This program is free software; you can redistribute it and/or
- *     modify it under the terms of the GNU General Public License version
- *     2 as published by the Free Software Foundation.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-
-#define DRIVER_AUTHOR "Thomas Hergenhahn@web.de http://libnodave.sf.net"
-#define DRIVER_DESC "Driver for Siemens USB/MPI adapter"
-
-
-static const struct usb_device_id id_table[] = {
-       /* Vendor and product id for 6ES7-972-0CB20-0XA0 */
-       { USB_DEVICE(0x908, 0x0004) },
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver siemens_usb_mpi_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "siemens_mpi",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &siemens_usb_mpi_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-
-MODULE_AUTHOR(DRIVER_AUTHOR);
-MODULE_DESCRIPTION(DRIVER_DESC);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/suunto.c b/drivers/usb/serial/suunto.c
deleted file mode 100644 (file)
index 2248e7a..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Suunto ANT+ USB Driver
- *
- * Copyright (C) 2013 Greg Kroah-Hartman <gregkh@linuxfoundation.org>
- * Copyright (C) 2013 Linux Foundation
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 as published by
- * the Free Software Foundation only.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-#include <linux/uaccess.h>
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(0x0fcf, 0x1008) },
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver suunto_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         KBUILD_MODNAME,
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &suunto_device,
-       NULL,
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/usb-serial-simple.c b/drivers/usb/serial/usb-serial-simple.c
new file mode 100644 (file)
index 0000000..6a06131
--- /dev/null
@@ -0,0 +1,110 @@
+/*
+ * USB Serial "Simple" driver
+ *
+ * Copyright (C) 2001-2006,2008,2013 Greg Kroah-Hartman <greg@kroah.com>
+ * Copyright (C) 2005 Arthur Huillet (ahuillet@users.sf.net)
+ * Copyright (C) 2005 Thomas Hergenhahn <thomas.hergenhahn@suse.de>
+ * Copyright (C) 2009 Outpost Embedded, LLC
+ * Copyright (C) 2010 Zilogic Systems <code@zilogic.com>
+ * Copyright (C) 2013 Wei Shuai <cpuwolf@gmail.com>
+ * Copyright (C) 2013 Linux Foundation
+ *
+ *     This program is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License version
+ *     2 as published by the Free Software Foundation.
+ */
+
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/tty.h>
+#include <linux/module.h>
+#include <linux/usb.h>
+#include <linux/usb/serial.h>
+
+#define DEVICE(vendor, IDS)                                    \
+static const struct usb_device_id vendor##_id_table[] = {      \
+       IDS(),                                                  \
+       { },                                                    \
+};                                                             \
+static struct usb_serial_driver vendor##_device = {            \
+       .driver = {                                             \
+               .owner =        THIS_MODULE,                    \
+               .name =         "stringify(vendor)",            \
+       },                                                      \
+       .id_table =             vendor##_id_table,              \
+       .num_ports =            1,                              \
+};
+
+
+/* ZIO Motherboard USB driver */
+#define ZIO_IDS()                      \
+       { USB_DEVICE(0x1CBE, 0x0103) }
+DEVICE(zio, ZIO_IDS);
+
+/* Funsoft Serial USB driver */
+#define FUNSOFT_IDS()                  \
+       { USB_DEVICE(0x1404, 0xcddc) }
+DEVICE(funsoft, FUNSOFT_IDS);
+
+/* Infineon Flashloader driver */
+#define FLASHLOADER_IDS()              \
+       { USB_DEVICE(0x8087, 0x0716) }
+DEVICE(flashloader, FLASHLOADER_IDS);
+
+/* ViVOpay USB Serial Driver */
+#define VIVOPAY_IDS()                  \
+       { USB_DEVICE(0x1d5f, 0x1004) }  /* ViVOpay 8800 */
+DEVICE(vivopay, VIVOPAY_IDS);
+
+/* Motorola USB Phone driver */
+#define MOTO_IDS()                     \
+       { USB_DEVICE(0x05c6, 0x3197) }, /* unknown Motorola phone */    \
+       { USB_DEVICE(0x0c44, 0x0022) }, /* unknown Mororola phone */    \
+       { USB_DEVICE(0x22b8, 0x2a64) }, /* Motorola KRZR K1m */         \
+       { USB_DEVICE(0x22b8, 0x2c84) }, /* Motorola VE240 phone */      \
+       { USB_DEVICE(0x22b8, 0x2c64) }  /* Motorola V950 phone */
+DEVICE(moto_modem, MOTO_IDS);
+
+/* HP4x (48/49) Generic Serial driver */
+#define HP4X_IDS()                     \
+       { USB_DEVICE(0x03f0, 0x0121) }
+DEVICE(hp4x, HP4X_IDS);
+
+/* Suunto ANT+ USB Driver */
+#define SUUNTO_IDS()                   \
+       { USB_DEVICE(0x0fcf, 0x1008) }
+DEVICE(suunto, SUUNTO_IDS);
+
+/* Siemens USB/MPI adapter */
+#define SIEMENS_IDS()                  \
+       { USB_DEVICE(0x908, 0x0004) }
+DEVICE(siemens_mpi, SIEMENS_IDS);
+
+/* All of the above structures mushed into two lists */
+static struct usb_serial_driver * const serial_drivers[] = {
+       &zio_device,
+       &funsoft_device,
+       &flashloader_device,
+       &vivopay_device,
+       &moto_modem_device,
+       &hp4x_device,
+       &suunto_device,
+       &siemens_mpi_device,
+       NULL
+};
+
+static const struct usb_device_id id_table[] = {
+       ZIO_IDS(),
+       FUNSOFT_IDS(),
+       FLASHLOADER_IDS(),
+       VIVOPAY_IDS(),
+       MOTO_IDS(),
+       HP4X_IDS(),
+       SUUNTO_IDS(),
+       SIEMENS_IDS(),
+       { },
+};
+MODULE_DEVICE_TABLE(usb, id_table);
+
+module_usb_serial_driver(serial_drivers, id_table);
+MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/vivopay-serial.c b/drivers/usb/serial/vivopay-serial.c
deleted file mode 100644 (file)
index 6299526..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2001-2005 Greg Kroah-Hartman (greg@kroah.com)
- * Copyright (C) 2009 Outpost Embedded, LLC
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-
-#define DRIVER_DESC "ViVOpay USB Serial Driver"
-
-#define VIVOPAY_VENDOR_ID 0x1d5f
-
-
-static struct usb_device_id id_table [] = {
-       /* ViVOpay 8800 */
-       { USB_DEVICE(VIVOPAY_VENDOR_ID, 0x1004) },
-       { },
-};
-
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver vivopay_serial_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "vivopay-serial",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &vivopay_serial_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-
-MODULE_AUTHOR("Forest Bond <forest.bond@outpostembedded.com>");
-MODULE_DESCRIPTION(DRIVER_DESC);
-MODULE_LICENSE("GPL");
diff --git a/drivers/usb/serial/zio.c b/drivers/usb/serial/zio.c
deleted file mode 100644 (file)
index c043aa8..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * ZIO Motherboard USB driver
- *
- * Copyright (C) 2010 Zilogic Systems <code@zilogic.com>
- *
- *     This program is free software; you can redistribute it and/or
- *     modify it under the terms of the GNU General Public License version
- *     2 as published by the Free Software Foundation.
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/tty.h>
-#include <linux/module.h>
-#include <linux/usb.h>
-#include <linux/usb/serial.h>
-#include <linux/uaccess.h>
-
-static const struct usb_device_id id_table[] = {
-       { USB_DEVICE(0x1CBE, 0x0103) },
-       { },
-};
-MODULE_DEVICE_TABLE(usb, id_table);
-
-static struct usb_serial_driver zio_device = {
-       .driver = {
-               .owner =        THIS_MODULE,
-               .name =         "zio",
-       },
-       .id_table =             id_table,
-       .num_ports =            1,
-};
-
-static struct usb_serial_driver * const serial_drivers[] = {
-       &zio_device, NULL
-};
-
-module_usb_serial_driver(serial_drivers, id_table);
-MODULE_LICENSE("GPL");