Summary of changes from v2.6.9 to v2.6.10-rc1 ============================================ [PATCH] wireless-extension-v17-for-linus.patch From: Jean Tourrilhes This is the patch to migrate Wireless Extension from WE-16 to WE-17 for kernel 2.6.X. I would like you to queue that patch and submit it to Linus as soon as 2.6.8 is released (so it can be fully tested during 2.6.9). If you want, I can resend that as soon as 2.6.8 is released. The patch is basically unchanged compared to the version posted to the netdev list and my web page one month ago, I just re-diff to the latest kernel (2.6.8-rc2-bk12). The patch already included feedback from various driver maintainers, and nobody else complained, so I guess it's ready. The patch for some drivers inside the kernel will follow (airo.c, wavelan.c, wavelan_cs). Patch for various other drivers (orinoco, hostap, prism54) have been sent already to their maintainers (one month ago) and basically waiting for this patch. Changelog : * - Add flags to frequency -> auto/fixed * - Document (struct iw_quality *)->updated, add new flags (INVALID) * - Wireless Event capability in struct iw_range * - Add support for relative TxPower (yick !) * - Change the way we get to spy_data method for added safety and hostap * - Remove spy #ifdef, they are always on -> cleaner code * - Allow any size GET request if user specifies length > max * - Start migrating get_wireless_stats to struct iw_handler_def * Based on patch from Pavel Roskin : * - Fix kernel data leak to user space in private handler handling I also added on my page a version of Wireless Tools that use RtNetlink instead of ioctls. This is not as clean as I would like, but is fully functional (if you have WE-19). I know that you were interested, so feel free to send feedback on that... Signed-off-by: Andrew Morton [PATCH] wireless-drivers-update-for-we-17.patch From: Jean Tourrilhes This patch complement the main WE-17 patch I just sent you. It updates a few driver to take advantage of WE-17. You should queue it along with the other patch. o Aironet driver : o iwspy data can be shared between eth0 and wifi0 if needed o allow arbitrarily large scan results (no longer limited) o export wireless event capabilities o Wavelan drivers : o export wireless event capabilities Signed-off-by: Andrew Morton [netdrvr eth1394] use netdev_priv [netdrvr usb] use netdev_priv Update catc, pegasus, rtl8150, and gadget/ether to use netdev_priv() [netdrvr] netdev_priv for ewrk3, xircom_tulip_cb, wavelan_cs [netdrvr] netdev_priv for sundance, typhoon, yellowfin [netdrvr] use netdev_priv in dl2k, hamachi [netdrvr starfire] fix unregister_netdev call site [netdrvr starfire] use netdev_priv [PATCH] (1/27) eth1394 ethtool conversion [PATCH] (2/27) cris ethtool conversion [PATCH] (3/27) ixgb ethtool conversion [PATCH] (4/27) 3c509 ethtool conversion [PATCH] (5/27) smc91c92_cs ethtool conversion [PATCH] (6/27) tulip ethtool conversion [PATCH] (7/27) xircom ethtool conversion [PATCH] (8/27) wavelan ethtool conversion [PATCH] (9/27) wl3501_cs ethtool conversion [PATCH] (10/27) yellowfin ethtool conversion [PATCH] (11/27) typhoon ethtool conversion [PATCH] (12/27) sundance ethtool conversion [PATCH] (13/27) starfire ethtool conversion [PATCH] (14/27) ns83820 ethtool conversion [PATCH] (15/27) natsemi ethtool conversion [PATCH] (16/27) veth ethtool conversion [PATCH] (17/27) hamachi ethtool conversion [PATCH] (18/27) forcedeth ethtool conversion [PATCH] (19/27) ewrk3 ethtool conversion [PATCH] (20/27) eepro100 ethtool conversion [PATCH] (21/27) dl2k ethtool conversion [PATCH] (22/27) amd8111e ethtool conversion [PATCH] (23/27) gadget ethtool conversion [PATCH] (24/27) rtl8150 ethtool conversion [PATCH] (25/27) pegasus ethtool conversion [PATCH] (26/27) kaweth ethtool conversion [PATCH] (27/27) catc ethtool conversion [PATCH] USB: update of help text for hpusbscsi Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman [PATCH] USB: switching microtek to usb_kill_urb this reworks the microtek driver's disconnect method, now that usb_kill_urb is available. Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Fixes for ub in 2.4.9-rc1 from Oliver and Pat - Set the allocation size in REQUEST SENSE (Pat LaVarre) - Move add_timer invocations to safer places (Oliver Neukum) Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Make usbcore use usb_kill_urb() This patch changes the only places in usbcore where usb_unlink_urb() is still used for synchronous unlinking; now they will use usb_kill_urb(). As it turns out, there were only a couple of changes needed. This still leaves all the drivers to audit! Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Suspend/resume/wakeup support for UHCI root hub ports This patch adds support for suspending, resuming, and remote wakeup detection on root hub ports to the UHCI driver. It doesn't add support for suspending or resuming the root hub itself (beyond what's already there) -- that will require considerably more work. But at least devices plugged directly into the computer will interact nicely with power management. Of lesser importance, the patch also simplifies some constant expressions. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: correct interrupt interval for kaweth - overriding the media check interrupt interval Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman [PATCH] USB: usb audio is for oss only Doh. Fixed. [PATCH] USB: small rtl8150 patch this one make rtl8150 auto-load its register values at reset. Not doing so is known to cause improper setup when the device is being reseted frequently. Signed-off-by: Greg Kroah-Hartman [PATCH] USB: switching microtek to usb_kill_urb Am Dienstag, 31. August 2004 17:41 schrieb Alan Stern: > On Tue, 31 Aug 2004, Oliver Neukum wrote: > > Alan Stern > > > > > > @@ -822,9 +822,8 @@ > > > > usb_set_intfdata(intf, NULL); > > > > + usb_kill_urb(desc->urb); > > scsi_remove_host(desc->host); > > - usb_unlink_urb(desc->urb); > > - scsi_host_put(desc->host); > > > > usb_free_urb(desc->urb); > > kfree(desc); > > I think you still need the scsi_host_put(), to account for the fact that > scsi_host_alloc() sets the refcount to 1 initially. Right you are. Greg, please also apply this one. Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman [PATCH] USB: corrected digi_acceleport 2.6.9-rc1 fix for hang on disconnect - Fixed hang on disconnect in digi_acceleport USB serial driver. See http://bugme.osdl.org/show_bug.cgi?id=2459. Close after disconnect no longer tries to communicate with the device. Signed-off-by: Al Borchers Signed-off-by: Greg Kroah-Hartman [PATCH] USB: OHCI init cleanups This ought to fix the NS9750 init issue, and make the AMD756 case at least somewhat better. It makes the init go "by the book" in more ways, and formalizes one quirk. Various OHCI init/reset cleanups for different silicion environments: - Reset a bit more "by the book". * Define a new quirk flag for the SiS and OPTi problem seen earlier. Since 2.4 we've always worked around that quirk, even though we've not seen that on other chips; but it's "wrong" and doesn't work on some chips (notably NetSilicon NS9750). The quirk still seems to be needed for SiS, but either this test machine is too fast for the OPTi problem to show up, or the frame timing setup problem there came from a now-fixed bug. * Look at the HC state before resetting it; depending on whether it was previously owned by BIOS, SMM, an OS, or nobody, different USB signaling (and timings) might be needed. * Re-init the frame timings right after soft reset, rather than later (potentially too much later). * Restore a reset in the PCI startup code, so this logic more closely resembles the non-PCI paths (future code sharing). It also makes it easier to guarantee a 1-millisecond ceiling between reset and "go". An earlier reset is being done to help workaround BIOS-related problems on some boards, but we may need an even earlier one (as a PCI quirk, before IRQs get reconfigured). - Add an explicit #define to disable the BIOS/SMM handoff; it's not just HPPA, many embedded chips don't expect BIOS either. - There are reports of AMD 756 machines disliking the OHCI suspend patch of a few months back. Erratum #10 partly explains that, so now root hubs won't autosuspend on those Slot-A era chips. - Other minor fixes * We've got lots of non-PCI OHCI now too, so comments shouldn't be assuming all-is-pci! * Hey, it's unsafe to call hc_reset() in IRQ (after unrecoverable error); so just force a soft reset, don't do the whole thing. Tested on half a dozen different OHCI versions, but maybe some other versions of OHCI will be sensitive to one of these changes. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Add B&B Electronics VID/PIDs to ftdi_sio This patch adds VID/PIDs for a few FTDI-based USB serial devices from B&B Electronics to the ftdi_sio driver. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman [PATCH] USB: "Lost sync on frames" error in konicawc module From: http://bugme.osdl.org/show_bug.cgi?id=3286 The kernel keeps printing "Lost sync on frames" error messages as soon as a program tries to access the webcam. No video data can be retrieved from the webcam. The following patch seems enough to solve the problem. (just inverting the order at which the old and new data blocks are sent to the user). Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Remove inappropriate unusual_devs.h entry A couple of months ago you applied a patch from Torsten Scherer to create a new unusual_devs.h entry. In further discussions with him I learned that the entry wasn't needed to access the device; the only reason for it was as a workaround for some old, buggy hotplug program on his system. Now Evan Fletcher reports that the entry actively prevents him from using his device. For me that's the last straw, so here's a patch to remove the entry. Torsten should be okay if he simply upgrades his hotplug package or removes the buggy program. On Mon, 30 Aug 2004, Evan Fletcher wrote: > Hi list, > > I have a Bytecc 5.25" External Enclosure, model ME-320U2F, that has > both USB 2.0 and Firewire connections > (http://www.byteccusa.com/product/enclosure/ME-320.htm). It used to > work fine on earlier Linux 2.6 kernels, but stopped working a few > revisions ago. > > I tracked the problem down to an entry in unusual_devs.h: > > /* : I don't know the name of the bridge > * manufacturer, but I've got an external USB drive by the Revoltec company > * that needs this. otherwise the drive is recognized as /dev/sda, but any > * access to it blocks indefinitely. > */ > UNUSUAL_DEV( 0x0402, 0x5621, 0x0103, 0x0103, > "Revoltec", > "USB/IDE Bridge (ATA/ATAPI)", > US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY), <...> > So, is there some way that this entry can be modified so that my DVD+R > works properly, and Mr. Scherer can still use his Revoltec external > disk? > > Thank you, > Evan Fletcher Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] HCD PCI probe: print actual, not ioremapped, address I think the USB HCD should print the actual PCI memory address, not the ioremapped address. AFAIK, there's no reason the ioremapped address has to have any fixed relationship to the actual address. Also, this makes it match what's in /proc/iomem. I also added a leading "0x". Example from ia64: - ehci_hcd 0000:00:01.2: irq 52, pci mem c000000080021000 + ehci_hcd 0000:00:01.2: irq 52, pci mem 0x80021000 USB HCD: print actual PCI mem address, not the ioremapped value. Signed-off-by: Bjorn Helgaas Signed-off-by: Greg Kroah-Hartman [PATCH] usb/tiglusb: insert set_current_state() before schedule_timeout() Insert set_current_state() so schedule_timeout() functions as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] usb/dabusb: insert set_current_state() before schedule_timeout() After discussing this patch with Mark Hollomon, I think it is much safer / better to leave the conditional check within the while loop. This way the mutex state is as expected and maintainability is not compromised. The previous patch should not be applied. Description: Inserts appropriate set_current_state() call so that schedule_timeout() functions as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Nag message for usb_kill_urb This patch is only for nuisance value. It puts a nag message in the system log every time usb_unlink_urb() is called for synchronous unlinking. My hope is this will speed the process of converting drivers to use usb_kill_urb(). Don't apply this if it generates too much noise, but otherwise go ahead. A little prodding never hurt anyone. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: circular buffer for pl2303 Here is the patch adding a circular buffer to pl2303 updated to 2.6.9-rc1. Phil and I both tested this. (Phil tested a slightly different earlier version.) This fixes the carriage return newline problem Olaf Hering reported and helps Phil with hotsyncing his phone. This patch also fixes a problem that would sometimes leave a pl2303 port unable to send data, reporting "already writing", after closing the port while writing was in progress. This happened about 1/3 of the time in my tests with the stock 2.6.9-rc1 pl2303 driver. - Added a circular write buffer, protected by the existing spin lock. - Write_room and chars_in_buffer now report room and chars in the circular buffer. - Added a "bounce buffer" when transfering data from user space to the circular buffer--needed for locking. - Replaced (urb->status != -EINPROGRESS) with a private write_urb_in_use flag protected by the existing spin lock. Clear this flag when the urb is unlinked. - Free memory on failed startup. - These changes make ONLCR mapping work and fix a bug that would sometimes leave the port unable to write, reporting "already writing", after closing the port while writing was in progress. Signed-off-by: Al Borchers Signed-off-by: Greg Kroah-Hartman [PATCH] USB: close waits for drain in pl2303 Here is an additional patch for pl2303 in 2.6.9-rc1, to be applied after my previous circular buffer patch. This patch waits for the buffer to drain on close and then clears the buffer. In addition to the obvious features, this also fixes a bug where closing a port with a full buffer would accidentally disable writes when the port was re-opened. The original pl2303 could lose data that was still going out the port on close, and even this patch only solves the problem completely for data rates of 1200 bps and above. Waiting for data to drain from the circular buffer is easy, but the problem is waiting for data to drain from the 256 byte hardware buffer on the device. I don't know how much data is in the hardware buffer, so I just wait long enough for a potentially full hardware buffer to drain, but I don't want to wait that long for low data rates if the buffer isn't full. There is probably some way to query the pl2303 to find out how much data is in its hardware buffer, maybe snooping would reveal that. - Added a wait for data to drain from the driver write buffer when closing. - Added a wait for the data to drain from the device hardware buffer when closing. - Cleared the driver write buffer when closing. Signed-off-by: Al Borchers Signed-off-by: Greg Kroah-Hartman [CPUFREQ] speedstep-smi: only allow it to run on mobile Intel Pentium III speedstep-smi only makes sense on Intel mobile Pentium III systems. So, unify the distributed checks for speedstep_processor there, and disallow P4s. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [PATCH] export of SEQNUM to userspace (creates /sys/kernel) o /sys/kernel/hotplug_seqnum exports the current number o lib/kobject.c's sequence_num is renamed to hotplug_seqnum and exported by include/linux/kobject.h o the source file ksysfs.c in kernel/ creates on init the sybsystem "/sys/kernel/" in sysfs Signed-off-by: Greg Kroah-Hartman kobject: adjust hotplug_seqnum increment to keep userspace and kernel agreeing. ksysfs: don't build ksysfs if CONFIG_SYSFS is not enabled. Thanks to Kay Sievers for pointing this out. Signed-off-by: Greg Kroah-Hartman kobject: fix build error if CONFIG_HOTPLUG is not enabled. Thanks to Kay Sievers for pointing this out. Signed-off-by: Greg Kroah-Hartman USB: remove usbdevfs filesystem name, usbfs is the proper one to use. This has been publicised for years now, and the usvfs name will work just fine with a 2.4 kernel, so we are not breaking backwards compatibility. Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-core-devices.c Make code more readable with list_for_each_entry. Compile tested. Patch incremental on the list_for_each() change. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-serial-ipaq.c Use list_for_each_entry_safe to make code more readable. Compile tested. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-host-hc_sl811.c Make code more readable with list_for_each_entry_safe. (Is this a non i386? I can't compile it.) Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-media-dabusb.c Use list_for_each_entry to make code more readable. Compile tested. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-class-usb-midi.c Make code more readable with list_for_each_entry. Compile tested. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] list_for_each_entry: drivers-usb-class-audio.c Make code more readable with list_for_each_entry. Compile tested. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Centralize logical disconnects in the hub driver This patch takes some code that was only used in one place in the hub driver, and packages it up into a subroutine which is now called from several places. The routine does a logical disconnect -- for example, after issuing a port reset, if the device descriptors have changed (because of a firmware update perhaps) we logically disconnect the old device structure and create a new one. Or if a resume fails for any reason we can do the same thing. This touches some of David Brownell's suspend/resume code, obviously. (It also fixes a couple of small errors in there.) He has said it looks okay. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] prism54 Code cleanup (Patches submitted by Denis Vlasenko) There are neither functionality changes nor bug fixes. * 2004-08-14 Denis Vlasenko * Move assignment out of if() * Remove trailing space from printk * Eliminate not needed local 'u32 reg' * Add a comment about undoc bits * Add #define VEC_SIZE, use it as appropriate * Add some printks to reset error code path (our * current area of trouble) * Make printk text less confusing * Some not needed NULL assignments removed * mgt_commit_list(): tell which oid has failed [PATCH] prism54 remove module params * Remove unneeded module params. [PATCH] prism54 add WE17 support * Add support for WE17 from Jean Tourrilhes [PATCH] prism54 initial WPA support * Work based on initial patches from Jouni Malinen * Initial wpa_supplicant support work: * isl_ioctl.c (prism54_process_trap_helper): Start to use mlmeex, * start doing what's right for * DOT11_OID_AUTHENTICATEEX, * DOT11_OID_ASSOCIATEEX, * DOT11_OID_ASSOCIATEEX, and * DOT11_OID_REASSOCIATEEX * isl_ioctl.c: add temporary structure for wpa_supplicant requests, * isl_ioctl.c: add prism2_ioctl_set_encryption which can probably be removed later * isl_ioctl.c: add prism2_ioctl_set_generic_element (well tested) * isl_ioctl.c: add prism2_ioctl_mlme which should be unnecessary since * WE scan should be used by wpa_supplicant * isl_ioctl.c: add prism54_hostapd - this parses wpa_supplicant * requests and does the right job for each * isl_ioctl.c (prism54_set_wpa): changed to not use mgt_set/mgt_commit * as commit is unecessary. Added proper OID sets to enable/disable WPA. * This is called by wpa_supplicant at startup. This should eventually * be part of WE18. * isl_ioctl.c (prism54_ioctl): Links wpa_supplicant to prism54 * isl_ioctl.h: defined prism54_set_wpa to allow prism54_hostapd to use * isl_oid.h: add struct obj_attachment for OID OID_TYPE_ATTACH * oid_mgt.c: map OID DOT11_OID_ATTACHMENT to struct obj_attachment * oid_mgt.c (mgt_le_to_cpu, mgt_cpu_to_le): handle endianness for * obj_attachment * oid_mgt.c: add mgt_set_varlen, needed for mlmeex as it has a * variable size field. * oid_mgt.c: add mgt_unlatch_all, this can be used to force a commit * on OIDs: * MEDIUMLIMIT, BEACONPERIOD, DTIMPERIOD, ATIMWINDOW, * LISTENINTERVAL, FREQUENCY, EXTENDEDRATES * These OIDs are "latched". TODO: config mode handling. * oid_mgt.c (mgt_response_to_str): learn to parse OID_TYPE_ATTACH * oid_mgt.h: add mgt_set_varlen, and mgt_unlatch_all [PATCH] prism54 fix wpa_supplicant frequency parsing * This work fixes wpa_supplicant frequency parsing. iwlist eth0 * scan will now show channel and frequency. Add S3C2410 (Samsung ARM9 Mobile SoC) watchdog driver [PATCH] USB: Internal port numbers start at 0 This patch changes a couple of new routines in the suspend/resume code. Internally they use port numbers starting from 1, unlike every other routine in the hub driver. This changes the port numbers to origin-0, for consistency's sake. Of course, messages sent to the system log will continue to start counting from 1. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: SN9C10x driver update Changes: - Add support for SN9C103 based devices. The audio capability is already supported but not released in this version. I will release it once someone donates two SN9C103 based devices. - Implement VIDIOC_G_CTRL for TAS5110C1B and TAS51130D1B - Replace "SN9C10[12]" strings with "SN9C10x" - Add red, green, blue gain controls to the SN9C103 - Memory offsets are now page-aligned - Fix typos in the documentation - Documentation updates - Setting bounds are checked by the core module - Add exposure control for TAS51130D1B Signed-off-by: Luca Risolia Signed-off-by: Greg Kroah-Hartman [PATCH] USB: EHCI SMP fix This addresses an SMP-only issue with the EHCI driver, where only one CPU should scan the schedule at a time (scanning is not re-entrant) but either the IRQ handler or a watchdog timer could end up starting it. Many thanks to Olaf Hering for isolating the failure mode, and testing this fix! Once once CPU starts scanning, any other might as well finish right away. This fix just adds a flag to detect that case. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Codemercs IO-Warrior support From: Steffen Zieger Here is a patch to get the kernel module from Codemerces to work. The module is available in source for the 2.4 and 2.6 series except the needed changes in hid-core.c. Codemercs distribute the needed changes as a complete file (version 2.6.4). This isn't working with 2.6.8.1. http://www.codemercs.com Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] USB Serial: Correct a use of out of range variable Bug found by Coverity: http://linuxbugs.coverity.com/external/editbugparent.php?viewbugid=2137&checkers%5B%5D=all&status%5B%5D=BUG&status%5B%5D=UNINSPECTED&status%5B%5D=UNKNOWN&status%5B%5D=DON%27T%20CARE&status%5B%5D=PENDING&product%5B%5D=all&component%5B%5D=all&file=&fn=&sortby=reverse_rank&before=&after=&curpage=2&bugid=-1&comment=&reason= Signed-off-by: Greg Kroah-Hartman [PATCH] USB Storage: change how INQUIRY is fixed up The usb-storage driver 'fixes up' the INQUIRY data returned by a device so that it reads SCSI rev 2 by intercepting the data in-flight. This was done to make various SCSI drivers (sd, sr, etc.) work with the device. However, this technique also has the unfortunate side-effect that nobody can see the real rev. -- not even sg users. This patch changes that. Now, the SCSI revision is changed in the slave_configure() function. Thus, the 'real' data is available to anyone who wants to issue an INQUIRY directly via any means. This also simplifies the code somewhat. Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman [PATCH] i2c-algo-ite: remove iic_sleep() Removes unused function iic_sleep(). Signed-off-by: Nishanth Aravamudan Signed-off-by: Greg Kroah-Hartman [PATCH] use of MODULE_DEVICE_TABLE in i2c busses driver hello, since you say your are interested of using MODULE_DEVICE_TABLE in http://bugzilla.kernel.org/show_bug.cgi?id=3091 I did a patch (attach). Also I notice that some pci_device_id are marked __devinitdata that seem a bug if I read Linux 2.6.0-test3 changelog. To find them do a "grep pci_device_id /usr/src/linux/drivers/i2c/busses/* | grep __devinitdata" Signed-off-by: Greg Kroah-Hartman [PATCH] I2C/SMBus stub for driver testing * Greg KH [2004-08-24 16:44:32 -0700]: > > > Why not? It looks useful to me. Care to send me a patch adding > > > this to the main kernel tree? * Mark M. Hoffman [2004-08-25 10:25:02 -0400]: > Later today, sure. Well here it is, one day later because I really didn't want to do this with printk. I spent some time looking around and relayfs seems like a good fit. Do you think relayfs will ever get merged? Meanwhile... * * * * * This patch, applied to 2.6.9-rc1, adds an I2C/SMBus test stub that is useful for developing sensors drivers. Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: minor lm85 fix Jean scribeth : > Except lm85, but this should be fixed Indeed, patch attached. Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: Do not init global variables to 0 This trivial patch enforces the rule that global variables should not be explicitely initialized to 0 for all i2c chip drivers. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: Fix macro calls in chip drivers I noticed that some I2C chip drivers (all written or reviewed by me, I feel ashamed to say) misuse macros. Passing function calls (simple_strtol in this case) to macros evaluating their argument up to 4 times is certainly not wise and obviously performs poorly. It is not critical in that it happens only when writing to the chips (setting limits), which doesn't happen that often. However I'd say it's worth fixing. Thus, the patch below fixes that, by moving the function calls outside of the macro calls. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] w1: Added slave->ttl - time to live for the registered slave. Added slave->ttl - time to live for the registered slave. When slave was not found we will not remove it immediately but wait until ->ttl attempts were done. It prevents various debouncing effects(problems with pull-up, power). Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman [PATCH] kobject: hotplug_seqnum is not 64 bits on all platforms, so fix it. Thanks to Kay Sievers for pointing this out. Signed-off-by: Greg Kroah-Hartman [PATCH] ksyms: don't implement /sys/kernel/hotplug_seqnum if CONFIG_HOTPLUG is not enabled. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman USB: make usb_unlink_urb() message only show up if CONFIG_DEBUG_KERNEL is enabled. Signed-off-by: Greg Kroah-Hartman [PATCH] W1: let W1 select NET. On Wed, 2004-08-25 at 23:41, Greg KH wrote: > On Wed, Aug 25, 2004 at 11:21:29PM +0400, Evgeniy Polyakov wrote: > > On Wed, 25 Aug 2004 10:49:12 -0700 > > Greg KH wrote: > > > > > On Fri, Aug 13, 2004 at 02:35:40PM +0400, Evgeniy Polyakov wrote: > > > > The patch below fixes this issue by letting W1 select NET. > > > > > > > > Patch was created by Adrian Bunk . > > > > > > Nah, I'm going to hold off on this, it's not really needed (who > > > doesn't build with NET enabled...) > > > > Hmmm, but someone really may want to build it without NET support. > > I have an idea(I thought it out exactly for the case when you do not > > apply it) to disable networking(netlink) support in compilation time if > > CONFIG_NET is not defined. > > And add some warning like: > > > > #ifndef CONFIG_NET > > #warning Netlink support is disabled. > > #endif > > That sounds like a good fix. Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Add OTG support to g_file_storage This patch adds minimal USB On-The-Go support (mainly just an extra descriptor) to the File-Storage Gadget. The changes were based on the additions made to the Gadget Zero driver. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: New submission procedure for unusual_devs.h As you requested, this patch updates the documented procedure for submitting new unusual_devs.h entries. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: fix up usblp usb_unlink_urb() warning On Thursday 09 September 2004 08:38, Greg KH wrote: > On Thu, Sep 09, 2004 at 01:07:05AM -0400, Gene Heskett wrote: > > Greetings; > > > > I just had to reboot back to -mm2 after playing with some printer configs > > in cups, although the test pages worked, so I'm not sure what this all > > about, from var log/messages: > > > > Sep 8 23:13:42 coyote cups: cupsd -HUP succeeded > > Sep 8 23:13:43 coyote kernel: usb_unlink_urb() is deprecated for > > synchronous unlinks. Use usb_kill_urb() Sep 8 23:13:43 coyote kernel: > > Badness in usb_unlink_urb at drivers/usb/core/urb.c:456 Sep 8 23:13:44 > > coyote kernel: [] dump_stack+0x1e/0x20 Sep 8 23:13:44 coyote > > kernel: [] usb_unlink_urb+0x85/0xa0 Sep 8 23:13:44 coyote > > kernel: [] usblp_unlink_urbs+0x17/0x40 Sep 8 23:13:44 coyote > > kernel: [] usblp_release+0x38/0x60 Sep 8 23:13:44 coyote > > kernel: [] __fput+0x12a/0x140 > > Sep 8 23:13:44 coyote kernel: [] filp_close+0x57/0x80 > > Sep 8 23:13:44 coyote kernel: [] sys_close+0x61/0x90 > > Sep 8 23:13:44 coyote kernel: [] sysenter_past_esp+0x52/0x71 Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Unusual_devs entry for Panasonic cameras Thanks to Tom Hughes for jogging my memory about this patch, which has been sitting here waiting for Greg's return. It adds an unusual_devs.h entry for the Panasonic DMC-LCx line of cameras, which incorrectly report the total number of blocks in response to READ CAPACITY rather than the highest available block number. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in pl2303 driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in usb-serial core Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in belkin_sa driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in cyberjack driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in whiteheat driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in io_edgeport driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in ir-usb driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in ipaq driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in digi_acceleport driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in empeg driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in mct_u232 driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in omninet driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in visor driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in kl5kusb105 driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in kobil_sct driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in io_ti driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in ftdi_sio driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in keyspan_pda driver Signed-off-by: Greg Kroah-Hartman USB: fix usb_unlink_urb() usage in generic usb-serial driver Signed-off-by: Greg Kroah-Hartman [PATCH] export usb_set_device_state(), use in ohci This patch is mostly cleanup, but it all helps make PM_SUSPEND_DISK start to behave better. This exports the new usb_set_device_state() routine for the virtual root hubs, and uses it in OHCI during resume after power-off to replace some HC-private code doing almost the same thing. Note that all HCDs will likely need the same kind of suspend-to-disk support (though it's different when BIOS kicks in). Some systems even power-off during suspend-to-ram (to save extra power), which is why OHCI already has this logic! Related updates: - Use usb_set_device_state() immediately when an HC dies, making khubd handle disconnect processing instead of a workqueue. So now drivers won't self-deadlock in this should-be-rare path, when disconnect() calls flush_scheduled_work(). - Don't warn about "Unlink after no-IRQ" for the the root hub's status URB ... like when suspending an HCD that never enumerated a device. - Minor IRQ handler cleanup, including more accurate tracking of whether this driver ever returned IRQ_HANDLED (shared IRQs don't count). Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: gadget_is_n9604 This adds recognition of one more UDC driver. (Driver is available separately.) Tell gadget drivers about the National 9603/9604 UDC. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: ohci updates Small bugfixes, at least one of which gets rid of some rather random behavior from certain board init behaviors. OHCI updates: - Bugfix the code taking frame clock adjustments from the boot loader. A recent change had a bug which caused inconsistent failures on some OHCI configs, including amd756. Thanks to for tracking down the specifics. - From Lothar Wassmann two fixes: (a) don't let tick clock sign-extend, that can make unlinks take excessively long (could happen easily enough); (b) when re-activating schedules after suspend, use the right bitmask (rare/exotic) - When suspending the root hub, mark it as USB_STATE_SUSPENDED Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: khubd looks at ports after probe Fix the hub probe logic so that when khubd wakes up, it will actually look at all ports on the new hub. This resolved a root hub enumeration issue, and I expect the "boot from USB disk" folk will like this too. The fix includes cleanup: centralizing the logic to make khubd look at a given hub, instead of cloning it three times (or in the case of hub probing, frankensteining it). This also adds a FIXME to the new routine centralizing disconnect processing: we also want "power down port but don't wake khubd" (for PM_SUSPEND_DISK as well as SRP). Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman Add scsi_target abstraction and place it in sysfs For some of the transport class attributes, we need to hang them off the SCSI target rather than the LUN (represented by scsi_device). To do this efficiently, we need to make the target visible in the sysfs hierarchy. The net effect of this change is to make an extra target component appear in all the SCSI sysfs paths: jejb@raven> ls -l /sys/class/scsi_device/0\:0\:5\:0/device lrwxrwxrwx 1 root root 0 Sep 7 12:10 /sys/class/scsi_device/0:0:5:0/device -> ../../../devices/parisc8/parisc8:0/pci0000:00/0000:00:13.0/host0/target0:0:5/0:0:5:0/ Signed-off-by: James Bottomley Add host and target transport class abstractions This patch makes a transport class be composed of up to three individual device classes representing potential interfaces on the scsi_device, scsi_target and Scsi_Host. A class only has to implement at least one of these, but may optionally implement more. Signed-off-by: James Bottomley Make the SPI transport parameters operate at the target level Technically, the transfer agreement governs the I_T nexus (the target) not the I_T_L nexus (the device), so make it operate of the scsi_target structure. Signed-off-by: James Bottomley [PATCH] USB: omap_udc supports 5910/1510 chips This removes the "don't run on OMAP 1510" constraint from the driver and teaches it how not to use registers only available on newer chips. It's effectively just a compile fix, though ... hasn't got any board support yet. Basic build fixes for the OMAP 1510/5910. This first generation chip doesn't include an OTG controller. The patch makes the driver stop using OTG registers, and adds some #defines that will be needed to support boards using those chips. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman PCI cleanups and convert to ethtool_ops *) Reorder MWI initialization *) Perform proper cleanup on probe failure *) Remove cruft, and avoid locking up NIC on reset Signed-off-by: David A. Dillow Add bus signalling host attribute to spi transport class This is just a simple illustration of host parameters: it adds a bus signalling type for LVD/SE/HVD Signed-off-by: James Bottomley [CPUFREQ] Work around AMD64 2nd identical PST errata AMD recently errata'd the definition of the PSB/PST for recent Athlon 64 and Opteron parts. The errata allows for a second, identical PST for those parts. The current powernow-k8 driver will not work in PST/PSB mode on those parts because it requires there be 1 and only 1 PST. From: Mark Langsdorf Signed-off-by: Dave Jones [PATCH] aic79xx hostraid support Patch ported to 2.6.8 by John A. Hull (john_hull@dell.com) to add support for the aic79xx hostraid family support. Signed-off-by: James Bottomley since AHD_HOSTRAID_BOARD wasn't actually used... a more minimal patch: [PATCH] Add BLIST_INQUIRY_36 to all USB blacklist entries This patch adds the BLIST_INQUIRY_36 flag to all the SCSI blacklist entries for USB devices. While it may not be strictly necessary for all of them, it doesn't hurt: Since the usb-storage driver doesn't use any of the INQUIRY data after the first 36 bytes, there's no reason to try reading any more of it. And some devices crash when we try to read more, even though they advertise that more bytes are available. The usb-storage driver does try to set the flag automatically, but the blacklist entries override that setting. Signed-off-by: Alan Stern Signed-off-by: James Bottomley [PATCH] update NCR5380 comments Signed-off-by: James Bottomley [PATCH] USB: maintainership of acm cdc I've discussed this with Vojtech. If I brake the probe method, I can also break the rest ;-) Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman - new cdc acm maintainer [PATCH] scsi_debug version 1.74 To check descriptor format sense data handling we need a source. Clean up some other problems and improve support for st. Changes: - add 'dsense' option to generate descriptor sense data format (default still fixed format) - correct unit attention generation (only INQUIRY, REQUEST_SENSE and REPORT_LUNS ignore it) - better information sent to log in "noisy" mode (i.e. opts=1) - correct and expand standard INQUIRY response, include version descriptors - filter MODE_SENSE command so that subpage!=0 generates error - add REWIND (SSC) command support (NOP) Signed-off-by: James Bottomley [PATCH] update dmx3191d to modern pci/scsi probing thanks to Mark Morschh\"auser for testing. Signed-off-by: James Bottomley [PATCH] first steps at BusLogic cleanup - switch to a normal lists.h list for all hbas - merge BusLogic_DetectHostAdapter and BusLogic_init - move scsi_remove_host into BusLogic_ReleaseHostAdapter instead of a second iteration over all hosts Signed-off-by: James Bottomley [PATCH] sg.c to warn about ambiguous data direction On Sat, Aug 28, 2004 at 02:39:45AM -0700, Jeremy Higdon wrote: > > Jeremy, > > You could use a (block scope) static and only print out > > the warning the first time it is detected. > > > > Doug Gilbert > > Yes, that's a good idea -- I'll add a rate limiter and also print > out the process name like James does in his recent deprecated > ioctl warning patch. I'll send a new patch out later this weekend. > Sorry for the churn. > > thanks > > jeremy Okay, I'm pretty happy with this. I get this kind of output: sg_write: data in/out 512/512 bytes for SCSI command 0x8--guessing data in; program java not setting count and/or reply_len properly printk: 11 messages suppressed. sg_write: data in/out 512/512 bytes for SCSI command 0x8--guessing data in; program java not setting count and/or reply_len properly printk: 4 messages suppressed. signed-off-by: jeremy@sgi.com Signed-off-by: James Bottomley [PATCH] qla2xxx gcc-3.5 fixes From: Adrian Bunk CC drivers/scsi/qla2xxx/qla_os.o drivers/scsi/qla2xxx/qla_os.c: In function `qla2x00_queuecommand': drivers/scsi/qla2xxx/qla_os.c:315: sorry, unimplemented: inlining failed in call to 'qla2x00_callback': function not considered for inlining drivers/scsi/qla2xxx/qla_os.c:269: sorry, unimplemented: called from here drivers/scsi/qla2xxx/qla_os.c:315: sorry, unimplemented: inlining failed in call to 'qla2x00_callback': function not considered for inlining drivers/scsi/qla2xxx/qla_os.c:269: sorry, unimplemented: called from here make[3]: *** [drivers/scsi/qla2xxx/qla_os.o] Error 1 ... CC drivers/scsi/qla2xxx/qla_rscn.o drivers/scsi/qla2xxx/qla_rscn.c: In function `qla2x00_cancel_io_descriptors': drivers/scsi/qla2xxx/qla_rscn.c:320: sorry, unimplemented: inlining failed in call to 'qla2x00_remove_iodesc_timer': function not considered for inlining drivers/scsi/qla2xxx/qla_rscn.c:257: sorry, unimplemented: called from here make[3]: *** [drivers/scsi/qla2xxx/qla_rscn.o] Error 1 Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [PATCH] Disambiguate esp.c clones From: Joshua Kwan Debian's initial ramdisk creation scripts rely on the content of /proc/scsi to determine which module is needed for the ramdisk. Unfortunately, bad things happen when a bazillion different drivers use the _exact same name_ for /proc, namely the esp family. Give them all unique names. Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [PATCH] scsi/mesh: replace schedule_timeout() with msleep() Description: Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] scsi/osst: replace schedule_timeout() with msleep() Replace schedule_timeout() with msleep() to guarantee the task delays as desired. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] scsi/wd7000: replace schedule_timeout() with msleep() Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] scsi/sd: replace schedule_timeout() with msleep() Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] scsi/qla_init: replace schedule_timeout() with Replaces schedule_timeout() with msleep() to guarantee task delays as desired. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] scsi/qla_os: replace schedule_timeout() with msleep() Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan incremental patch adds missing include. Signed-off-by: Domen Puncer Signed-off-by: Max Attems Signed-off-by: James Bottomley [PATCH] scsi/sata_sx4: replace schedule_timeout() with Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] Remove redundant freeing code from aic7770 ahc_alloc already frees the 'name' if ahc=NULL Spotted with the source checker from Coverity.com. Signed-off-by: Dave Jones Signed-off-by: James Bottomley [PATCH] plug leaks in aic79xx Spotted with the source checker from Coverity.com. Signed-off-by: Dave Jones Signed-off-by: James Bottomley [PATCH] Remove possible reuse of stale pointer in aic7xxx Spotted with the source checker from Coverity.com. Signed-off-by: Dave Jones Signed-off-by: James Bottomley [PATCH] plug leaks in aic7xxx_osm Spotted with the source checker from Coverity.com. Signed-off-by: Dave Jones Signed-off-by: James Bottomley [PATCH] refactor tmscsim inititalization code this one I still had in my pipe. This greatly streamlines the setup code. Signed-off-by: James Bottomley [PATCH] update notcq blacklist This patch adds the two devices from the private blacklist in tmscsim to the generic one. Signed-off-by: James Bottomley [PATCH] don't include "scsi.h" in scsi_module.c we only need here Signed-off-by: James Bottomley [PATCH] avoid obsolete APIs in ide-scsi Signed-off-by: James Bottomley [PATCH] avoid obsolete APIs in eata Signed-off-by: James Bottomley [PATCH] allow non-modular mptctl There's no reason to keep people from building it into their kernels statically. Signed-off-by: James Bottomley [PATCH] mesh is ppc32-only On Wed, Aug 25, Christoph Hellwig wrote: > mesh is only present on older 32bit pmac boards and doesn't compile > on ppc64. This applies also to the other pmac-only scsi driver: Signed-off-by: James Bottomley [PATCH] fix aic79xx module_init return value when no hardware So much rearranging to just propagate the pci_module_init return value.. Signed-off-by: James Bottomley [PATCH] PATCH [1/8] qla2xxx: PCI posting fixes Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] PATCH [2/8] qla2xxx: Dynamic resize of request-q Dynamically resize request-queue during initialization based on the amount of memory available to the ISP. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley qla2xxx: DMA pool/api usage From: Andrew Vasquez Rework driver DMA allocations to use the DMA pool APIs to minimize potential run-time allocation failures. Signed-off-by: Andrew Vasquez Fixed up rejections and replaced the schedule_timeout's in the patch with msleep Signed-off-by: James Bottomley [PATCH] PATCH [4/8] qla2xxx: Small fixes o Always set an TCQ modifier for each command submitted. o Always (re)-initialize NVRAM during execution. o Add pci_disable_device() calls to proper locations during pci-probe failure and pci-remove. o Do not begin processing until the DPC has been marked 'active'. o Fix off-by-one error while copying sense-data. o Fix bus-reset issue during back-door execution. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] PATCH [5/8] qla2xxx: Rework ISR registration Rework interrupt-handler registration in anticipation of future chip types. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley qla2xxx: 23xx/63xx firmware updates From: Andrew Vasquez Resync with latest released firmware -- 3.03.02 Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] PATCH [8/8] qla2xxx: Update version Update version number to 8.00.00b21-k. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] 3ware 5/6/7/8000 driver v1.26.02.000 - Remove deprecated SCSI_IOCTL_SEND_COMMAND interface. - Remove deprecated /proc/scsi/3w-xxxx interface. - Convert entire driver to pci_driver format. - Remove all mdelays, replace w/msleep to fix possible watchdog timer issues. - Make all register accesses macros. - Remove all prototypes from header file, reorder functions to eliminate all prototypes but one. - Add sysfs 'queue_depth' setting attribute. - Add sysfs 'stats' attribute. - Fix spinlocks everywhere, remove tw_lock spinlock. - Remove all bitfields, add bitmask access macros. - Remove un-needed scsi_eh_abort entrypoint. Controller does not support aborting invididual IO's, scsi_eh_reset sufficient. Signed-off-by: James Bottomley [PATCH] Fix up scsi_test_unit_ready() to work correctly with CD-ROMs Olaf Hering noticed that SG_IO was no-longer working correctly on some CD-ROMS. The reason is a change in behaviour induced by switching to the new scsi_test_unit_ready() API. Apparently the CD-ROM special case needs to ignore both UNIT_ATTENTION and NOT_READY for removable media. Signed-off-by: James Bottomley [PATCH] sg jiffy library calls [was: sg kill local jiffies Douglas Gilbert wrote: > It has been reported that the change to sg.c in lk 2.6.9-rc1-bk5 > to use library jiffy functions breaks sg (albeit under vmware). > Evidentally sg devices are no longer recognised after that change. > > Reverting that changeset removes the problem. Strange, it is not > obvious why. > > At some stage I must have detected negative time spans (yeh yeh it > never happens) and my versions returned 0 in this case; otherwise > the implementations look very similar. The following patch fixes the problem. It is against lk 2.6.9-rc1-bk7 (i.e. after "standard" jiffy_to_millisecs macros replaced sg versions). Change: - make sure a (large) user supplied timeout value does not result in a negative timeout passed to the midlevel Signed-off-by: James Bottomley [PATCH] USB: early usb handoff for 2.6 Apparently there is an issue w/ the IBM x440/x445's BIOS's USB Legacy support. Due to the delay in issuing SMI's across the IOAPICs, its possible for I/O to ports 60/64 to cause register corruption. The solution is to disable the BIOS's USB Legacy support early in boot(via PCI quirks) for x440/x445 systems. Originally written by Vojtech against SuSE's tree, this patch was then updated to disable EHCI by Aleksey Gorelov, cleaned up by Pete Zaitcev for 2.4 and finally tweaked and updated against 2.6 by me. I've lightly tested this version of the patch, but it differs little from what Aleksey, Pete and I have been testing for 2.4. Signed-off-by: John Stultz Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Improve UHCI suspend/resume This patch fixes some problems with the suspend/resume handling in the UHCI driver: Don't try to resume ports that aren't already suspended. The controller won't permit Resume signals to be sent to a port if the port isn't enabled, so don't assume it will work. Port reset and port disable will terminate Resume signalling. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman scsi: normalize fixed and descriptor sense data From: Douglas Gilbert The patch only touches two files: scsi.h and scsi_lib.c It adds the proposed facility and then uses it in scsi_lib in roughly 4 locations. IMO there were 3 sense processing errors: - block SG_IO did not get passed back deferred errors [SG_IO is a __pass-through__ interface!!] - MEDIUM_ERRORs _do_ get processed for deferred sense errors in scsi_io_completion() which seems unintended [I did not fix this one.] - invalid command operation code handling in __scsi_mode_sense() was just wrong If people think this is a reasonable approach, then the rest of the scsi mid-level and upper level driver could be converted. As Kai pointed we may need some general routines to pick up the sense data "extras". The benefit of doing this conversion is that it may well highlight a lot more sense data processing errors (if the above is any guide). Changes: - add structure to receive normalized sense data from either fixed or descriptor format sense data - add scsi_normalize_sense() function to populate that structure - add scsi_sense_is_deferred() function so deferred errors can be ignored in many contexts - apply new mechanism to sense data processing within the scsi_lib.c file Patch reformatted by: Christoph Hellwig Signed-off-by: James Bottomley [PATCH] USB: Fix off-by-one error in the hub driver This one-liner fixes a simple mistake in a newly-added part of the hub driver. When a connect change takes place on a suspended port the code clears the suspend, but the port number it passes is origin-0 and it should be origin-1. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman fix undefined function msleep warning in osst Signed-off-by: James Bottomley fix printk warning in sg.c sizeof() != int Signed-off-by: James Bottomley ServeRAID driver ( ips ) Version 7.10.18 From: Hammer, Jack - Fix path/name for scsi_hosts.h include for 2.6 kernels - Fix sort order of 7k - Remove 3 unused "inline" functions Signed-off-by: James Bottomley Kobject Userspace Event Notification Implemetation of userspace events through a netlink socket. The kernel events layer provides the functionality to raise an event from a given kobject represented by its sysfs-path and a signal string to describe the type of event. Currently, kobject additions and removals are signalized to userspace by forking the /sbin/hotplug helper. This patch moves this special case of userspace-event out of the kobject core to the new kobject_uevent implementation. This makes it possible to send all hotplug messages also through the new netlink transport. Possible new users of the kernel userspace functionality are filesystem mount events (block device claim/release) or simple device state transitions (cpu overheating). To send an event, the user needs to pass the kobject, a optional sysfs-attribute and the signal string to the following function: kobject_uevent(const char *signal, struct kobject *kobj, struct attribute *attr) Example: kobject_uevent("overheating", &cpu->kobj, NULL); The message itself is sent over multicast netlink socket, which makes it possible for userspace to listen with multiple applications for the same messages. Signed-off-by: Robert Love Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman [PATCH] tmscsim.c build fix This must have had a ton of testing. Signed-off-by: Andrew Morton Signed-off-by: James Bottomley advansys build fix it uses TCQ defines but doesn't include scsi/scsi_tcq.h Signed-off-by: James Bottomley [PATCH] start removing queue from tmscsim So actually I have a patch that starts to remove internal queueing from tmscsim. This gets rid of internal queueing for those cases where we can just make the midlayer do the the work by returning erros from ->queuecommand (and cleans up the tmscsim queuecommand implementation singnificantly). Next step would get rid of the more complicated internal queueing where we need to make the scsi layer requeue by returning appropinquate DID_ values from ->scsidone. Signed-off-by: James Bottomley [CPUFREQ] Fix numerous typos in drivers/cpufreq/Kconfig Signed-off-by: Dave Jones [PATCH] sym2 2.1.18k 2.1.18k: - Relicence from dual BSD/GPL to pure GPL - Add my copyright to various files - Remove unnecessary MDELAY calls after printfs - Rename remaining MDELAY() to mdelay(), delete MDELAY and sym_mdelay macros - Restructure PCI initialisation to not disable chips that are part of Mylex RAID cards. - Make SYM_OPT_NVRAM_PRE_READ non-optional. Signed-off-by: James Bottomley [PATCH] aacraid: Detect non-committed array From: Mark Salyzyn at Adaptec In the case of this driver patch, we will report to the user via a syslogd kernel message that a foreign array has been ignored in non-intel environments; or intel environments where the BIOS fails to load to perform this set of housekeeping functions. There is a provision, via the commit variable, to change this behavior to accept the configuration instead. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley [PATCH] USB: ohci init refactor Please merge, some recent changes made problems by making init take too long. This also adds a bit of support for detecting the funky resume states that happen with suspend-to-disk (like swsusp, pmdisk). Refactor controller initialization ... this is most of the patch by volume. - A time-critical section now runs with IRQs blocked, rather than being split over two separate routines. (I've recently seen init failures because of preemption in the middle of that 2msec timeout, presumably by khubd.) - Bus glue for PCI, LH7A404, OMAP, and SA-1100 now shares more init logic; that'll help shrink support for upcoming non-PCI patches too. - Move the root hub register macros to the header (for debug build issue) - More tweaks to the frame clock initialization, including slightly more helpful diagnostics on "init err". Better SWSUSP support. - Detects and handles some funky "resume after suspend-to-disk" cases. These need to go through full driver re-init. - Restore root hub to CONFIGURED state on resume. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman Fix qla2xxx mismerge From: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] 3ware 5/6/7/8000 driver update - Make tw_check_bits() static. - Add MODULE_VERSION support. - Fix ioctl path to use dma_alloc/free_coherent() instead of pci_alloc/free_consistent(). - Remove error variable from ioctl code causing confusion. retval defaults to -EFAULT, any copy_to/from_user() that returns non zero returns -EFAULT. Signed-off-by: James Bottomley I2C: fix up __iomem marking for i2c bus drivers Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Updated USB device locking This patch reintroduces the USB device locking code we tried out earlier. As before, it solves the problem of effectively locking all the devices while drivers are registered and unregistered by introducing an rwsem. Unlike the earlier attempt, this version does not ever try to acquire a lock re-entrantly. I trust that will eliminate the races and hang-ups you observed with the earlier version. There are also copious comments explaining exactly how things should work. The patch interacts slightly with the locktree() code introduced by David for suspend/resume support. It doesn't change the functionality at all; it just updates the routine to follow the new locking rules. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Add locking support for USB device resets This patch reintroduces the usb_lock_device_for_reset() routine, which is specially tailored to meet the needs of drivers that have to reset a device either during probe() or during normal operations. It updates a few drivers that do device resets, to make them use the new routine. It also adds a new field to struct usb_interface, to keep track of whether the interface is in the process of being bound to or unbound from a driver. This is necessary, because during binding we know the device is already locked so we don't want to try to acquire the lock again! With this patch in place, USB device resets should finally become reliable. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: More verbose debug in w83781d detection Quoting myself: > As for me, I will propose my extra-debug patch (slightly cleaned up) > for inclusion into the 2.6 kernel. It helped us once, so it could > prove to be valuable in the future as well. Here is the patch. It makes the w83781d (mis)detection more verbose so as to help debugging problems. The extra messages of course only show when I2C chip debugging is enabled. It additionally features some code refactoring, some CodingStyle cleanups and adds a missing white space in one debug message. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] USB: SN9C10x driver updates SN9C10x driver updates. Changes: (+ new, - removed, * cleanup, @ bugfix, = sync with kernels) @ Create correct red,green,blue entries under /sys according to the detected bridge * Add and use defined symbols for I2C slave ids of TAS5110C1B and TAS51130D1B * Color fixes for PAS202BCB - from its maintainer - Signed-off-by: Luca Risolia Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: Update Documentation/i2c/writing-clients This is a very small an update to Documentation/i2c/writing-clients. The changes are about i2c client driver ID. It used to say that chip driver writers should ask for a unique ID. It now explains that such an ID is not required and they can go without it. Until we get plain rid of it... The patch additionally features CodingStyle updates. We can't ask people to respect it and at the same time ignore it in our own docs. I have made a similar change to the i2c (the project) documentation, and will propose an update to Marcelo for Linux 2.4 (not sure he will accept it though). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] kobject_uevent warning fix lib/kobject_uevent.c: In function `kobject_hotplug': lib/kobject_uevent.c:225: warning: long long int format, u64 arg (arg 3) Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] ksysfs warning fix kernel/ksysfs.c: In function `hotplug_seqnum_show': kernel/ksysfs.c:28: warning: long long unsigned int format, u64 arg (arg 3) Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] USB: add missing pci_disable_device for PCI-based USB HCD From: Kenji Kaneshige This patch adds pci_disable_device() into usb_hcd_pci_remove(). If the driver decides to stop using the device, it should call pci_disable_device() to deallocate any IRQ resources, disable PCI bus-mastering, etc. Signed-off-by: Kenji Kaneshige Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] USB: rtl8150.c ethernet driver : usb_unlink_urb ->usb_kill_urb While we are looking at this driver, here is a way to avoid one full page of annoying messages at shutdown/module unload. Signed-off-by: Eric Valette Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Patch for 3 ub bugs in 2.6.9-rc1-mm4 Actual users of ub quickly found problems, so here's a patch to address some of them. #1: An attempt to mount a CF card, pull the plug, then unmount causes a message "getblk: bad sector size 512" and an oops. This is caused by trying to do put_disk from disconnect instead of using a reference count. The sd.c does it this way (it uses kref). #2: The hald fills /var/log/messages with block device errors. It seems that it happens because ub allowed opens of known offline devices, and then partition checking produced those errors. I hope taking code from sd.c should fix it. Also I replaced usb_unlink_urb with usb_kill_urb. Signed-off-by: Greg Kroah-Hartman [PATCH] USB: acm work around for misplaced this implements a work around for some devices which have correct extra descriptors, but misplace them. Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Descriptor listing bugfix for g_file_storage This patch repairs a mistake I made when adding OTG support to the file-storage gadget. All the descriptor entries were bumped up by one, which caused a problem during initialization. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove ugly code from usb/serial/usb-serial.c. This patch removes ugly code from some function in usb/serial/usb-serial.c which is using a goto statement intead of a simple `return'. To be true, I'm not certain if there is a special reason to do that, if so ignore me. ;) Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] USB: missing check in usb/serial/usb-serial.c. This patch add a missing check in the call to bus_register() and not initialise `result' (which is not necessary). Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] USB: cdc-acm-usb-use-uninit-mem-bug.patch Attached is a patch for cdc-acm out of bounds access. Signed-off-by: Catalin(ux aka Dino) BOIE Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Allow device resets for hubs This patch adds support for calling usb_reset_device() on hubs (other than root hubs). It uses some of the new routines added recently by David Brownell to shorten and simplify the code. The only place where this is called is if khubd encounters a serious error with a hub, so I don't expect it to turn up very often in ordinary use. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [CPUFREQ] i386 Kconfig fixes i386 cpufreq Kconfig fixes: - /proc/acpi/processor/../performance is available for all ACPI perflib drivers - powernow-k8 depends on FREQ_TABLE - clarify the heavy dependency of SPEEDSTEP_CENTRINO on ACPI - remove the EXPERIMENTAL tag of SPEEDSTEP_CENTRINO_ACPI - allow to disable SPEEDSTEP_CENTRINO_TABLE Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] x86_64 Kconfig fixes x86_64 cpufreq Kconfig fixes: - SPEEDSTEP_CENTRINO _needs_ the ACPI perflib as the tables are for Banias only, and the Banias is only 32bit - SPEEDSTEP_CENTRINO_TABLE won't be built in any longer as it only wastes space - /proc/acpi/processor/../performance is available for all ACPI perflib drivers Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] arm Kconfig fixes arm cpufreq Kconfig enhancements: - don't force the deprecated 24_API on SA11x0 any more, as it will be removed ~2005-01-01 and different interfaces have been available for a long time - don't mark CPU_FREQ as being EXPERIMENTAL any longer - re-order it in the same way other arches are ordered Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] core Kconfig fix cpufreq core Kconfig fix: - 24_API is a part of the userspace governor, so keep it directly below the userspace governor Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] speedstep-centrino should only decode MSR on certain CPUs The encoding of the MSR only works as described in extract_clock() on certain EST-enabled CPUs. So, limit the actual MSR check to these CPUs. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] remove double calls to module_get/put in userspace governor The cpufreq core properly gets and puts the modules it calls, including governors. So there's no need to keep the racy in-module calls in cpufreq_userspace denoting otherwise. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ][1/4] cpufreq "cpu group" awareness: add policy->cpus Save the "affected_cpu_map" used in SMT-aware drivers in struct cpufreq_policy->(cpumask_t) cpus, and use it wherever possible. In most cases, the ->get() function is only allowed to run on one CPU [the one passed as argument] to keep code simpler, and as that code path isn't executed often, and only root can do it anyway. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ][2/4] cpufreq "cpu group" awareness: save sysdev for all CPUs Save a copy of each CPU's struct sys_device in drivers/cpufreq/cpufreq.c so that symlinks can be removed even outside the specific sys_device's ->remove() function. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ][3/4] cpufreq "cpu group" awareness: do symlinks for other CPUs instead of registering kobjects Only register each "affected_cpu_mask" once, and do symlinks for those CPUs not directly registered to the driver model. Zwane Mwaikambo tested it, and here is the result: root@morocco cpu {0:0} pwd /sys/devices/system/cpu root@morocco cpu {0:0} tree . |-- cpu0 | |-- cpufreq | | |-- cpuinfo_cur_freq | | |-- ... | | -- scaling_setspeed | -- online -- cpu1 |-- cpufreq -> ../../../../devices/system/cpu/cpu0/cpufreq -- online Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ][4/4] cpufreq "cpu group" awareness: remove FIXME in speedstep-ich Remove the FIXME in speedstep-ich. arch/i386/kernel/cpu/cpufreq/speedstep-ich.c | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones PCI: fix __iomem warnings in quirk code Signed-off-by: Greg Kroah-Hartman kevent: standardize on the event types This prevents any potential typos from happening. Signed-off-by: Greg Kroah-Hartman USB: fix hcd-pci's __iomem warnings Signed-off-by: Greg Kroah-Hartman USB: fix up __iomem warnings in the ehci driver. Signed-off-by: Greg Kroah-Hartman USB: fix up __iomem warnings in the ohci driver. Signed-off-by: Greg Kroah-Hartman USB: fix up some minor sparse warnings in the uhci driver. Signed-off-by: Greg Kroah-Hartman kevent: add block mount and umount support Send notification over the new netlink socket to let userspace know that the filesystem code claims/releases the superblock on an blockdevice. This way, userspace can get rid of constantly polling /proc/mounts to watch for filesystem changes. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman [PATCH] w1_therm: more precise temperature calculation This patch will introduce new temperature calculation mechanism which allows to use up to 9bit resolution(currently 3 digits after point). Fixed timeout issues with multiple repeated reading. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in class/audio.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in class/bluetty.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in class/cdc-acm.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in class/usb-midi.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb() in image/hpusbscsi.c here's my next cleanup. I've changed the name of the goto label in order to remain consistent with naming. Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman fix SPI transport attributes not showing up in sysfs There was a typo in the host patch that wrongly added a null into the target attributes. add channel to struct scsi_target this may be temporary depending on how the channel issue is resolved for qla1280 [PATCH] mark scsi_add_host __must_check it seems scsi_add_host() is one of those functions that a driver really has to check the return value of, but several forget to do this. Patch below marks it __must_check which will cause a warning in this case (with gcc 3.4 and later).. Signed-off-by: James Bottomley [PATCH] fix Scsi_Host leak in BusLogic Signed-off-by: James Bottomley [PATCH] kill useless spinlock wrappers in BusLogic Signed-off-by: James Bottomley [PATCH] remove abort,reset methods from host templates Due to the prototype changes they'd been giving warnings since before 2.6.0 was release, it's time to finally kill them. Signed-off-by: James Bottomley [PATCH] avoid obsolete "scsi.h" APIs in st > Date: Tue, 14 Sep 2004 20:18:00 +0200 > From: Christoph Hellwig > Subject: [PATCH] avoid obsolete "scsi.h" APIs in st > > no actual behaviour changes, just update to the less obsfucated 2.6+ > APIs. > Looks good to me but did not link when DEBUG was set to 1: one print_req_sense() conversion was missed. This is corrected in the patch at the end of this message. Signed-off-by: Kai Makisara Signed-off-by: James Bottomley scsi: add blacklist attribute indicating no ULD attach From: Jeremy Higdon Add blacklist attribute to disable ULD attachment to a lun, and use that attribute for SGI-branded Engenio UTM luns. Minor rejection fixes and Signed-off-by: James Bottomley [PATCH] pegasus.c fixes drivers/usb/net/pegasus.c: In function `pegasus_set_settings': drivers/usb/net/pegasus.c:961: warning: passing arg 2 of `mii_ethtool_sset' from incompatible pointer type drivers/usb/net/pegasus.c: In function `pegasus_get_msglevel': drivers/usb/net/pegasus.c:978: warning: unused variable `pegasus' drivers/usb/net/pegasus.c: In function `pegasus_set_msglevel': drivers/usb/net/pegasus.c:985: warning: unused variable `pegasus' Signed-off-by: Andrew Morton [netdrvr b44] ignore carrier lost errors some (?) hardware seems to be buggy and is reporting bogus carrier lost values. Both reference implementations from Broadcom indicate that this counter is not reliable and therefore ignore it. We should do the same. "Fixes" the carrier lost problem i've seen. Signed-off-by: Florian Schirmer [netdrvr b44] clean up SiliconBackplane definitions/functions there is a good amount of code to support SiliconBackplane functions which are unneeded or simply plain wrong. Lets get rid of it. Signed-off-by: Florian Schirmer [netdrvr b44] update MODULE_AUTHORS As prodded by David Miller. [PATCH] b44: use bounce buffers to workaround chip DMA bug/limitations Signed-off-by: Pekka Pietikainen scsi: add proper pci id table to aic7xxx From: Andi Kleen Patch updated by: Christoph Hellwig Signed-off-by: James Bottomley [PATCH] 2.6.9 aacraid: aac_count fix Changed the managing of aac device structures to a linked list so that there is no limit to how many adapters can be configured. Also, put the call to scsi_add_host earlier in the probe function, before devices are accessed. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley [PATCH] SCSI QLA not working on latest *-mm SN2 On Thursday, September 16, 2004 1:56 pm, Andrew Vasquez wrote: > On Thu, 2004-09-16 at 13:05, Jesse Barnes wrote: > > On Thursday, September 16, 2004 12:56 pm, Paul Jackson wrote: > > > Andrew Vasquez has been looking at this, via private email with just > > > me (no progress yet). Figured I update the larger list with this much > > > ... > > > > It seems to be failing on one of the accesses to PCI_COMMAND in config > > space in qla2x00_reset_chip(). I'm checking now to see if we're > > accessing the card right after a reset but before the card has finished. > > That would cause a master abort, the symptom I'm seeing at least. > > Interesting, the only changes in reset_chip() are for PCI posting > issues. Relevant diff attached. Yeah, I think one of these is the culprit. Before I got your message, I fixed some of them in my tree already (see attached) and things seem to work. WRT_REG_WORD(®->hccr, HCCR_CLR_RISC_INT); + RD_REG_WORD(®->hccr); /* PCI Posting. */ WRT_REG_WORD(®->hccr, HCCR_CLR_HOST_INT); + RD_REG_WORD(®->hccr); /* PCI Posting. */ /* Reset ISP chip. */ WRT_REG_WORD(®->ctrl_status, CSR_ISP_SOFT_RESET); + RD_REG_WORD(®->ctrl_status); /* PCI Posting. */ In particular, are the above ok? If the chip is resetting, won't doing a read cause a machine check (or at the very least, a device select timeout, which will return all ones on friendlier platforms). WRT_REG_WORD(®->ctrl_status, CSR_ISP_SOFT_RESET); + RD_REG_WORD(®->ctrl_status); /* PCI Posting. */ Same here? Signed-off-by: James Bottomley [PATCH] SCSI QLA not working on latest *-mm SN2 (qla_dbg fixes) On Thu, 2004-09-16 at 14:09, Jesse Barnes wrote: > On Thursday, September 16, 2004 1:56 pm, Andrew Vasquez wrote: > > On Thu, 2004-09-16 at 13:05, Jesse Barnes wrote: > > > On Thursday, September 16, 2004 12:56 pm, Paul Jackson wrote: > > > > Andrew Vasquez has been looking at this, via private email with just > > > > me (no progress yet). Figured I update the larger list with this much > > > > ... > > > > > > It seems to be failing on one of the accesses to PCI_COMMAND in config > > > space in qla2x00_reset_chip(). I'm checking now to see if we're > > > accessing the card right after a reset but before the card has finished. > > > That would cause a master abort, the symptom I'm seeing at least. > > > > Interesting, the only changes in reset_chip() are for PCI posting > > issues. Relevant diff attached. > > Yeah, I think one of these is the culprit. Before I got your message, I fixed > some of them in my tree already (see attached) and things seem to work. > Hmm, seems we were a bit too over-aggressive in placement of the readw()s :( > WRT_REG_WORD(®->hccr, HCCR_CLR_RISC_INT); > + RD_REG_WORD(®->hccr); /* PCI Posting. */ > WRT_REG_WORD(®->hccr, HCCR_CLR_HOST_INT); > + RD_REG_WORD(®->hccr); /* PCI Posting. */ > > /* Reset ISP chip. */ > WRT_REG_WORD(®->ctrl_status, CSR_ISP_SOFT_RESET); > + RD_REG_WORD(®->ctrl_status); /* PCI Posting. */ > > In particular, are the above ok? If the chip is resetting, won't doing a read > cause a machine check (or at the very least, a device select timeout, which > will return all ones on friendlier platforms). > There are several more which deltas in qla_dbg.c which are suspect also. > WRT_REG_WORD(®->ctrl_status, CSR_ISP_SOFT_RESET); > + RD_REG_WORD(®->ctrl_status); /* PCI Posting. */ > > Same here? > Andrew, please add Jesse's patch along with the patch I'm attaching to your tree. I'll be sure to add the ia64 machine back into our test ring. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley some ncr53c8xx decrufting From: Christoph Hellwig kills lots of BSD glue and procfs mess Acked by: Matthew Wilcox Signed-off-by: James Bottomley scsi: Add reset ioctl capability to ULDs Currently, the only way to issue a SCSI reset of any type is to use the sg device. By adding extra ioctls to scsi_ioctl.c we enable this for all ULDs. The slight complication is that scsi_ioctl() is usually only called when the device has been checked not to be undergoing eh recovery. Resets may be issued in this scenario if the user opens the device O_NONBLOCK. Signed-off-by: James Bottomley [netdrvr sis900] whitespace and codingstyle updates Big patch, but only contains whitespace and CodingStyle fixes to make the whole sis900.c file uniform. Some >80 lines where too difficult to split, so I let them alone, readability would be just as bad as is now. This patch depends on the previous one liner that adds the new PHY ID and is made against kernel 2.6.8 (as the previous). This patch is also available at: http://teg.homeunix.org/sis900.html [PATCH] move scsi_add_host back to where it belongs in aacraid looks like you applied a premature version of the last aacraid patch. This one moves the scsi_add_host back so it's not called before the driver is ready to accept queued commands. Signed-off-by: James Bottomley [PATCH] don't mark aacraid as experimental Signed-off-by: James Bottomley [PATCH] Allow LLDD's to fail slave alloc (non-existent slave) In the cases where an LLDD knows that a lun does not exist, if it fails slave_alloc(), the midlayer reports an error message indicating slave_alloc failed. This patch allows the LLDD to reject the slave_alloc() call if it knows the lun doesn't exist, and skips the reporting of the slave_alloc failure message. This avoids jumping through hoops in the LLDD to avoid error messages from slave_alloc. Also saves cycles in that the probe is also cancelled for the non-existent device. Signed-off-by: James Bottomley [PATCH] USB: remove call to usb_unlink_urb() in media/usbvideo.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in media/stv680.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in media/se401.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove call to usb_unlink_urb in media/ov511.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in media/konicawc.c since usb_kill_urb is a void function, the checking of the return status had to go too. Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/xpad.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: usb_unlink_urb removal from input/ati_remote.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/wacom.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/usbmouse.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in core/message.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove usb_unlink_urb() calls in input/kbtab.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: usb_unlink_urb removal from input/hid-core.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/mtouchusb.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: usb_unlink_urb removal from input/aiptek.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/usbkbd.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb() in input/pid.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in image/mdc800.c (v2) Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in input/powermate.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb() in input/touchkitusb.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: oops, revert drivers/usb/core/message.c change. That patch was just not right... Signed-off-by: Greg Kroah-Hartman [PATCH] usb speedtch: no side-effects in BUG_ON It seems that people want BUG_ON to be like an assertion: harmless if removed. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman [PATCH] usb speedtch: convert to using usb_kill_urb Unlike usb_unlink_urb, usb_kill_urb guarantees that completion handlers have finished running before it returns. The bunch of disconnect code that waited for completion handlers can now go away. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman [PATCH] switch fusion to use everywhere Acked By: Moore, Eric Dean Signed-off-by: James Bottomley USB: fix incorrect usage of usb_kill_urb in rtl8150 driver. Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Fix oops in usblp driver This bug was reported back in July, and I sent out a patch but apparently it never got to you. The usblp driver was calling usb_buffer_free() from usblp_cleanup(), which runs after disconnect() if a user process holds the device open. But once the usb_device is gone usb_buffer_free() will oops. The patch frees the buffers in usb_disconnect() instead. Recently Joost Witteveen reported the same oops and found that the patch solved it for him. So there shouldn't be problems with accepting it. Signed-off-by: Alan Stern Signed-off-by: Vojtech Pavlik Signed-off-by: Greg Kroah-Hartman [PATCH] USB: net2280 updates Net2280 patches to: - Make reset logic ensure endpoint toggle and halt bits only get cleared on endpoints other than ep0 to fix an extremely unlikely (but possible) state when a setup packet come in after we've checked the reset status but before calling ep_reset(). - Avoid a disconnect hang by exchanging SUSPEND_IMMEDIATELY (intended for use when the 8051 is the PCI host) with SUSPEND_REQUEST_INTERRUPT to suspend the NET2280. - Make rmmod of gadget drivers trigger disconnect; earlier changes to reset logic broke this. Signed-off-by: Alex Sanks Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: host side fixes for pxa2xx/ethernet/rndis gadgets, like gumstix This fixes an interop glitch with PXA gadgets; please merge. This resolves an issue that's more or less specific to hosts trying to talk pxa255 based Linux devices using the Ethernet/RNDIS gadget driver. - Teaches "usbnet" about the product ID used by pxa255 based devices when they enable RNDIS, since it won't be using CDC Ethernet. - Forces usbcore config selection code to use non-RNDIS configurations, even when their class is vendor-specific (as in the pxa255 case). This makes gumstix devices, for example, talk with Linux 2.6.9 hosts AND with Windows ... previously only one would work. From: Craig Hughes Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Support system suspend in File-Storage Gadget This patch adds support for system-wide suspend to the File-Storage Gadget. Please apply. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Suspend update for dummy_hcd This patch fixes a few minor errors in the port suspend/resume handling code of the dummy_hcd driver. There are a couple of other small changes too, such as removing a BUG_ON(). Please apply. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Activate new hubs and resumed hubs the same way This patch makes the newly-probed hub pathway, the hub reset pathway, and the resumed hub pathway all use the same routine for activating the hub and scanning for port change events as soon as possible. It's a modified version of something originally written by David Brownell, updated to match the current source. Please apply. Signed-off-by: David Brownell Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Add Surecom USB Ethernet device ids to usbnet Add Surecom EP-1427X-2 device ids. Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Use list_for_each_entry etc. in UHCI driver This patch was developed largely by Domen Puncer. It makes the code in the UHCI driver more readable by utilizing list_for_each_entry and related macros. I merely made a couple of very small stylistic changes and converted one additional hunk of code. Signed-off-by: Domen Puncer Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Fix data toggle handling in the UHCI driver This patch fixes an error in the way the UHCI driver computes data-toggle updates when unlinking a bulk or interrupt URB that hasn't transferred any data. Thanks to Thierry Chantry for finding this bug and testing the patch. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman [PATCH] i2c: Add Intel VRD 10.0 and AMD Opteron VID support This patch adds support for Intel VRD 10.0 and AMD Opteron VID calculations. It is based on the lm_sensors project CVS, r1.6. Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: Cleanup lm78 init This patch cleans the init part of the lm78 driver. * Do not reset the chip. * Get rid of useless code, which was accidentally left in when we removed the limit initialization from the driver. * Do not enable monitoring if it is already enabled (it wouldn't hurt, but since we can avoid it at no cost...) Similar changes were applied to the Linux 2.4 driver, which I successfully tested on my own LM78 chip. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] i2c/i2c-mpc: replace schedule_timeout() with msleep_interruptible() Properly orders set_current_state() and add_wait_queue(). Uses msleep_interruptible() in place of schedule_timeout() to guarantee the task delays as expected. Uses set_current_state() instead of direct assignment of current->state. Signed-off-by: Nishanth Aravamudan Signed-off-by: Greg Kroah-Hartman [PATCH] Put symbolic links between drivers and modules in the sysfs tree This functionality is essential for us to work out which drivers are supplied by which modules. We use this in turn to work out which modules are necessary to find the root device (and hence what initrd/initramfs needs to insert). If you look at debian at the moment, it uses a huge mapping table on /proc/scsi/* to do this. If we implement the sysfs feature, we can simply go from /sys/block/ to the actual device to the driver and then to the module with no need of any fixed tables. Signed-off-by: James Bottomley Signed-off-by: Greg Kroah-Hartman [PATCH] USB: add support for symlink from usb and usb-serial driver to its module in sysfs Signed-off-by: Greg Kroah-Hartman [PATCH] PCI: add "struct module *" to struct pci_driver to show symlink in sysfs for pci drivers. Signed-off-by: Greg Kroah-Hartman remove old ifdefs aic79xx From: janitor@sternwelten.at Patches to remove some old ifdefs. remove most of the #include kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley remove old ifdefs aic7xxx From: janitor@sternwelten.at Patches to remove some old ifdefs. remove most of the #include kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems Signed-off-by: James Bottomley [PATCH] add .module to qla1280 template This was missing. It needs to be added so the module tracking actually works correctly for the driver. Signed-off-by: James Bottomley complete the bus_addr_t removal from aic7xxx Signed-off-by: James Bottomley [PATCH] QLogic ISP2x00: remove needless busyloop From: Bjorn Helgaas There's no need to wait for an isp2x00 to recognize a fabric if there's no isp2x00. Probably nobody will notice the unnecessary slowdown on real hardware, but it's a significant delay on a simulator. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [driver model] Change symbol exports to GPL only in drivers/base/bus.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change sybmols exports to GPL only in class.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change symbol exports to GPL only in core.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change symbol exports to GPL only in driver.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change symbol exports to GPL only in firmware.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change symbol exports to GPL only in platform.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver model] Change symbol exports to GPL only in sys.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [sysfs] Change symbol exports to GPL only in bin.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [sysfs] Change symbol exports to GPL only in dir.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [sysfs] Change symbol exports to GPL only in file.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [sysfs] Change symbol exports to GPL only in group.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [sysfs] Change symbol exports to GPL only in symlink.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver core] Change symbol exports to GPL only in power/main.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver core] Change symbol exports to GPL only in power/resume.c Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [driver core] Change symbol exports to GPL only in power/suspend.c. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman [PATCH] don't mark the initio 9100 driver broken Users report it just works fine, it has basic EH and compiles without warnings even on ppc64. Signed-off-by: James Bottomley [PATCH] remove internal queueing from inia100 The driver had some trivial internal queueing for srb allocation failure in ->queuecommand that can be done at the midlayer easily. Signed-off-by: James Bottomley [PATCH] Add SPI-5 constants to scsi.h On Tue, Sep 21, 2004 at 01:04:38PM +0100, Christoph Hellwig wrote: > On Tue, Sep 21, 2004 at 12:50:59PM +0100, Matthew Wilcox wrote: > > > > Add the new constant names from SPI-5 to > What about having a section ala > > /* > * Old SCSI2 names, don't use in new code > */ > #define ABORT ABORT_TASK_SET > #define BUS_DEVICE_RESET TARGET_RESET > > instead of intermixing them with the rest of the defines? Sure... Signed-off-by: James Bottomley Remove duplicate IDENTIFY from scsi.h Signed-off-by: James Bottomley [PATCH] fix inia100 dma mapping warnings - always use the midlayer provided field to save the dma handle for unmapping - merge the unmapping into the main completion handler Signed-off-by: James Bottomley [PATCH] PCI: fix up usb quirk __init marks Lukas Hejtmanek wrote: > > Unable to handle kernel paging request at virtual address 0000ffff > printing eip: > c0402097 > *pde = 00000000 > Oops: 0002 [#1] > PREEMPT > Modules linked in: yenta_socket pcmcia_core i830 ehci_hcd uhci_hcd rtc > CPU: 0 > EIP: 0060:[] Tainted: P VLI > EFLAGS: 00010246 (2.6.9-rc2-mm2) > EIP is at quirk_usb_early_handoff+0x0/0x3e > eax: 0000ffff ebx: c035d954 ecx: c6866000 edx: 00020000 > esi: c6866000 edi: c035da4c ebp: ceede380 esp: c7f4bed8 > ds: 007b es: 007b ss: 0068 > Process pccardd (pid: 3386, threadinfo=c7f4a000 task=c5ea2d70) > Stack: c01d2076 c6866000 c6866000 ceede380 00000000 c01d20ba c6866000 c035d81c > c035da4c c01d01ce 00000000 c6866000 00000000 00000000 c01d0214 ceede380 > 00000000 c686642c ceede380 ceede394 c7f4a000 cfbdd0de ceede380 00000000 > Call Trace: > [] pci_do_fixups+0x49/0x4b Well quirk_usb_early_handoff() should be __devinit, not __init. There are a few other things in there which look hotpluggy, and are marked __init. The whole thing needs a review. Signed-off-by: Greg Kroah-Hartman [PATCH] scsi_mid_low_api.txt update - initiator device -> initiator port - add scsi_activate_tcq() + scsi_deactivate_tcq() Signed-off-by: James Bottomley fusion dead code removal From: Christoph Hellwig This patch (ontop of the patch to use ) removes lots of dead code from the fusion driver, mostly related to the orphaned dmp and target drivers. Acked By: Moore, Eric Dean also modified not to back out MPTSTM code Signed-off-by: James Bottomley [PATCH] aacraid: dynamic dev update Here is the patch with Christoph's comments addressed. Description from Mark Salyzyn: The main purpose of this patch is to move the array's cached request sense packets into a per-adapter structure rather than leaving it global (before ID 1,0,0,0 shares 2,0,0,0 cached sense). SAS pressed this change as we needed to allocate the sense packets dynamically. Signed-off-by Mark Haverkamp Signed-off-by: James Bottomley [PATCH] tmscsim: back out bogus eeprom reading changes Signed-off-by: James Bottomley merge a100u2w source files From: Christoph Hellwig looking at the a100u2w driver the split between the inia100.c and i60uscsi.c source files is hindering work badly. So I'm attaching below a new a100u2w.c that is a merge of those two, but no code changes at all (yet) - just the comment headers and includes of the two merged, then rest of i60uscsi.c, then rest of inia100.c. Signed-off-by: James Bottomley NTFS: Implement extent mft record deallocation. Signed-off-by: Anton Altaparmakov Fix a100u2w compile error Signed-off-by: James Bottomley Add refcounting to scsi command allocation The USB bug reported in: http://bugme.osdl.org/show_bug.cgi?id=3466 Looks to be because we allow device and host removal while some commands are in-flight. This can be fixed by taking and releasing a ref on the scsi_device when the commands are allocated and freed. Signed-off-by: James Bottomley qla1280: ISP1020/1040 support From: Christoph Hellwig This patch adds support for the older ISP1020/1040 chips to the qla1280 driver. In fact it does not add much support but enables the work merged earlier. It's been tested to work nicely on x86 and alpha machines by multiple people, it unfortunately doesn't work on SGI mips systems yet, but I'm pretty sure that's due to bugginess in the pci code for those plattforms. Signed-off-by: James Bottomley tmscsim: remove redundant code From: Guennadi Liakhovetski Signed-off-by: Guennadi Liakhovetski Signed-off-by: James Bottomley [PATCH] initio: remove obsolete APIs, cleanup This patch has the usual cleanups for the initio driver: - remove scsi.h APIs - add missing statics - remove the trivial internal queuing for the srb allocation failure case but while doing that I noticed that the two source files use completely different headers, and the interface between the two files often casted to generic types just to cast it back to a separate defintion of the same type again. In one case the structures were even mismatching, but because we allocated the bigger defintion and only passed pointers around it actually worked.. Thanks to Rodrigo Severo for testing this patch. Signed-off-by: James Bottomley [PATCH] a100u2w: cleanups - mark all functions static - don't use scsi.h obsolete symbols - add my copyright boilerplate (more for last years work then the trivial nitpicks here) - comment formatting fixes - remove dead wood from a100u2w.h Signed-off-by: James Bottomley I2C: change i2c-elektor.c driver from using pci_find_device() Signed-off-by: Greg Kroah-Hartman I2C: convert scx200_acb driver to not use pci_find_device Signed-off-by: Greg Kroah-Hartman [PATCH] USB Gadget: Ethernet/RNDIS gadget, minor updates Helps battery recharge, and gives this a new version string since it's changed a lot since St. Patrick's Day. Just minor updates: - use usb_gadget_vbus_draw() when changing configs, so that USB can be used to recharge batteries (or whatever); and report power use. bMaxPower is now 100 mA except with OTG (where it's 8mA). - rename /proc/rndis/000 as /proc/driver/rndis-000, and only have it when a new CONFIG variable is set (added by a later patch) - minor fixes to make some debug-only rndis messages compile - version is now "Equinox 2004". Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB: OHCI support for PXA27x here's a patch from Nico to add PXA27x OHCI support. Please merge; it applies on top of your current BK with some offsets, but I can't build that tree for ARM because of some #include lossage. OHCI driver for the Intel PXA27x processor Signed-off-by: Nicolas Pitre Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB Gadget: debug files now Kconfigured This adds a new Kconfig option, so now all the usb peripheral controllers have the same way to enable debug files (or more typically, disable them). Several of the USB peripheral controller drivers have a /proc/driver/udc file that's handy when debugging, but probably not wanted otherwise. This patch adds CONFIG_USB_GADGET_DEBUG_FILES, and uses it to replace some driver-internal defines. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman [PATCH] USB storage: delayed device scanning This patch started life as as366, got some modifications, and lives now as as366b. It implements a delay in SCSI-layer device scanning for usb-storage devices at insertion time. Many devices work better with this delay. We believe we can remove several US_FL_FIX_INQUIRY unusual_devs.h entries with this patch. (That's a hint, Phil!) The delay is adjustable via a sysfs parameter which is global to the usb-storage module. The default is 5 seconds. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman [PATCH] USB Storage: ignore bogus residue values This patch allows usb-storage to ignore the reported residue values when required by some devices. A few devices are included... I know more are waiting to be merged into unusual_devs.h In case anyone is curious... yes, these are broken devices. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman [PATCH] USB Storage: revert GetMaxLUN strictness This is patch as384. It reverts some of our sanity checks on the GetMaxLUN part of the Bulk-only protocol. Apparently, this is one area where vendors can't even get close to correct. So, in the face of any sort of error, we assume a single LUN. We also include some comments so we don't make this mistake again. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman [PATCH] usb-serial: Moves the search in device list out of usb_serial_probe(). Move the search in `usb_serial_driver_list' out of usb_serial_probe(). Note that: 1) The `found' variable is not necessary; 2) If the device does have a probe function, I'm calling usb_match_id() again. I'm uncertain if this is the better thing to do. Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] usb-serial: create_serial() return value trivial fix. create_serial() only returns NULL if there is no memory enough to a new `usb_serial' structure, thus, the right error code to return is -ENOMEM. Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] usb-serial: return_serial() trivial cleanup. return_serial() trivial cleanup: 1) CodingStyle fix; 2) The `return' is not necessary, we are at the end of a function which don't return nothing (void). Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] usb-serial: usb_serial_register() cleanup. usb_serial_register() cleanup 1) CodingStyle in the call of usb_serial_bus_register() 2) The goto and the duplicate `return retval' are not necessary Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] usb-serial: Add module version information. Add module version information for drivers/usb/serial/usb-serial.c. Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in net/catc.c Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove calls to usb_unlink_urb in misc/legousbtower.c another trivial one. Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] USB: remove _some_ calls to usb_unlink_urb in misc/auerswald.c here's a more controversial one. Firstly, auerchain_unlink_urb:1180 is a wrapper for usb_unlink_urb so i don't think we should change that. Secondly, auerswald_int_release returns an int which is the error code returned by usb_unlink_urb. usb_kill_urb is a void, however, so I've removed the error checking. For the sake of debugging, the dbg-line announcing the name of the function is probably enough. Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman [PATCH] module.h build fix From: Ingo Molnar Forward-declare the structures before using them, rather than relying on previous inclusions. akpm: The breakage was introduced by bk-driver-core.patch Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman [PATCH] I2C: Store lm83 and lm90 temperatures in signed Back when I wrote the lm83 and lm90 drivers, I decided to use unsigned variables to store temperature values as mirrored from the chipset registers. I wonder why, since the registers use signed values themselves. The patch below changes the variables back to signed types, so as to simplify the conversions made by the driver, making them faster and easier to understand. Additionally, the lm90 driver was lacking boundary checkings and proper rounding when writing temperature limits to the chipset, so I added these. I also reworded the comments about internal temperature values representation for all chipsets. Tested to work fine on my (LM90-compatible) ADM1032 chip. lm83 patch untested, but it is more simple and directly copied from the lm90, so I am confident it works fine too. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman [PATCH] i2c: sensors chip driver updates This patch modifies some sysfs file names for sensors chip drivers in accordance with the standard interface proposed here [1] and refined here [2]. The lm_sensors userspace tools have been modified to accept both the new and old names. This patch was tested for some drivers, and at least compile tested for the rest. [1] http://archives.andrew.net.au/lm-sensors/msg08477.html [2] http://archives.andrew.net.au/lm-sensors/msg18391.html Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman [PATCH] i2c: kill some sensors driver macro abuse This patch kills a specific kind of ugly and ultimately useless macro abuse found in many sensors chip drivers. Compile tested only. Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman [PATCH] USB: Fixes for ub in 2.4.9-rc2-mm2 - Do retries for a memory key which was handed out on Kernel Summit 04. - Add missing del_timer. - Add shifts for a 2KB block size device, from Pat LaVarre. Signed-off-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman [PATCH] usb: extract sensible strings from buggy string descriptors The Freebox is a USB modem popular in France. It returns bogus string descriptors: while the string part is there, the length and type bytes are both zero. This patch detects that case and tries to recover a sensible string by scanning for printable Latin characters. This not only causes the modem to spring to life (because usbnet gets a valid MAC address) - it also means you get the correct Product and Manufacturer strings in sysfs and elsewhere. This patch is in the "mostly harmless" category. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman [PATCH] USB: export inteface and configuration strings to sysfs this patch adds exporting of configuration and interface strings to sysfs. both configuration and interface strings are present on my Nokia 7610 phone, which can be connected via USB, and I thought it would be a good idea to make them easily accessible via sysfs: [root@cs181035096 usb1]# cat 1-1/manufacturer 1-1/product Nokia 7610 [root@cs181035096 usb1]# grep "" `find . -name configuration` ./1-1/configuration:First and Last and Always [root@cs181035096 usb1]# grep "" `find . -name interface` ./1-1/1-1:1.6/