aboutsummaryrefslogtreecommitdiff
path: root/drivers/usb
AgeCommit message (Collapse)Author
2008-11-19s3c2410-usb-switch.patchmokopatches
2008-11-19s3c2410_udc-2440_dual_packet-workaround.patchmokopatches
This is a patch that seems to make the USB hangs on the S3C2440 go away. At least a good amount of ping torture didn't make them come back so far. The issue is that, if there are several back-to-back packets, sometimes no interrupt is generated for one of them. This seems to be caused by the mysterious dual packet mode, which the USB hardware enters automatically if the endpoint size is half that of the FIFO. (On the 2440, this is the normal situation for bulk data endpoints.) There is also a timing factor in this. I think what happens is that the USB hardware automatically sends an acknowledgement if there is only one packet in the FIFO (the FIFO has space for two). If another packet arrives before the host has retrieved and acknowledged the previous one, no interrupt is generated for that second one. However, there may be an indication. There is one undocumented bit (none of the 244x manuals document it), OUT_CRS1_REG[1], that seems to be set suspiciously often when this condition occurs. There is also CLR_DATA_TOGGLE, OUT_CRS1_REG[7], which may have a function related to this. (The Samsung manual is rather terse on that, as usual.) This needs to be examined further. For now, the patch seems to do the trick. Note that this is not a clean solution by any means, because we might potentially get stuck in that interrupt for quite a while.
2008-11-19g_ether-vendor_product.patchmokopatches
Use FIC's own USB Vendor ID rather than NetChip's Yes, we could solve this by some modprobe.conf parameters, but I'd like to rather not rely on this.
2008-11-19g_ether-highpower.patchmokopatches
2008-11-03Merge branch 'master' of ↵Ben Dooks
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into s3c64xx
2008-11-01saner FASYNC handling on file closeAl Viro
As it is, all instances of ->release() for files that have ->fasync() need to remember to evict file from fasync lists; forgetting that creates a hole and we actually have a bunch that *does* forget. So let's keep our lives simple - let __fput() check FASYNC in file->f_flags and call ->fasync() there if it's been set. And lose that crap in ->release() instances - leaving it there is still valid, but we don't have to bother anymore. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-31Merge branch 'master' of ↵Ben Dooks
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into s3c64xx
2008-10-30tty: Fix USB kref leakAlan Cox
When we close we must clear the extra reference we got when we read port->tty. Setting the port tty NULL will clear the kref held by the driver but not the one we obtained ourselves while doing the lookup. Signed-off-by: Alan Cox <alan@redhat.com> Tested-by: Helge Hafting <helge.hafting@aitel.hist.no> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-30[ARM] S3C24XX: Movev udc headers to arch/arm/plat-s3c24xx/include/platBen Dooks
Move the udc headers to the proper home in arch/arm/plat-s3c24xx/include/plat ready to clean out the old include directories. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2008-10-29USB: prevent autosuspend during hub initializationAlan Stern
This patch (as1153) fixes a potential problem in hub initialization. Starting in 2.6.28, initialization was split into several tasks to help speed up booting. This opens the possibility that the hub may be autosuspended before all the initialization tasks can complete. Normally that wouldn't matter, but with incomplete initialization there is a risk that the hub would never autoresume -- especially if devices were plugged into the hub beforehand. The solution is a simple one-line change to suppress autosuspend until the initialization is finished. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-29USB: Unusual dev for the "Kyocera / Contax SL300R T*" digital camera.Jens Taprogge
The camera reports an incorrect size and fails to handle PREVENT-ALLOW MEDIUM REMOVAL commands. The patch marks the camera as an unusual dev and adds the flags to enable the workarounds for both shortcomings. Signed-off-by: Jens Taprogge <jens.taprogge@taprogge.org> Cc: Alan Stern <stern@rowland.harvard.edu> Cc: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-29USB: usbtmc: Use explicit unsigned type for input buffer instead of char*Chris Malley
Silences compiler warning about comparison with 0x80, and type now matches the corresponding _bulk_out function. drivers/usb/class/usbtmc.c: In function ‘usbtmc_ioctl_abort_bulk_in’: drivers/usb/class/usbtmc.c:163: warning: comparison is always false due to limited range of data type Signed-off-by: Chris Malley <mail@chrismalley.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-29USB: fix crash when URBs are unlinked after the device is goneAlan Stern
This patch (as1151) protects usbcore against drivers that try to unlink an URB after the URB's device or bus have been removed. The core does not currently check for this, and certain drivers can cause a crash if they are running while an HCD is unloaded. Certainly it would be best to fix the guilty drivers. But a little defensive programming doesn't hurt, especially since it appears that quite a few drivers need to be fixed. The patch prevents the problem by grabbing a reference to the device while an unlink is in progress and using a new spinlock to synchronize unlinks with device removal. (There's no need to acquire a reference to the bus as well, since the device structure itself keeps a reference to the bus.) In addition, the kerneldoc is updated to indicate that URBs should not be unlinked after the disconnect method returns. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-23Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: don't rebind drivers after failed resume or reset USB: fix memory leak in cdc-acm USB: Unusual dev for Mio moov 330 gps USB: cdc-wdm: make module autoload work USB: Fix unneeded endpoint check in pxa27x_udc usb/gadget: fix kernel-doc warning USB: Speedtouch: add pre_reset and post_reset routines USB: usbtest.c: length, sglen and vary are unsigned, so cannot be negative USB: support Huawei data card product IDs USB: add ZTE MF626 USB GSM modem entry USB: storage: Avoid I/O errors when issuing SCSI ioctls to JMicron USB/ATA bridge USB: Fix debugfs_create_file's error checking method for usb/gadget/s3c2410_udc USB: ohci: add support for tmio-ohci cell
2008-10-23Merge branch 'for-upstream' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb: (47 commits) uwb: wrong sizeof argument in mac address compare uwb: don't use printk_ratelimit() so often uwb: use kcalloc where appropriate uwb: use time_after() when purging stale beacons uwb: add credits for the original developers of the UWB/WUSB/WLP subsystems uwb: add entries in the MAINTAINERS file uwb: depend on EXPERIMENTAL wusb: wusb-cbaf (CBA driver) sysfs ABI simplification uwb: document UWB and WUSB sysfs files uwb: add symlinks in sysfs between radio controllers and PALs uwb: dont tranmit identification IEs uwb: i1480/GUWA100U: fix firmware download issues uwb: i1480: remove MAC/PHY information checking function uwb: add Intel i1480 HWA to the UWB RC quirk table uwb: disable command/event filtering for D-Link DUB-1210 uwb: initialize the debug sub-system uwb: Fix handling IEs with empty IE data in uwb_est_get_size() wusb: fix bmRequestType for Abort RPipe request wusb: fix error path for wusb_set_dev_addr() wusb: add HWA host controller driver ...
2008-10-22USB: don't rebind drivers after failed resume or resetAlan Stern
This patch (as1152) may help prevent some problems associated with the new policy of unbinding drivers that don't support suspend/resume or pre_reset/post_reset. If for any reason the resume or reset fails, and the device is logically disconnected, there's no point in trying to rebind the driver. So the patch checks for success before carrying out the unbind/rebind. There was a report from one user that this fixed a problem he was experiencing, but the details never became fully clear. In any case, adding these tests can't hurt. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: fix memory leak in cdc-acmOliver Neukum
This fixes a memory leak on disconnect in cdc-acm Thanks to 施金前 for finding it. Signed-off-by: Oliver Neukum <oneukum@suse.de> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: Unusual dev for Mio moov 330 gpsFrédéric Marchal
Here is an entry for the unusual_devs.h file to handle a Mio Moov 330 GPS that stops responding when it is requested to transfer more than 64KB. The patch is taken against kernel-2.6.27-git3. Signed-off-by: Frédéric Marchal <frederic.marchal@wowcompany.co Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: cdc-wdm: make module autoload workOliver Neukum
this fixes an omission that led to no alias being computed for the cdc-wdm module. Signed-off-by: Oliver Neukum <oneukum@suse.de> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: Fix unneeded endpoint check in pxa27x_udcRobert Jarzmik
The request allocation code doesn't need to check if the endpoint is not NULL, as the only caller in include/linux/usb/gadget.h, usb_ep_alloc_request() needs the endpoint pointer to have a correct value to trigger the allocation code. Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22usb/gadget: fix kernel-doc warningRandy Dunlap
Fix kernel-doc warning, wrong parameter name listed: Warning(lin2627-g3-kdocfixes//drivers/usb/gadget/config.c:183): No description found for parameter 'match' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: Speedtouch: add pre_reset and post_reset routinesAlan Stern
This patch (as1150) fixes a problem in the speedtch driver. When it resets the modem during probe it will be unbound from the other interfaces it has claimed, because it doesn't define a pre_reset and a post_reset method. The patch defines "do-nothing" methods. This fixes Bugzilla #11767. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: usbtest.c: length, sglen and vary are unsigned, so cannot be negativeroel kluin
length, sglen and vary are unsigned, so cannot be negative see vi drivers/usb/misc/usbtest.c +18 struct usbtest_param { ... unsigned iterations; unsigned length; unsigned vary; unsigned sglen; ... }; Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: support Huawei data card product IDsfangxiaozhi
In this patch, we want to do one thing: add more Huawei product IDs into the USB driver. Then it can support more Huawei data card devices. So to declare the unusual device for new Huawei data card devices in unusual_devs.h and to declare more new product IDs in option.c. To modify the data value and length in the function of usb_stor_huawei_e220_init in initializers.c That's because based on the USB standard, while sending SET_FETURE_D to the device, it requires the corresponding data to be zero, and its sending length also must be zero. In our old solution, it can be compatible with our WCDMA data card devices, but can not support our CDMA data card devices. But in this new solution, it can be compatible with all of our data card devices. Signed-off-by: fangxiaozhi <huananhu@huawei.com> Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: add ZTE MF626 USB GSM modem entryMikhail Gusarov
Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: storage: Avoid I/O errors when issuing SCSI ioctls to JMicron USB/ATA ↵Phil Dibowitz
bridge Here's the patch that implements the fix you suggested to avoid the I/O errors that I was running into with my new USB enclosure with a JMicron USB/ATA bridge, while issuing scsi-io USN or other such queries used by Fedora's mkinitrd. http://bugzilla.kernel.org/show_bug.cgi?id=9638#c85 /proc/bus/usb/devices: T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=04 Dev#= 5 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=152d ProdID=2329 Rev= 1.00 S: Manufacturer=JMicron S: Product=USB to ATA/ATAPI Bridge S: SerialNumber=DE5088854FFF C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms (patch applied and retested on a modified 2.6.27.2-libre.24.rc1.fc10) Signed-off-by: Phil Dibowitz <phil@ipom.com> Cc: Alexandre Oliva <oliva@lsd.ic.unicamp.br> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: Fix debugfs_create_file's error checking method for usb/gadget/s3c2410_udcZhaolei
debugfs_create_file() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-22USB: ohci: add support for tmio-ohci cellDmitry Baryshkov
Some Toshiba Mobile I/O chips have OHCI controller built in. E.g. the tc6393xb chip found in several Toshiba e-Series PDAs and in Sharp Zaurus SL-6000 PDA. This adds platform glue to support OHCI function of the chip. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com> Acked-by: Ian Molton <spyro@f2s.com> Cc: Ian Molton <spyro@f2s.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-20USB: Fix unused label warnings in drivers/usb/host/ehci-hcd.cLinus Torvalds
This gets rid of an annoying warning in ehci-hcd.c when DEBUG isn't enabled: warning: label 'err_debug' defined but not used by moving it inside the already-existing #ifdef DEBUG, so that it matches the goto. And now my regular build is warning-free again. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-20Merge branch 'master' into for-upstreamDavid Vrabel
Conflicts: Documentation/ABI/testing/sysfs-bus-usb drivers/Makefile
2008-10-17USB: remove err() macro from more usb driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove err() and use the system-wide standard of dev_err() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove err() macro from usb misc driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove err() and use the system-wide standard of dev_err() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove err() macro from usb core codeGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove err() and use the system-wide standard of dev_err() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove err() macro from usb class driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove err() and use the system-wide standard of dev_err() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove use of err() in drivers/usb/serialGreg Kroah-Hartman
err() is going away, so switch to dev_err() or printk() if it's really needed. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove info() macro from remaining usb driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove info() and use the system-wide standard of dev_info() wherever possible. In the few places that will not work out, use a basic printk(). Clean up the remaining usages of this in the drivers/usb/ directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove info() macro from usb/misc driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove info() and use the system-wide standard of dev_info() wherever possible. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove info() macro from usb/serial driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove info() and use the system-wide standard of dev_info() wherever possible. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17USB: remove warn() macro from usb driversGreg Kroah-Hartman
USB should not be having it's own printk macros, so remove warn() and use the system-wide standard of dev_warn() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17usb/fsl_qe_udc: clear data toggle on clear halt requestLi Yang
Fix to comply with USB spec. Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17usb/fsl_qe_udc: fix response to get status requestLi Yang
The original code didn't respond correctly to get status request on device and endpoint. Although normal operations can work without the fix. It is not compliant with USB spec chapter9 and fails USBCV ch9 tests. The patch fix this and a few style/typo problems. Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Fix oops on probe failure.Will Newton
In some circumstances when fsl_udc_probe fails udc_controller is freed but the pointer remains non-NULL. fsl_udc_remove will then try and teardown the partly initialized and freed controller structure resulting in an oops. This patch ensures udc_controller is either NULL or fully initialized after fsl_udc_probe. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Add a wmb before priming endpoint.Will Newton
Add a wmb to fsl_queue_td before priming the endpoint. This ensures that the modifications to the QH are seen by the hardware. Added comment as suggested by Felipe Balbi. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Make fsl_queue_td return type void.Will Newton
fsl_queue_td always returns 0. Make it void and remove checks for non-zero return in callers. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Uninline udc_reset_ep_queue.Will Newton
Uninline udc_reset_ep_queue and remove it's unused return value. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Rename the arguments of the fsl_writel macro.Will Newton
Rename the arguments of the fsl_writel macro to match their use. Remove a couple of unnecessary prototypes. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Initialize spinlock earlier.Will Newton
Move spinlock initialization earlier so we can turn shared irq handler debugging on safely. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Clean up whitespace in /proc debugging output.Will Newton
Missing spaces were causing the /proc debugging output to be rather unreadable. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Clean up whitespace in errors and warnings.Will Newton
VDBG always outputs a trailing \n. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17fsl_usb2_udc: Fix some sparse warnings and remove redundant code.Will Newton
Fix some sparse "integer used as NULL pointer" warnings. Remove some unnecessary volatiles and static initialization. Remove some unused struct members and reorder to improve packing. Remove a few unneeded includes. Signed-off-by: Will Newton <will.newton@gmail.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>