diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-02-01 22:28:57 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-02-01 22:28:57 -0500 |
commit | b6cf160c4b788a31f6a4017a469b956ca77febf4 (patch) | |
tree | d4d525000e283fe08905385d91dd0170454eae9a /drivers/usb/serial/cp2101.c | |
parent | ed50d6cbc394cd0966469d3e249353c9dd1d38b9 (diff) | |
parent | 2c044a4803804708984931bcbd03314732e995d5 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (128 commits)
USB: fix codingstyle issues in drivers/usb/core/*.c
USB: fix codingstyle issues in drivers/usb/core/message.c
USB: fix codingstyle issues in drivers/usb/core/hcd-pci.c
USB: fix codingstyle issues in drivers/usb/core/devio.c
USB: fix codingstyle issues in drivers/usb/core/devices.c
USB: fix codingstyle issues in drivers/usb/core/*.h
USB: fix codingstyle issues in include/linux/usb/
USB: fix codingstyle issues in include/linux/usb.h
USB: mark USB drivers as being GPL only
USB: use a real vendor and product id for root hubs
USB: mount options: fix usbfs
USB: Fix usb_serial_driver structure for Kobil cardreader driver.
usb: ehci should use u16 for isochronous intervals
usb: ehci, remove false clear-reset path
USB: Use menuconfig objects
usb: ohci-sm501 driver
usb: dma bounce buffer support
USB: last abuses of intfdata in close for usb-serial drivers
USB: kl5kusb105 don't flush to logically disconnected devices
USB: oti6858: cleanup
...
Diffstat (limited to 'drivers/usb/serial/cp2101.c')
-rw-r--r-- | drivers/usb/serial/cp2101.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/usb/serial/cp2101.c b/drivers/usb/serial/cp2101.c index 22833589c4be..f3ca66017a03 100644 --- a/drivers/usb/serial/cp2101.c +++ b/drivers/usb/serial/cp2101.c | |||
@@ -59,6 +59,7 @@ static struct usb_device_id id_table [] = { | |||
59 | { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */ | 59 | { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */ |
60 | { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */ | 60 | { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */ |
61 | { USB_DEVICE(0x10B5, 0xAC70) }, /* Nokia CA-42 USB */ | 61 | { USB_DEVICE(0x10B5, 0xAC70) }, /* Nokia CA-42 USB */ |
62 | { USB_DEVICE(0x10C4, 0x800A) }, /* SPORTident BSM7-D-USB main station */ | ||
62 | { USB_DEVICE(0x10C4, 0x803B) }, /* Pololu USB-serial converter */ | 63 | { USB_DEVICE(0x10C4, 0x803B) }, /* Pololu USB-serial converter */ |
63 | { USB_DEVICE(0x10C4, 0x8053) }, /* Enfora EDG1228 */ | 64 | { USB_DEVICE(0x10C4, 0x8053) }, /* Enfora EDG1228 */ |
64 | { USB_DEVICE(0x10C4, 0x8066) }, /* Argussoft In-System Programmer */ | 65 | { USB_DEVICE(0x10C4, 0x8066) }, /* Argussoft In-System Programmer */ |
@@ -76,8 +77,13 @@ static struct usb_device_id id_table [] = { | |||
76 | { USB_DEVICE(0x10C4, 0x8218) }, /* Lipowsky Industrie Elektronik GmbH, HARP-1 */ | 77 | { USB_DEVICE(0x10C4, 0x8218) }, /* Lipowsky Industrie Elektronik GmbH, HARP-1 */ |
77 | { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */ | 78 | { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */ |
78 | { USB_DEVICE(0x10C4, 0xEA61) }, /* Silicon Labs factory default */ | 79 | { USB_DEVICE(0x10C4, 0xEA61) }, /* Silicon Labs factory default */ |
80 | { USB_DEVICE(0x10C4, 0xF001) }, /* Elan Digital Systems USBscope50 */ | ||
81 | { USB_DEVICE(0x10C4, 0xF002) }, /* Elan Digital Systems USBwave12 */ | ||
82 | { USB_DEVICE(0x10C4, 0xF003) }, /* Elan Digital Systems USBpulse100 */ | ||
83 | { USB_DEVICE(0x10C4, 0xF004) }, /* Elan Digital Systems USBcount50 */ | ||
79 | { USB_DEVICE(0x10C5, 0xEA61) }, /* Silicon Labs MobiData GPRS USB Modem */ | 84 | { USB_DEVICE(0x10C5, 0xEA61) }, /* Silicon Labs MobiData GPRS USB Modem */ |
80 | { USB_DEVICE(0x13AD, 0x9999) }, /* Baltech card reader */ | 85 | { USB_DEVICE(0x13AD, 0x9999) }, /* Baltech card reader */ |
86 | { USB_DEVICE(0x166A, 0x0303) }, /* Clipsal 5500PCU C-Bus USB interface */ | ||
81 | { USB_DEVICE(0x16D6, 0x0001) }, /* Jablotron serial interface */ | 87 | { USB_DEVICE(0x16D6, 0x0001) }, /* Jablotron serial interface */ |
82 | { } /* Terminating Entry */ | 88 | { } /* Terminating Entry */ |
83 | }; | 89 | }; |
@@ -342,7 +348,10 @@ static void cp2101_close (struct usb_serial_port *port, struct file * filp) | |||
342 | usb_kill_urb(port->write_urb); | 348 | usb_kill_urb(port->write_urb); |
343 | usb_kill_urb(port->read_urb); | 349 | usb_kill_urb(port->read_urb); |
344 | 350 | ||
345 | cp2101_set_config_single(port, CP2101_UART, UART_DISABLE); | 351 | mutex_lock(&port->serial->disc_mutex); |
352 | if (!port->serial->disconnected) | ||
353 | cp2101_set_config_single(port, CP2101_UART, UART_DISABLE); | ||
354 | mutex_unlock(&port->serial->disc_mutex); | ||
346 | } | 355 | } |
347 | 356 | ||
348 | /* | 357 | /* |