summaryrefslogtreecommitdiffstats
path: root/drivers/usb (follow)
Commit message (Collapse)AuthorAgeFilesLines
* drivers/*: mark variables with uninitialized_var()Jeff Garzik2007-07-171-1/+1
| | | | | | | | Mark variables in drivers/* with uninitialized_var() if such a warning appears, and analysis proves that the var is initialized properly on all paths it is used. Signed-off-by: Jeff Garzik <jeff@garzik.org>
* drivers/usb/misc/auerswald: fix status check, remove redundant checkJeff Garzik2007-07-171-1/+1
| | | | | | | | | | 1) We should only set 'actual_length' output variable if usb length is known to be good. 2) No need to check actual_length for NULL. The only caller always passes non-NULL value. Signed-off-by: Jeff Garzik <jeff@garzik.org>
* no USB on M32RAl Viro2007-07-171-1/+1
| | | | | | | Won't build due to lack of dma-mapping. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Freezer: make kernel threads nonfreezable by defaultRafael J. Wysocki2007-07-174-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the freezer treats all tasks as freezable, except for the kernel threads that explicitly set the PF_NOFREEZE flag for themselves. This approach is problematic, since it requires every kernel thread to either set PF_NOFREEZE explicitly, or call try_to_freeze(), even if it doesn't care for the freezing of tasks at all. It seems better to only require the kernel threads that want to or need to be frozen to use some freezer-related code and to remove any freezer-related code from the other (nonfreezable) kernel threads, which is done in this patch. The patch causes all kernel threads to be nonfreezable by default (ie. to have PF_NOFREEZE set by default) and introduces the set_freezable() function that should be called by the freezable kernel threads in order to unset PF_NOFREEZE. It also makes all of the currently freezable kernel threads call set_freezable(), so it shouldn't cause any (intentional) change of behaviour to appear. Additionally, it updates documentation to describe the freezing of tasks more accurately. [akpm@linux-foundation.org: build fixes] Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Nigel Cunningham <nigel@nigel.suspend2.net> Cc: Pavel Machek <pavel@ucw.cz> Cc: Oleg Nesterov <oleg@tv-sign.ru> Cc: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* minimal fixes for drivers/usb/gadget/m66592-udc.cAl Viro2007-07-161-23/+4
| | | | | | | still looks racy (and definitely leaks) Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Revert "USB: fix gregkh-usb-usb-use-menuconfig-objects"Linus Torvalds2007-07-131-0/+1
| | | | | | | | | | | | This reverts commit acb11c8b8020f1f1b2545152020675ef32d09a58. It was broken. We most certainly *do* want the default to be the old behaviour (and the common case!), instead of breaking everybodys configuration and making 99% of all people have to override the default. What were you guys thinking? Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* USB: ohci-pnx4008: Remove unnecessary cast of return value of kzallocSuresh Jayaraman2007-07-131-1/+1
| | | | | | | | | Remove unnecessary cast of return value of kzalloc() in usb/host/ohci-pnx4008.c Signed-off-by: Suresh Jayaraman <sjayaraman@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: additions to the quirk listOliver Neukum2007-07-131-0/+8
| | | | | | | | | this adds some scanners reported to be crashed by autosuspend to the quirk list. Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb-storage: implement autosuspendAlan Stern2007-07-132-11/+29
| | | | | | | | | | This patch (as930) implements autosuspend for usb-storage. It is adapted from a patch by Oliver Neukum. Autosuspend is allowed except during LUN scanning, resets, and command execution. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: cdc-acm: add new device id to option driverAndrey Arapov2007-07-131-0/+3
| | | | | | | | | | USB: add new device id to option driver device is Samsung X180 China cellphone Signed-off-by: Andrey Arapov <andrey.arapov@gmail.com> Acked-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: goku_udc trivial cleanupsDavid Brownell2007-07-132-23/+23
| | | | | | | | | Minor fixes to goku_udc ... whitespace, let -DDEBUG do its thing, check the return value of device_register(), sparse tweaks. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb gadget stack can now -DDEBUG with KconfigDavid Brownell2007-07-133-82/+100
| | | | | | | | | | | | | | Although the other USB driver directories got taught how use Kconfig and the Makefile to enable the debugging messages enabled by -DDEBUG, the gadget stack was overlooked. This patch remedies that omission, but doesn't update any drivers to remove previous idiosyncracies in this area ... other than the RNDIS code, which defined its own DEBUG() macro in a broken way. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb gadget stack: remove usb_ep_*_buffer(), part 2David Brownell2007-07-139-429/+0
| | | | | | | | | | | | | | | | | | | | This patch removes controller driver infrastructure which supported the now-removed usb_ep_{alloc,free}_buffer() calls. As can be seen, many of the implementations of this were broken to various degrees. Many didn't properly return dma-coherent mappings; those which did so were necessarily ugly because of bogosity in the underlying dma_free_coherent() calls ... which on many platforms can't be called from the same contexts (notably in_irq) from which their dma_alloc_coherent() sibling can be called. The main potential downside of removing this is that gadget drivers wouldn't have specific knowledge that the controller drivers have: endpoints that aren't dma-capable don't need any dma mappings at all. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb gadget stack: remove usb_ep_*_buffer(), part 1David Brownell2007-07-134-29/+11
| | | | | | | | | | | | | | | | | | | | | | Remove usb_ep_{alloc,free}_buffer() calls, for small dma-coherent buffers. This patch just removes the interface and its users; later patches will remove controller driver support. - This interface is invariably not implemented correctly in the controller drivers (e.g. using dma pools, a mechanism which post-dates the interface by several years). - At this point no gadget driver really *needs* to use it. In current kernels, any driver that needs such a mechanism could allocate a dma pool themselves. Removing this interface is thus a simplification and improvement. Note that the gmidi.c driver had a bug in this area; fixed. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: pxa2xx_udc -- cleanups, mostly removing dma hooksDavid Brownell2007-07-132-404/+25
| | | | | | | | | | | | | | | | | | | | Cleanups to the pxa2xx_udc code: - Primarily removing unused DMA hooks. - One "sparse" warning removed - Remove some Lubbock-only LED hooks (for debugging) That DMA code was never really completed. It worked, mostly, for IN transfers (to the host) if they were fortuitously aligned, but that code was never fully tested. And it was never coded for OUT transfers (which is where DMA would really help) ... because of chip errata on essentially every chip other than the pxa255, and because of design botches (nothing automated data toggle). So it's effectively been dead code for several years now ... no point in keeping it around. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: pxa2xx_udc: use generic gpio layerMilan Svoboda2007-07-131-14/+49
| | | | | | | | | | This patch lets the pxa2xx_udc use the generic gpio layer, on the relevant PXA and IXP systems. Signed-off-by: Milan Svoboda <msvoboda@ra.rockwell.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: quirk for samsung printerOliver Neukum2007-07-131-0/+2
| | | | | | | | this printer does not survive suspension. Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb/dma doc updatesDavid Brownell2007-07-131-5/+6
| | | | | | | | | | | | | | | | | | | | | | This patch updates some of the documentation about DMA buffer management for USB, and ways to avoid extra copying. Our understanding of the issues has improved over time. - Most drivers should *avoid* the dma-coherent allocators. There are a few exceptions (like the HID driver). - Some methods are currently commented out; it seems folk writing USB drivers aren't doing performance tuning at that level yet. - Just avoid highmem; there's no good way to pass an "I can do highmem DMA" capability through a driver stack. This is easy, everything already avoids highmem. But it'd be nice if x86_32 systems with much physical memory could use it directly with network adapters and mass storage devices. (Patch, anyone?) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: drivers/usb/storage/unusual_devs.h whitespace cleanupS.Caglar Onur2007-07-131-94/+94
| | | | | | | | | | Following patch removes trailing whitespaces at the ends of lines and converts smarttabs/whitespaces into real tabs. Signed-off-by: S.Caglar Onur <caglar@pardus.org.tr> Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: remove Makefile reference to obsolete OHCI_AT91Robert P. J. Day2007-07-131-1/+0
| | | | | | | Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: io_*: remove bogus termios no change checksAlan Cox2007-07-132-17/+0
| | | | | | | Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mos7720: remove bogus no termios change checkAlan Cox2007-07-131-10/+0
| | | | | | | Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: visor and whiteheat: remove bogus termios change checksAlan Cox2007-07-132-17/+0
| | | | | | | Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: pl2303: remove bogus checks and fix speed support to use ↵Alan Cox2007-07-131-32/+1
| | | | | | | | | tty_get_baud_rate() Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mos7840.c: turn this into a serial driverAlan Cox2007-07-131-72/+0
| | | | | | | | | | | | | | The MOS driver is "interesting", in a bad kind of 'how the hell did this get merged' kind of way - Remove the bogus termios change check - Remove the duplicate code for half the ioctls - Remove the supporting code to duplicate the ioctl code Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: make the usb_device numa_node get assigned from controllerYinghai Lu2007-07-131-0/+1
| | | | | | | | | | | | So we can use dev_to_node(&usb_dev->dev) later in kmalloc_node to dma buffer Signed-off-by: Yinghai Lu <yinghai.lu@sun.com> Cc: Andi Kleen <ak@suse.de> Acked-by: Christoph Lameter <clameter@sgi.com> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: ftdi_sio: fix oops due to processing workarounds too earlyOliver Neukum2007-07-131-60/+44
| | | | | | | | | | | | | | Fix an oops that happens in relation with applying work arounds for buggy ftdi_sio devices. The quirks were handled too early because due to changes in the initialisation of usb serial devices the device was not fully initialised when the old hook was called. Addresses bug 8564 Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: fix gregkh-usb-usb-use-menuconfig-objectsJan Engelhardt2007-07-131-1/+0
| | | | | | | | | | Generally, Jens Axboe was against 'default y', so I'll have some patches to remove it. Cc: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Make usb-autosuspend timer 1 sec jiffy alignedVenki Pallipadi2007-07-131-1/+1
| | | | | | | | | | | | Make usb autosuspend timers 1sec jiffy aligned. This helps to reduce the frequency at which the CPU must be taken out of a lower-power state. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Don't autosuspend Blackberry devices.Jeremy Katz2007-07-131-0/+5
| | | | | | | | | Blackberry devices charge over USB. By autosuspending the port, they are not able to charge reliably. Signed-off-by: Jeremy Katz <katzj@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Support Blackberry Pearl with berry_chargeJeremy Katz2007-07-131-0/+35
| | | | | | | | | | | | | | The Blackberry Pearl (8100) needs similar tweaks as older Blackberry models to be able to charge when connected via USB. The Pearl also adds an additional need to go into a separate mode for fully accessing the device; do that by default as well. Changes based on the changes from bcharge in the barry project (http://barry.sf.net) Signed-off-by: Jeremy Katz <katzj@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: add IAD support to usbfs and sysfsCraig W. Nadler2007-07-134-0/+106
| | | | | | | | | | | | | | | | USB_IAD: Adds support for USB Interface Association Descriptors. This patch adds support to the USB host stack for parsing, storing, and displaying Interface Association Descriptors. In /proc/bus/usb/devices lines starting with A: show the fields in an IAD. In sysfs if an interface on a USB device is referenced by an IAD the following files will be added to the sysfs directory for that interface: iad_bFirstInterface, iad_bInterfaceCount, iad_bFunctionClass, and iad_bFunctionSubClass, iad_bFunctionProtocol Signed-off-by: Craig W. Nadler <craig@nadler.us> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mos7720: change developer email addressesGreg Kroah-Hartman2007-07-131-3/+3
| | | | | | | | | | | Update the original developer's email addresses at their request. Cc: Vijaya Kumar <vijaykumar.gn@gmail.com> Cc: Ajay Kumar <naanuajay@yahoo.com> Cc: Gurudeva <ngurudeva@yahoo.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Fix off-by-1 error in the scatter-gather libraryAlan Stern2007-07-131-4/+3
| | | | | | | | | | | | | | | | The loop in usb_sg_wait() is structured in a way that makes it hard to tell, when the loop exits, whether or not the last URB submission succeeded. This patch (as928) changes it from a "for" loop to a "while" loop and keeps "i" always equal to the number of successful submissions. This fixes an off-by-one error which can show up when the first URB submission fails. The patch also removes a couple of lines that initialize fields which don't need to be initialized. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Don't resume root hub if the controller is suspendedAlan Stern2007-07-134-6/+11
| | | | | | | | | | | | | | | | | | | Root hubs can't be resumed if their parent controller device is still suspended. This patch (as925) adds a check for that condition in hcd_bus_resume() and prevents it from being treated as a fatal controller failure. ehci-hcd is updated to add the corresponding test. Unnecessary debugging messages are removed from uhci-hcd and dummy-hcd. The error return code from dummy-hcd is changed to -ESHUTDOWN, the same as the others. ohci-hcd doesn't need any changes. Suspend handling in the non-PCI host drivers is somewhat hit-and-miss. This patch shouldn't have any effect on them. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Remove usages of dev->power.power_stateAlan Stern2007-07-132-15/+1
| | | | | | | | | | This patch (as922) removes all but one of the remaining vestiges of dev->power.power_state from usbcore. The only usage left must remain until the deprecated "power/state" sysfs attribute is gone. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usblp: add dynamic URBs, fix racesPete Zaitcev2007-07-131-242/+376
| | | | | | | | | | | | | | | | | | | | | This patch's main bulk aims to make usblp the premier driver for code pillaging once again. The code is as streamlined as possible and is bug-free as possible. The usb-skeleton performs the same function, but is somewhat abstract. The usblp is usb-skeleton which is actually used by many. Since I combed a few small bugs away, this also fixes the small races we had in usblp for a while. For example, now it's possible for several threads to make write(2) calls (sounds silly, but consider a printer for paper record, where every line of text is self-contained and thus it's all right to have them interleaved). Also gone are issues with interrupts using barriers dangerously. This patch makes use of Oliver's anchor, and so it must trail the anchor patch on the way to Linus. Signed-off-by: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: fsl_usb2_udc: fix bug for portsc bit maskingLi Yang2007-07-131-1/+1
| | | | | | | | | Fix a bug that PORT_TYPE and PORT_WIDTH aren't masked correctly in portsc. Signed-off-by: Christopher Cason <chris.cason@nec.com.au> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: autosuspend for usblcdOliver Neukum2007-07-131-3/+43
| | | | | | | | | | this patch implements autosuspend for the usblcd driver. It uses the new usb_anchor infrastructure. Many thanks to Georges for testing. Signed-off-by: Oliver Neukum <oneukum@suse.de> Cc: Georges Toth <g.toth@e-biz.lu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb gadget: Rename husb2dev -> usbaHaavard Skinnemoen2007-07-132-5/+5
| | | | | | | | | | husb2dev was the internal name of the USB Device Controller on AT32AP7000. Rename it to "atmel_usba", which is closer to the official name used in documentation and marketing material. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Add URB_FREE_BUFFER flag and the logic behind itMarcel Holtmann2007-07-131-0/+3
| | | | | | | | | | | | | | USB: Add URB_FREE_BUFFER flag for freeing the transfer buffer In some cases it is not needed that the driver keeps track of the transfer buffer of an URB. It can be simply freed along with the URB itself when the reference count goes down to zero. The new flag URB_FREE_BUFFER enables this behavior. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Fix up full-speed bInterval values in high-speed interrupt descriptorLaurent Pinchart2007-07-131-3/+9
| | | | | | | | | | | Many device manufacturers are using full-speed bInterval values in high-speed interrupt endpoint descriptors. If the bInterval value is greater than 16, assume the device uses full-speed descriptors and fix the value accordingly. Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb-skeleton: use anchors in pre/post resetOliver Neukum2007-07-131-0/+23
| | | | | | | | use anchors in pre/post_reset Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb-skeleton" use anchors in suspend/resume handlingOliver Neukum2007-07-131-5/+37
| | | | | | | | use anchors in suspend/resume handling Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb-skeleton: use anchors in disconnect handlingOliver Neukum2007-07-131-0/+2
| | | | | | | | use anchors in disconnect handling Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: ir_usb: Clean up the worst of it, remove exciting 'crash on ↵Alan Cox2007-07-131-82/+60
| | | | | | | | | | | | | | | | | | | | open' feature - Drivers don't call ldisc termios methods. They certainly don't call them the way this one does - remove wrong call - The tty buffer code isn't designed to be abused from IRQ handlers and the new buffering removes the need for the uglies involved - fix them - Style - Remove incorrect baud and change handling for termios changes The driver now has some style, but not a lot - it goes insane if you have two dongles for example as it continues to use global variables for per dongle state. That bit isn't my problem. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: belkin_sa: Various needed fixesAlan Cox2007-07-131-42/+27
| | | | | | | | | | | | | | | | | | Use the baud rate stuff from the kernel don't parse CBAUD directly Remove pointless and wrong 'no change' check Could do with some good testing as well but again better than adding && BROKEN (The use of BELKIN_SA_BAUD() might seem a bit odd but x/a = b and x/b = a (rounded for integers)). Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: serial: ark3116.c: Mixed fixupsAlan Cox2007-07-131-38/+23
| | | | | | | | | | | | | | | | o Don't parse the cflag for baud rates, its not valid to do so any more and this driver got it wrong anyway o Don't do clever termios change checks in drivers and get them wrong (arguably we should do some smart ones in the tty core but stty to change nothing is *not* a common or critical path I don't have the hardware so if you can test this carefully please do. I thought fixing it up this far was better than marking it and other bits of USB serial && BROKEN Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: sierra: cleanup the startup and shutdown pathGreg Kroah-Hartman2007-07-131-89/+41
| | | | | | | | | | | | | | | | | This removes the ugly code that was copied from the keyspan driver and allocates the in urbs in a much shorter code path that can be understood easier. Also turned off the interrupt urb when no port was open as it's not nice to keep the bus busy for no good reason at all (this should be a power savings.) All in all, this saved over 40 lines of code and cleaned things up better. Cc: Kevin Lloyd <linux@sierrawireless.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: sierra: remove incorrect usage of the urb status fieldGreg Kroah-Hartman2007-07-131-114/+107
| | | | | | | | | | | | | | | You can't rely on the fact that the status really is correct like it was. Also simplified the write path and now we allocate the urb and data on the fly, instead of trying to do that really odd timeout check which I am guessing doesn't really work properly. This should speed up the device by keeping the hardware queue full easier. As a benefit, this reduces the size of the driver. Cc: Kevin Lloyd <linux@sierrawireless.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>