]> git.hungrycats.org Git - linux/commitdiff
[PATCH] USB serial: move the ezusb functions into their own file.
authorGreg Kroah-Hartman <greg@kroah.com>
Tue, 26 Nov 2002 06:16:49 +0000 (22:16 -0800)
committerGreg Kroah-Hartman <greg@kroah.com>
Tue, 26 Nov 2002 06:16:49 +0000 (22:16 -0800)
drivers/usb/serial/Kconfig
drivers/usb/serial/Makefile
drivers/usb/serial/ezusb.c [new file with mode: 0644]
drivers/usb/serial/usb-serial.c
drivers/usb/serial/usb-serial.h

index 12cbae5b57040bb46e1b88ceb924e2d4b07dc5ae..305058779a374af241b7971e6f8a8fdc3e713083 100644 (file)
@@ -400,5 +400,10 @@ config USB_SERIAL_OMNINET
          The module will be called omninet.o. If you want to compile it as a
          module, say M here and read <file:Documentation/modules.txt>.
 
+config USB_EZUSB
+       bool
+       depends on USB_SERIAL_KEYSPAN_PDA || USB_SERIAL_XIRCOM || USB_SERIAL_KEYSPAN || USB_SERIAL_WHITEHEAT
+       default y
+
 endmenu
 
index 3e3f9d02924a071e65e6edc5c94e576572d65b47..3b82bb9e1d2a47c907061493a327b96c57546046 100644 (file)
@@ -7,6 +7,7 @@
 obj-$(CONFIG_USB_SERIAL)                       += usbserial.o
 
 usbserial-obj-$(CONFIG_USB_SERIAL_CONSOLE)     += console.o
+usbserial-obj-$(CONFIG_USB_EZUSB)              += ezusb.o
 
 obj-$(CONFIG_USB_SERIAL_VISOR)                 += visor.o
 obj-$(CONFIG_USB_SERIAL_IPAQ)                  += ipaq.o
@@ -29,7 +30,7 @@ obj-$(CONFIG_USB_SERIAL_KLSI)                 += kl5kusb105.o
 obj-$(CONFIG_USB_SERIAL_SAFE)                  += safe_serial.o
 
 # Objects that export symbols.
-export-objs    := usb-serial.o
+export-objs    := usb-serial.o ezusb.o
 
 usbserial-objs := usb-serial.o $(usbserial-obj-y)
 
diff --git a/drivers/usb/serial/ezusb.c b/drivers/usb/serial/ezusb.c
new file mode 100644 (file)
index 0000000..35616b5
--- /dev/null
@@ -0,0 +1,67 @@
+/*
+ * EZ-USB specific functions used by some of the USB to Serial drivers.
+ *
+ * Copyright (C) 1999 - 2002 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.
+ */
+
+#include <linux/config.h>
+#include <linux/kernel.h>
+#include <linux/errno.h>
+#include <linux/init.h>
+#include <linux/slab.h>
+#include <linux/tty.h>
+#include <linux/module.h>
+#include <linux/usb.h>
+
+#ifdef CONFIG_USB_SERIAL_DEBUG
+       static int debug = 1;
+#else
+       static int debug;
+#endif
+
+#include "usb-serial.h"
+
+/* EZ-USB Control and Status Register.  Bit 0 controls 8051 reset */
+#define CPUCS_REG    0x7F92
+
+int ezusb_writememory (struct usb_serial *serial, int address, unsigned char *data, int length, __u8 bRequest)
+{
+       int result;
+       unsigned char *transfer_buffer;
+
+       /* dbg("ezusb_writememory %x, %d", address, length); */
+       if (!serial->dev) {
+               dbg("%s - no physical device present, failing.", __FUNCTION__);
+               return -ENODEV;
+       }
+
+       transfer_buffer =  kmalloc (length, GFP_KERNEL);
+       if (!transfer_buffer) {
+               err("%s - kmalloc(%d) failed.", __FUNCTION__, length);
+               return -ENOMEM;
+       }
+       memcpy (transfer_buffer, data, length);
+       result = usb_control_msg (serial->dev, usb_sndctrlpipe(serial->dev, 0), bRequest, 0x40, address, 0, transfer_buffer, length, 3*HZ);
+       kfree (transfer_buffer);
+       return result;
+}
+
+int ezusb_set_reset (struct usb_serial *serial, unsigned char reset_bit)
+{
+       int     response;
+       dbg("%s - %d", __FUNCTION__, reset_bit);
+       response = ezusb_writememory (serial, CPUCS_REG, &reset_bit, 1, 0xa0);
+       if (response < 0) {
+               err("%s- %d failed", __FUNCTION__, reset_bit);
+       }
+       return response;
+}
+
+
+EXPORT_SYMBOL(ezusb_writememory);
+EXPORT_SYMBOL(ezusb_set_reset);
+
index 1ee4eace260b800d440c26dc319b76b14d883866..d7faa9d3a5eb373ca11b6624e4c22dab8b315282 100644 (file)
@@ -488,45 +488,6 @@ static void return_serial (struct usb_serial *serial)
        return;
 }
 
-#ifdef USES_EZUSB_FUNCTIONS
-/* EZ-USB Control and Status Register.  Bit 0 controls 8051 reset */
-#define CPUCS_REG    0x7F92
-
-int ezusb_writememory (struct usb_serial *serial, int address, unsigned char *data, int length, __u8 bRequest)
-{
-       int result;
-       unsigned char *transfer_buffer;
-
-       /* dbg("ezusb_writememory %x, %d", address, length); */
-       if (!serial->dev) {
-               dbg("%s - no physical device present, failing.", __FUNCTION__);
-               return -ENODEV;
-       }
-
-       transfer_buffer =  kmalloc (length, GFP_KERNEL);
-       if (!transfer_buffer) {
-               err("%s - kmalloc(%d) failed.", __FUNCTION__, length);
-               return -ENOMEM;
-       }
-       memcpy (transfer_buffer, data, length);
-       result = usb_control_msg (serial->dev, usb_sndctrlpipe(serial->dev, 0), bRequest, 0x40, address, 0, transfer_buffer, length, 3*HZ);
-       kfree (transfer_buffer);
-       return result;
-}
-
-int ezusb_set_reset (struct usb_serial *serial, unsigned char reset_bit)
-{
-       int     response;
-       dbg("%s - %d", __FUNCTION__, reset_bit);
-       response = ezusb_writememory (serial, CPUCS_REG, &reset_bit, 1, 0xa0);
-       if (response < 0) {
-               err("%s- %d failed", __FUNCTION__, reset_bit);
-       }
-       return response;
-}
-
-#endif /* USES_EZUSB_FUNCTIONS */
-
 /*****************************************************************************
  * Driver tty interface functions
  *****************************************************************************/
@@ -1699,12 +1660,6 @@ EXPORT_SYMBOL(usb_serial_deregister);
 EXPORT_SYMBOL(usb_serial_probe);
 EXPORT_SYMBOL(usb_serial_disconnect);
 EXPORT_SYMBOL(usb_serial_port_softint);
-#ifdef USES_EZUSB_FUNCTIONS
-       EXPORT_SYMBOL(ezusb_writememory);
-       EXPORT_SYMBOL(ezusb_set_reset);
-#endif
-
-
 
 
 /* Module information */
index 73c83d1a1415bbe4b28b7c8704ddf6a64e44e309..f323e3c15b5d62f8e30731547ac74395810d1e11 100644 (file)
@@ -237,24 +237,8 @@ extern void usb_serial_port_softint(void *private);
 extern int usb_serial_probe(struct usb_interface *iface, const struct usb_device_id *id);
 extern void usb_serial_disconnect(struct usb_interface *iface);
 
-/* determine if we should include the EzUSB loader functions */
-#undef USES_EZUSB_FUNCTIONS
-#if defined(CONFIG_USB_SERIAL_KEYSPAN_PDA) || defined(CONFIG_USB_SERIAL_KEYSPAN_PDA_MODULE)
-       #define USES_EZUSB_FUNCTIONS
-#endif
-#if defined(CONFIG_USB_SERIAL_XIRCOM) || defined(CONFIG_USB_SERIAL_XIRCOM_MODULE)
-       #define USES_EZUSB_FUNCTIONS
-#endif
-#if defined(CONFIG_USB_SERIAL_KEYSPAN) || defined(CONFIG_USB_SERIAL_KEYSPAN_MODULE)
-       #define USES_EZUSB_FUNCTIONS
-#endif
-#if defined(CONFIG_USB_SERIAL_WHITEHEAT) || defined(CONFIG_USB_SERIAL_WHITEHEAT_MODULE)
-       #define USES_EZUSB_FUNCTIONS
-#endif
-#ifdef USES_EZUSB_FUNCTIONS
 extern int ezusb_writememory (struct usb_serial *serial, int address, unsigned char *data, int length, __u8 bRequest);
 extern int ezusb_set_reset (struct usb_serial *serial, unsigned char reset_bit);
-#endif
 
 /* USB Serial console functions */
 #ifdef CONFIG_USB_SERIAL_CONSOLE