aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial
Commit message (Collapse)AuthorAge
* USB: serial: sierra driver indat_callback fixElina Pasheva2010-03-02
| | | | | | | | | | | | | | | | | | | A crash has been reported with sierra driver on disconnect with Ubuntu/Lucid distribution based on kernel-2.6.32. The cause of the crash was determined as "NULL tty pointer was being referenced" and the NULL pointer was passed by sierra_indat_callback(). This patch modifies sierra_indat_callback() function to check for NULL tty structure pointer. This modification prevents a crash from happening when the device is disconnected. This patch fixes the bug reported in Launchpad: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/511157 Signed-off-by: Elina Pasheva <epasheva@sierrawireless.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: sierra driver adding reset_resume functionElina Pasheva2010-03-02
| | | | | | | | | | | | | This patch adds a new function to the sierra.c driver, sierra_reset_resume(). This new function completes the suite of Dynamic Power Management commands in the sierra.c driver. Signed-off-by: Elina Pasheva <epasheva@sierrawireless.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> drivers/usb/serial/sierra.c | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-)
* tty: Fix various bogus WARN checks in the usb serial layerAlan Cox2010-03-02
| | | | | | | | | We are now refcounted and all the port.count checking is no longer valid and in fact produces false warnings. Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cp210x: Add 81E8 (Zephyr Bioharness)Alan Cox2010-03-02
| | | | | | | | | | As reported in http://bugzilla.kernel.org/show_bug.cgi?id=10980 Signed-off-by: Alan Cox <alan@linux.intel.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Convert concatenated __FILE__ to %s, __FILE__Joe Perches2010-03-02
| | | | | | | | | Reduces string space a bit Neaten a macro redefine of dbg Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: Remove unnecessary \n's from dbg usesJoe Perches2010-03-02
| | | | | | | | | #define dbg adds the newline, messages shouldn't. Converted dbg("%s", "some string") to dbg("some string") Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: Add support for ViVOtech ViVOpay devices.Forest Bond2010-03-02
| | | | | | | | | | | Add support for USB serial interface provided by ViVOtech ViVOpay devices via new driver vivopay-serial. Currently only the ViVOpay 8800 device is supported, but support for similar devices can be added by adding the appropriate device IDs to the driver. Signed-off-by: Forest Bond <forest.bond@outpostembedded.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: add new ftdi_sio device idsMitchell Solomon2010-03-02
| | | | | | | | | PID patch for my products Signed-off-by: Mitchell Solomon <mitchjs@rush2112.net> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: Replace BKL with a mutexAlessio Igor Bogani2010-03-02
| | | | | | | | | | | | | | | As Alan Cox have pinpointed the driver still required protection against parallels calls to the config ioctl(). If lock is still necessary the use of BKL is abused here. So replace BKL with a more convenient mutex. Signed-off-by: Alessio Igor Bogani <abogani@texware.it> Cc: Greg Kroah-Hartman <gregkh@suse.de> Cc: Johan Hovold <jhovold@gmail.com> Cc: Alan Cox <alan@linux.intel.com> Cc: Daniel Mack <daniel@caiaq.de> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: add support for serial port on the moschip 7715Mike Dunn2010-03-02
| | | | | | | | | | | | | | | | | Add support for the serial port on devices based on the MosChip 7715, which provides a serial and parallel port on a single usb interface. This is added to the existing driver for the Moschip 7720 dual serial port device. The 7715 is very similiar to the 7720, requiring only the addition of a calc_num_ports() function, a separate interrupt-in endpoint callback, and some manipulation of the port pointers added to the attach() function to correct the fact that the usbserial core erroneously assigns the first bulk in/out endpoint pair to the serial port (the 7715 uses these for its parallel port). There is no support for the 7715's parallel port yet. Signed-off-by: Mike Dunn <mikedunn@newsguy.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: io_edgeport: eliminate get_string()Dan Carpenter2010-03-02
| | | | | | | | | | | | | | | | Johan Hovold points out that get_string() is basically just a re-implimentation of usb_string(). It is also buggy. It does DMA on the stack and it doesn't handle negative returns from usb_get_descriptor(). Plus unicode_to_ascii() is a rubbish function and moving to usb_string() avoids using it. Let's eliminate get_string() entirely. Reported-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Dan Carpenter <error27@gmail.com> Acked-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: correct spelling in implementation fileAndreas Mohr2010-03-02
| | | | | | | | | | - correct spelling - correct non-tabbed .tiocmget/.tiocmset entries Signed-off-by: Andreas Mohr <andi@lisas.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: correct spelling in header filesAndreas Mohr2010-03-02
| | | | | | | | - correct spelling/whitespace in ftdi_sio.h and ftdi_sio_ids.h Signed-off-by: Andreas Mohr <andi@lisas.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: Eliminate useless codeJulia Lawall2010-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | The variables priv and portdata are initialized twice to the same (side effect-free) expressions. Drop one initialization in each case. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // <smpl> @forall@ idexpression *x; identifier f!=ERR_PTR; @@ x = f(...) ... when != x ( x = f(...,<+...x...+>,...) | * x = f(...) ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: option.c: Add 4G W14 stick to blacklist for option_send_setupGernot Hillier2010-03-02
| | | | | | | | | | | | The 4G XS Stick W14 seems to not understand RTS/DTR setting in option_send_setup causing long timeouts on any open() which disturbs a lot of well-known userspace applications like minicom or ModemManager. Therefore, we enable OPTION_BLACKLIST_SENDSETUP blacklisting for it. Signed-off-by: Gernot Hillier <gernot@hillier.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: option.c: Add blacklisting infrastructure for special device ↵Gernot Hillier2010-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | handling As suggested by Matthias Urlichs, this patch adds a somehow generic mechanism for special handling of devices which don't support all bits expected by this driver. The blacklisting code is heavily stolen from sierra.c, but extended to support different special cases. For now, one case is implemented (OPTION_BLACKLIST_SENDSETUP), targeted at the 4G W14 device: devices which don't understand the setting of RTS/DTR in option_send_setup() causing a USB timeout of 5 s in any userspace open() which leads to errors in most userspace applications. In addition, I prepared another case for devices with interfaces which shall not be accessed by this driver (targeted at the D-Link DWM 652). However, OPTION_BLACKLIST_RESERVED_IF is not fully implemented yet as I have no device to test this. Anyone volunteering to help here? If not, I'll contact the guys who added D-Link DWM 652 support soon. Signed-off-by: Gernot Hillier <gernot@hillier.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: option.c: Add chipset information for 4G W14Gernot Hillier2010-03-02
| | | | | | | | | | | | | Carsten Juttner thankfully investigated a bit and found out some details about the chipset used in the 4G W14 device I recently added to option.c. I think this information is useful for reference, so I'd be happy if you could include those bits. Signed-off-by: Gernot Hillier <gernot@hillier.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB serial: make USB device id constantNémeth Márton2010-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The id_table field of the struct usb_device_id is constant in <linux/usb.h> so it is worth to make the initialization data also constant. The semantic match that finds this kind of pattern is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ disable decl_init,const_decl_init; identifier I1, I2, x; @@ struct I1 { ... const struct I2 *x; ... }; @s@ identifier r.I1, y; identifier r.x, E; @@ struct I1 y = { .x = E, }; @c@ identifier r.I2; identifier s.E; @@ const struct I2 E[] = ... ; @depends on !c@ identifier r.I2; identifier s.E; @@ + const struct I2 E[] = ...; // </smpl> Signed-off-by: Németh Márton <nm127@freemail.hu> Cc: Julia Lawall <julia@diku.dk> Cc: cocci@diku.dk Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: use put_unaligned_le32() where necessaryJohan Hovold2010-03-02
| | | | | | | Cc: Lonnie Mendez <dignome@gmail.com> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ch341: use get_unaligned_le16 in break_ctlJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: fix DMA buffers on stack for io_edgeport.cDan Carpenter2010-03-02
| | | | | | | | | | | | | | | | | The original code was passing a stack variable as a dma buffer, so I made it an allocated variable. Instead of adding a bunch of kfree() calls, I changed all the error return paths to gotos. Also I noticed that the error checking wasn't correct because usb_get_descriptor() can return negative values. While I was at it, I made an unrelated white space change by moving the unicode_to_ascii() on to one line. Signed-off-by: Dan Carpenter <error27@gmail.com> Cc: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: kobil_sct: clean up kobil_set_termiosJohan Hovold2010-03-02
| | | | | | | | | Kill string that is allocated and generated using speed and parity settings but is never used (and never has been). Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: visor: fix DMA buffers on stackJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: oti6858: fix DMA buffer on stackJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mos7840: fix DMA buffers on stack and endianess bugsJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mos7720: fix DMA buffers on stack and clean up send_mos_cmdJohan Hovold2010-03-02
| | | | | | | | | Change data-argument type from (void *) to (u8 *) to prevent endianess problems. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: kl5kusb105: fix DMA buffers on stackJohan Hovold2010-03-02
| | | | | | | Cc: Oliver Neukum <oliver@neukum.name> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: keyspan_pda: fix DMA buffers on stackJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: io_ti: fix DMA buffers on stackJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: fix endianess bugJohan Hovold2010-03-02
| | | | | | | Cc: Lonnie Mendez <dignome@gmail.com> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: fix DMA buffer on stackJohan Hovold2010-03-02
| | | | | | | Cc: Lonnie Mendez <dignome@gmail.com> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ch341: use le16_to_cpup to be explicit about endianessJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ch341: fix DMA buffer on stackJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ch341: replace printk warnings with dev_errJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: remove unnecessary initialisationsJohan Hovold2010-03-02
| | | | | | | | | | | | Return values are being initialised to zero only to be unconditionally assigned to a few instructions later. This may give the impression that zero is returned on success, which is not the case. Note also that ftdi_NDI_device_setup never reports errors. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: clean up modem status handlingJohan Hovold2010-03-02
| | | | | | Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: fix DMA buffers on stackJohan Hovold2010-03-02
| | | | | | | | | Also remove unnecessary buffer allocations for zero-length transfers. Reported-by: Matti Aarnio <matti.aarnio@zmailer.org> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: fix latency-timeout endianess bugJohan Hovold2010-03-02
| | | | | | | | Also fixes DMA transfer to stack for latency buffer. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: use error code from usb stack in read_latency_timerJohan Hovold2010-03-02
| | | | | | | | Use same semantics as for write_latency_timer. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: allow unstable baud ratesMike Frysinger2010-03-02
| | | | | | | | | | | | | I've got a crappy cypress converter here, and while running at higher baud rates craps out on throughput, it works fine with lower ones. While it'd be nice to simply use a lower baud rate, not all devices can be configured this way, and it is possible to (slowly) interact at higher rates by sending a byte at a time. So let people force higher rates when they need it via a module parameter. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: unify confusing new baudrate checkMike Frysinger2010-03-02
| | | | | | | | | | The current code has a confusing duplicate new_baudrate init when setting the serial parameters. So just combine the if statement checks to avoid this. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cypress_m8: stop using USB debug driver configMike Frysinger2010-03-02
| | | | | | | | | The USB_SERIAL_DEBUG Kconfig is for the USB serial debug driver, not for generically enabling debug output in random USB serial drivers. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial mct_usb232: move DMA buffers to heapPete Zaitcev2010-03-02
| | | | | | | | | | | My distro kernel (Fedora Rawhide) started throwing warnings from DMA API checker, so I have no choice but band-aid it quick. There's no attempt to reuse DMA buffers. Control messages are only sent rarely anyway. Signed-off-by: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: remove support for 5 and 6 data bitsMark Adamson2010-03-02
| | | | | | | | | | Removed CS5 and CS6 from data bits since these are not supported in FTDI hardware. Signed-off-by: Mark J. Adamson <mark.adamson@ftdichip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: fix initialisation of latency timeoutJohan Hovold2010-03-02
| | | | | | | | | | Latency timeout was read but never stored on port probe. When ASYNC_LOW_LATENCY was cleared the device timeout would get set to 0 rather than the default 16ms. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: fix typo in debug messageJohan Hovold2010-03-02
| | | | | | | Fixes confusing "serial_chars_in_buffer = port 0" messages. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: remove obsolete commentJohan Hovold2010-03-02
| | | | | | | | We always push characters to ldisc immediately regardless of ASYNC_LOW_LATENCY. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: fix error message on closeJohan Hovold2010-03-02
| | | | | | | | Resubmitting read urb fails with -EPERM if completion handler runs while urb is being killed on close. This should not be reported as an error. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: add usbid for dell wwan card to sierra.cRichard Farina2010-02-16
| | | | | | | | | | | | | This patch adds support for Dell Computer Corp. Wireless 5720 VZW Mobile Broadband (EVDO Rev-A) Minicard GPS Port. I stole the name from lsusb, but my card does not have a GPS on it (at least not that I can make function). I'm sure the patch is whitespace damaged but the one line addition should be fairly straightforward nonetheless. Tested-by: Rick Farina <sidhayn@gmail.com> Signed-off-by: Rick Farina <sidhayn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: add device IDs (several ELV, one Mindstorms NXT)Andreas Mohr2010-02-16
| | | | | | | | | | | | | | | | | - add FTDI device IDs for several ELV devices and NXTCam of Lego Mindstorms NXT - add hopefully helpful new_id comment - remove less helpful "Due to many user requests for multiple ELV devices we enable them by default." comment (we simply add _all_ known devices - an enduser shouldn't have to fiddle with obscure module parameters...). - add myself to DRIVER_AUTHOR The missing NXTCam ID has been found at http://www.unixboard.de/vb3/showthread.php?t=44155 , ELV devices taken from ELV Windows .inf file. Signed-off-by: Andreas Mohr <andi@lisas.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>