- 28 May, 2004 2 commits
-
-
Ian Abbott authored
This patch fixes throttling problems in the ftdi_sio driver for the 2.6 kernel. The old throttling mechanism (unlinking the read urb) often failed to work, and even it did work, would lose any data held in the transfer buffer. The new mechanism presented here is based on what the whitehead driver does (defer processing and resubmitting of the read urb until unthrottled). Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Alan Stern authored
This patch changes the return codes used by hub_port_wait_reset(), hub_port_reset(), and hub_port_debounce() in hub.c. I couldn't stand the {-1=error, 0=okay, 1=disconnect} scheme; the meanings seemed arbitrary and I constantly forgot which number stood for what status. The revised code uses normal negative error codes, including -ENOTCONN to indicate device disconnected, or 0 for success. Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
- 25 May, 2004 9 commits
-
-
Alan Stern authored
As part of the cleanup effort, I wanted to name all the variables in hub.c uniformly. Currently there are different names for the same thing in different routines, and the same names are used for different things -- it's impossible to keep things straight. I also wanted to step away from the deplorable practice of naming everything "dev". It is not an exaggeration that up until relatively recently one of the drivers (not the hub driver, fortunately!) contained a line which looked basically like this: dev->dev.dev = &intf->dev; If you can make sense out of that, you're a better code reader than I am! Ranting aside, this patch institutes the following name scheme for local variables in hub.c: hub: struct usb_hub hdev: hub's corresponding struct usb_device hub_dev: hub interface's embedded struct device udev: general struct usb_device There are a couple of genuine code changes hidden in there too. Just trivial things, like creating a local hub_dev variable for use in place of &hub->intf->dev.
-
Alan Stern authored
This patch creates a separate subroutine to encapsulate the work required in choosing an initial configuration for a device. In my opinion that reflects a policy decision that should be kept apart from all the other work involved in creating a new device structure. The existing code in usb_new_device() is simply moved into usb_choose_configuration().
-
Alan Stern authored
This patch adds usb_release_address() as a complement to usb_choose_address(), to centralize the work required when freeing an allocated device address. It also moves the usb_set_address() routine from usb.c to hub.c -- which is the only place it is ever used -- and renames it to hub_set_address().
-
Alan Stern authored
Before fixing up the device locking and device reset code, I want to do some cleanups of the hub driver and related areas. This is the first of a series of patches for that purpose. This patch changes all the occurrences of "driverfs" in usbcore to "sysfs" -- I just couldn't stand seeing the out-of-date name any more (and I kept confusing it with usbfs, don't know why). Although I did a "bk mv driverfs.c sysfs.c" when creating the patch, the exported patch file itself doesn't reflect that very well. It looks like driverfs.c was deleted and sysfs.c created from scratch. If you prefer, I can resubmit this in a slightly different form, with the file name unchanged so that you can issue the "bk mv" command in your repository after applying the patch.
-
Alan Stern authored
A lot of people with USB controllers made by VIA have been suffering from the fact that these controllers stop working when they receive a babble packet. In particular, they stop generating interrupt requests. Since the UHCI driver relies on IRQs from the controller for proper timing and interlocking of unlink requests, this means that those broken controllers will hang the UHCI driver and drivers for any device connected through it. This patch, written by Herbert Xu, gives the UCHI driver the ability to manage the unlink procedure using timer interrupts as well as controller interrupts. (It also fixes a race in the UHCI irq handler.) Although it won't prevent the VIA controllers from flaking out when they encounter babble, at least now users will be able to rmmod the uhci-hcd driver and then reload it, restoring their systems back to normal operation (until the next babble!). P.S.: Herbert, there's one loose end I still want to tie up. When the controller isn't running (i.e., is suspended) the frame number won't change, but unlinks still need to work. It's a small point, not too likely to come up in normal usage. I'll fix it later on when I update the state-changing part of the driver.
-
Alan Stern authored
This patch reads the full 9 bytes of a configuration descriptor during enumeration rather than just the first 8 bytes. That's how Windows does it, and today I ran across a device that doesn't work properly when asked to send only 8 bytes worth. I doubt very much this will cause any problems with currently-working devices; since the descriptor itself is 9 bytes long and since the devices are most likely to expect a 9-byte request, anything that can handle an 8-byte request should have no difficulty. (Also, some debugging messages have been slightly improved.) Incidentally, USB traces taken from Windows 2000 and Windows XP show that when those operating systems retrieve a string descriptor during enumeration, they do so by requesting a 255-byte transfer. They do not first ask just for the initial 2 bytes (which contain the actual length) and then ask for the actual length, which is what we do. Interestingly, back in 2.4 we _did_ do things the same as Windows.
-
Joe Nardelli authored
This fixes http://bugme.osdl.org/show_bug.cgi?id=2289 This patch has been tweaked by greg@kroah.com
-
Olaf Hering authored
hiddev_table[] is an array of pointers. the minor number is used as an offset. hiddev minors start either with zero, or with 96. If they start with 96, the offset must be reduced by HIDDEV_MINOR_BASE because only 16 minors are available. unplugging a hiddevice will zero data outside the hiddev_table array. this was spotted by Takashi Iwai.
-
James Lamanna authored
Fixes this warning: May 18 06:56:01 Knoppix kernel: Debug: sleeping function called from invalid context at include/asm/semaphore.h:119 May 18 06:56:01 Knoppix kernel: in_atomic():1, irqs_disabled():0 May 18 06:56:01 Knoppix kernel: Call Trace: May 18 06:56:01 Knoppix kernel: [<c0117083>] __might_sleep+0xb2/0xd3 May 18 06:56:01 Knoppix kernel: [<f88b92f4>] powermate_config_complete+0x33/0x77 [powermate] May 18 06:56:01 Knoppix kernel: [<c02c6760>] usb_hcd_giveback_urb+0x25/0x39 May 18 06:56:01 Knoppix kernel: [<c02d7194>] uhci_finish_urb+0x54/0xa1 May 18 06:56:01 Knoppix kernel: [<c02d7224>] uhci_finish_completion+0x43/0x55 May 18 06:56:01 Knoppix kernel: [<c02d737d>] uhci_irq+0xf8/0x179 May 18 06:56:01 Knoppix kernel: [<c02c67aa>] usb_hcd_irq+0x36/0x67 May 18 06:56:01 Knoppix kernel: [<c01060c6>] handle_IRQ_event+0x3a/0x64 May 18 06:56:01 Knoppix kernel: [<c0106479>] do_IRQ+0xb8/0x192 May 18 06:56:01 Knoppix kernel: [<c0104850>] common_interrupt+0x18/0x20 Attached patch uses spinlocks instead of a semaphore so that we can't sleep when in_atomic().
-
- 24 May, 2004 12 commits
-
-
Thomas Wahrenbruch authored
the kobil_sct didn't work with uhci hcds. It used usb_fill_bulk_urb instead of usb_fill_int_urb. The attached patch fixes this. It starts reading in open now - this gives apps (CT-API) the chance to detect the p'n'p string correctly.
-
Mordechai Ovits authored
I took the relevant parts from the patch (not some PHY stuff that was irrelevant). Attached is the patch against stock 2.6.6.
-
David Brownell authored
I noticed some problems with the PXA 2xx UDC and the RNDIS version of the ethernet-over-usb link: - Static linking needs more than just two endpoints now - The endpoint autoconfig misbehaves (sounds like what Stefan reported a couple weeks ago) This patch fixes those two problems, though there are a couple others lurking too.
-
Luiz Capitulino authored
that code is generating the fallowing warning: drivers/usb/gadget/serial.c:162: warning: `debug' defined but not used When G_SERIAL_DEBUG is not defined, `debug' is not used, because the gs_debug() function is compiled only when G_SERIAL_DEBUG is defined. Thus, a solution is to define `debug' only when G_SERIAL_DEBUG is defined. That includes the use of `debug' as a module parameter (this last part I'm not sure). The patch bellow does that (compiles ok, not tested because I don't have that hardware):
-
Oliver Neukum authored
the previous patch was buggy. The state must be set _before_ the condition is checked, or there's a window missing a wakeup. This incremental change set fixes that. - fix race condition with current->state
-
Oliver Neukum authored
this was buggy for the same reason that the old msleep was buggy. - safe waiting in case we are left on other wait queues
-
Oliver Neukum authored
this is in kobil_sct. It uses msleep() and replaces needless GFP_ATOMICs with GFP_NOIO as this function can sleep. - no need for GFP_ATOMIC - use msleep()
-
Oliver Neukum authored
Here's one you overlooked. - safe sleep helper
-
Martin Habets authored
There is a problem in the usblp GET_DEVICE_ID ioctl() implementation. The patch below (against 2.6 current) fixes the code to be according to the official usb printer spec. Most printers are not affected by this fix, as they use interface 0 and alternate 0. For those, nothing changes. But my printer/scanner uses interface 1 for the printer.
-
http://linux-sound.bkbits.net/linux-soundLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
James Bottomley authored
Any architecture (like pa-risc) that makes use of the helper function flush_dcache_mmap_lock() won't compile with the new rmap due to use of the wrong "mapping". Trivial fix.
-
bk://linux-scsi.bkbits.net/scsi-for-linus-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
- 23 May, 2004 16 commits
-
-
bk://bk.arm.linux.org.uk/linux-2.6-pcmciaLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Jaroslav Kysela authored
PCM Midlevel,ALSA Core Added SNDRV_PCM_SYNC_PTR_APPL and SNDRV_PCM_SYNC_PTR_AVAIL_MIN extensions to SYNC_PTR ioctl for PCM API.
-
Jaroslav Kysela authored
VIA82xx driver - added the DXS entry for ECS K7VTA3 v8.0 - fixed the DXS entry for ASUS A7V8X to NO_VRA.
-
Jaroslav Kysela authored
ALSA Core added reverse selections of components to CONFIG_SND_BIT32_EMUL.
-
Jaroslav Kysela authored
PCI drivers,ICE1712 driver,ICE1724 driver - improved the description of ice1724 driver on Kconfig. - better support of VT1720 with snd-ice1724 driver. - check PCI subsystem IDs when no EEPROM is available (ice1724 only) - change the driver name string if given in the board list. - merged prodigy 7.1 support into aureon.c. they are almost identical. - allow to use PDMA4 and RMDA1 for non-SPDIF purpose if specified (ice1724 only).
-
Vadim Lobanov authored
-
http://linux-mh.bkbits.net/bluetooth-2.6David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Marcel Holtmann authored
The PCMCIA devices are not devices for the kernel and the bt3c_cs driver uses a fake device for calling request_firmware(). The fake device initialization must also set .kobj.k_name to prevent an oops until PCMCIA devices are fully integrated into the driver model.
-
Marcel Holtmann authored
It is not possible to use __module_get() when adding a new RFCOMM session, because there is a case where no reference count is hold. This happens when the module is not in use right now and an incoming connection occurs.
-
Brian King authored
Bump driver version
-
Brian King authored
This patch removes all usage of anonymous unions from the ipr driver since gcc 2.95 does not support anonymous unions.
-
Brian King authored
This patch fixes an oops discovered in test which can occur on bad hardware if the ipr adapter times out coming operational.
-
Brian King authored
This patch adds additional error logging to abort, device reset, and bus reset paths to help in diagnosing scsi problems on ipr.
-
Brian King authored
This patch fixes an issue where ipr was including a kernel data structure, list_head, in a packed structure, which causes compile issues on some architectures, and is just a bad thing to do.
-
James Bottomley authored
From: Alan Cox <alan@redhat.com> Pretty minimal. queue_command is now called locked, this requires propogating some small locking changes for send_s870
-
Alexander Viro authored
This takes ncpfs ioctl handling into fs/compat_ioctl.c, removing it from ppc64 and sparc64 code. Code sanitized, switched to compat_alloc_user_space(), bunch of {k,v}malloc() killed.
-
- 22 May, 2004 1 commit
-
-
Linus Torvalds authored
-