commit 97be852f81c5bb114aab31974af2c061eb86a6de Merge: cdb54fa... aae343d... Author: Linus Torvalds Date: Sat Dec 2 15:08:32 2006 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (118 commits) [netdrvr] skge: build fix [PATCH] NetXen: driver cleanup, removed unnecessary __iomem type casts [PATCH] PHY: Add support for configuring the PHY connection interface [PATCH] chelesio: transmit locking (plus bug fix). [PATCH] chelsio: statistics improvement [PATCH] chelsio: add MSI support [PATCH] chelsio: use standard CRC routines [PATCH] chelsio: cleanup pm3393 code [PATCH] chelsio: add 1G swcixw aupport [PATCH] chelsio: add support for other 10G boards [PATCH] chelsio: remove unused mutex [PATCH] chelsio: use kzalloc [PATCH] chelsio: whitespace fixes [PATCH] amd8111e use standard CRC lib [PATCH] sky2: msi enhancements. [PATCH] sky2: kfree_skb_any needed [PATCH] sky2: fixes for Yukon EC_U chip revisions [PATCH] sky2: add Dlink 560SX id [PATCH] sky2: receive error handling fix [PATCH] skge: don't clear MC state on link down ... commit cdb54fac35812a21943f0e506e8e3b94b469a77c Merge: 3704331... 8b7feff... Author: Linus Torvalds Date: Sat Dec 2 08:29:04 2006 -0800 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/drzeus/mmc: mmc: correct request error handling mmc: Flush block queue when removing card mmc: sdhci high speed support mmc: Support for high speed SD cards mmc: Fix mmc_delay() function mmc: Add support for mmc v4 wide-bus modes [PATCH] mmc: Add support for mmc v4 high speed mode trivial change for mmc/Kconfig: MMC_PXA does not mean only PXA255 Make general code cleanups Add MMC_CAP_{MULTIWRITE,BYTEBLOCK} flags Platform device error handling cleanup Move register definitions away from the header file Change OMAP_MMC_{READ,WRITE} macros to use the host pointer Replace base with virt_base and phys_base mmc: constify mmc_host_ops vectors mmc: remove kernel_thread() commit 37043318b12ea351c357d7bd8a184b63940f38d7 Merge: 116b23b... 7bdd21c... Author: Linus Torvalds Date: Sat Dec 2 08:28:28 2006 -0800 Merge branch 'release' of master.kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of master.kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: Revert "ACPI: SCI interrupt source override" commit aae343d493df965ac3abec1bd97cccfe44a7d920 Author: Jeff Garzik Date: Sat Dec 2 07:14:39 2006 -0500 [netdrvr] skge: build fix Signed-off-by: Jeff Garzik commit 7bdd21cef9e5dbc3d3a718c55bb3d0da024644da Author: Len Brown Date: Sat Dec 2 02:27:46 2006 -0500 Revert "ACPI: SCI interrupt source override" This reverts commit 281ea49b0c294649a6de47a6f8fbe5611137726b, which broke ACPI Interrupt source overrides that move the SCI from one IRQ in PIC mode to another in IOAPIC mode. If the SCI shared an interrupt line with another device, this would result in a "irq 18: nobody cared" type failure. http://bugzilla.kernel.org/show_bug.cgi?id=7601 Signed-off-by: Len Brown commit 71bd7877d470b4037c9ef0d060ac39228f0f6289 Author: Amit S. Kale Date: Fri Dec 1 05:36:22 2006 -0800 [PATCH] NetXen: driver cleanup, removed unnecessary __iomem type casts Signed-off-by: Amit S. Kale netxen_nic.h | 38 ++++++++------------------------------ netxen_nic_ethtool.c | 5 ++--- netxen_nic_hw.c | 12 +++++------- netxen_nic_main.c | 8 +++----- 4 files changed, 18 insertions(+), 45 deletions(-) Signed-off-by: Jeff Garzik commit e8a2b6a4207332a2d59628a12cece9e8c1d769e4 Author: Andy Fleming Date: Fri Dec 1 12:01:06 2006 -0600 [PATCH] PHY: Add support for configuring the PHY connection interface Most PHYs connect to an ethernet controller over a GMII or MII interface. However, a growing number are connected over different interfaces, such as RGMII or SGMII. The ethernet driver will tell the PHY what type of connection it is by setting it manually, or passing it in through phy_connect (or phy_attach). Changes include: * Updates to documentation * Updates to PHY Lib consumers * Changes to PHY Lib to add interface support * Some minor changes to whitespace in phy.h * gianfar driver now detects interface and passes appropriate value to PHY Lib Signed-off-by: Andrew Fleming Signed-off-by: Jeff Garzik commit cabdfb373ae74036225826ce260c16a8e260eb0b Author: Stephen Hemminger Date: Fri Dec 1 16:36:22 2006 -0800 [PATCH] chelesio: transmit locking (plus bug fix). If transmit lock is contended on, then push return code back and retry at higher level. Bugfix: If buffer is reallocated because of lack of headroom and the send is blocked, then drop packet. This is necessary because caller would end up requeuing a freed skb. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 56f643c28c5df63693d7c66e56f8e4767cfd7a65 Author: Stephen Hemminger Date: Fri Dec 1 16:36:21 2006 -0800 [PATCH] chelsio: statistics improvement Cleanup statistics management: * Get rid of duplicate or unused statistics * Convert high volume stats to per-cpu and 64 bit Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 325dde48914e8ec1614d79ffacdbf9c0b8d24f42 Author: Stephen Hemminger Date: Fri Dec 1 16:36:20 2006 -0800 [PATCH] chelsio: add MSI support Using MSI can avoid sharing IRQ and associated overhead. Tested on PCI-X. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 57834ca152d5979f3f84f4e25f29f423e19d38fa Author: Stephen Hemminger Date: Fri Dec 1 16:36:19 2006 -0800 [PATCH] chelsio: use standard CRC routines Replace driver crc calculation with existing library. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit a7377a50b88fce135249cfa68dfe02fac4f5fd61 Author: Stephen Hemminger Date: Fri Dec 1 16:36:18 2006 -0800 [PATCH] chelsio: cleanup pm3393 code Replace macro with function for updating RMON values Cleanups: * remove unused enum's * Fix comment format Signed-off-by: Stephen HEmminger Signed-off-by: Jeff Garzik commit 352c417ddb593de757f0ee1fa490cb5444778c41 Author: Stephen Hemminger Date: Fri Dec 1 16:36:17 2006 -0800 [PATCH] chelsio: add 1G swcixw aupport Add support for 1G versions of Chelsio devices. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit f1d3d38af75789f1b82969b83b69cab540609789 Author: Stephen Hemminger Date: Fri Dec 1 16:36:16 2006 -0800 [PATCH] chelsio: add support for other 10G boards Add support for other versions of the 10G Chelsio boards. This is basically a port of the vendor driver with the TOE features removed. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 415294ecbb32ddbd0a7a2b7bae0b60fedfa09cc4 Author: Stephen Hemminger Date: Fri Dec 1 16:36:15 2006 -0800 [PATCH] chelsio: remove unused mutex This mutex is unused in current (non TOE) code. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1270266cf94c0de5bd1121f15aff9af8556dee84 Author: Stephen Hemminger Date: Fri Dec 1 16:36:14 2006 -0800 [PATCH] chelsio: use kzalloc Use kzalloc in several places. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 11e5a202ca9e93ecb5ff314a6a345e0e4db77d97 Author: Stephen Hemminger Date: Fri Dec 1 16:36:13 2006 -0800 [PATCH] chelsio: whitespace fixes Fix indentation and blank/tab issues. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 6b4bdde61bd1f8451801e5fb092cbe2d1050984e Author: Stephen Hemminger Date: Fri Dec 1 16:10:50 2006 -0800 [PATCH] amd8111e use standard CRC lib I noticed this driver (and several others) reinvent their own copy of the existing CRC library. Don't have the hardware, but tested by extracting code and comparing result. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit b0a20ded562cfa60b0d45d269e416f541f2d5aaf Author: Stephen Hemminger Date: Fri Dec 1 14:29:37 2006 -0800 [PATCH] sky2: msi enhancements. If using Message Signaled Interrupts (MSI) then the IRQ will never be shared. Don't call pci_disable_msi() unless using MSI. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 794b2bd20f620892616b09466186ff27101d9e5b Author: Stephen Hemminger Date: Fri Dec 1 14:29:36 2006 -0800 [PATCH] sky2: kfree_skb_any needed It is possible for the sky2 driver NAPI poll routine to be called with IRQ's disabled if netpoll is trying to make space in the tx queue. This is an obscure path, but if it happens, the kfree_skb needs to happen via softirq. Calling kfree_skb with IRQ's disabled is a not allowed. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 8df9a87604e38529898ce35c610792c03c8713a2 Author: Stephen Hemminger Date: Fri Dec 1 14:29:35 2006 -0800 [PATCH] sky2: fixes for Yukon EC_U chip revisions Update workarounds for 88E803X based on the latest SysKonnect vendor driver version (8.41). Tested on EC_U rev A1, only. These up the receive performance. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 508f89e75ab26506fcdbb1b6f7166029e4c56855 Author: Stephen Hemminger Date: Fri Dec 1 14:29:34 2006 -0800 [PATCH] sky2: add Dlink 560SX id Add new PCI ID for DLink 560SX. This from the latest SysKonnect vendor driver (version 8.41). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 5df791117afedf7fdc67dc0842dab4859e3edf69 Author: Stephen Hemminger Date: Fri Dec 1 14:29:33 2006 -0800 [PATCH] sky2: receive error handling fix If sky2 detects out of memory, or gets a bad frame, it reuses the same receive buffer, but forgets to poke the hardware. This could lead to the receiver getting stuck if there were lots of errors. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 758140900a82e3ed3bb2be1d4705dd352fe44825 Author: Stephen Hemminger Date: Fri Dec 1 11:41:08 2006 -0800 [PATCH] skge: don't clear MC state on link down I would rather fix Andy's problem by not clearing multicast information on link down. Also, add code to restore multicast state after ethtool phy reset. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit f789dfdc44d5bbc04fb7f06e1e4eb682169acaaf Author: Mariusz Kozlowski Date: Thu Nov 30 04:27:00 2006 -0700 [PATCH] mv643xx_eth: fix unbalanced parentheses in macros Signed-off-by: Mariusz Kozlowski Signed-off-by: Dale Farnsworth Signed-off-by: Jeff Garzik commit 7628b0a8c01a02966d2228bdf741ddedb128e8f8 Author: Samuel Thibault Date: Thu Nov 30 07:11:24 2006 -0500 drivers/net/tulip/dmfe: support basic carrier detection Signed-off-by: Jeff Garzik commit 88041b79f864dcd7f95e1d594eba683244dd968a Author: Stephen Hemminger Date: Fri Nov 17 13:41:58 2006 -0800 [PATCH] netdev: don't allow register_netdev with blank name This bit of old backwards compatibility cruft can be removed in 2.6.20. If there is still an device that calls register_netdev() with a zero or blank name, it will get -EINVAL from register_netdevice(). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 5ac366152a44da60c22c08df619012b1e3bc1adb Author: Randy Dunlap Date: Thu Nov 16 21:39:11 2006 -0800 [PATCH] netxen: uses PCI drivers/built-in.o: In function `netxen_nic_remove': netxen_nic_main.c:(.text+0x31b4d): undefined reference to `pci_disable_msi' netxen_nic_main.c:(.text+0x31b8e): undefined reference to `pci_release_regions' drivers/built-in.o: In function `netxen_init_module': netxen_nic_main.c:(.init.text+0x3f17): undefined reference to `pci_module_init' make: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Randy Dunlap Signed-off-by: Jeff Garzik commit cbee9f9115da7eac5dc44a450f2dab343236cb2c Author: Stephen Hemminger Date: Fri Nov 17 17:01:52 2006 -0800 [PATCH] chelsio: use kzalloc Use kzalloc() in chelsio driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 86c27d275507d81da179b571f35d34df61f7c6d3 Author: Stephen Hemminger Date: Fri Nov 17 17:00:34 2006 -0800 [PATCH] chelsio: use __netif_rx_schedule_prep The chelsio driver can use __netif_rx_schedule_prep instead of it's own test_and_set inline. Applies after the previous 4 patches. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e487647abbe66390b99f9a32ede4688b255282dd Author: Stephen Hemminger Date: Fri Nov 17 11:25:23 2006 -0800 [PATCH] chelsio: free_netdev Network devices need to be free'd with free_netdev() not kfree() otherwise the kernel will panic if an application has /sys/class/net/ethX/value open and reads it. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit bac7e8746ce562556b7bd750c7652154483b15e2 Author: Stephen Hemminger Date: Fri Nov 17 11:23:41 2006 -0800 [PATCH] chelsio: procectomy Complete removal of proc stuff from chelsio. The orignal driver had a debug proc interface, but not all the code got removed. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 205781510d2a55a5c231f6e51df5b6c4aa765143 Author: Stephen Hemminger Date: Fri Nov 17 11:21:22 2006 -0800 [PATCH] chelsio: whitespace cleanup Whitespace cleanups. Replace leading spaces with tabs and fix indentation Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 9300abd4c60d385683944b9bc5cbf2c7c2cc6e78 Author: Stephen Hemminger Date: Fri Nov 17 11:21:33 2006 -0800 [PATCH] chelsio: remove leftover code The chelsio network driver has some extra ifdef's that got in because the driver was originally based on code that worked on 2.4 as well as 2.6. This patch removes the dead code. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit a4f0c2ca8c475e00caa469b4574950852c376076 Author: Kim Phillips Date: Wed Nov 15 12:29:35 2006 -0600 [PATCH] Adapt ucc_geth driver to use new of_platform_device support Include of_platform header, and use new of_[un]register_platform_driver() fns. Signed-off-by: Kim Phillips Signed-off-by: Jeff Garzik commit bca79eb7e7a1855947864952fcd878a5ae7b5c92 Author: Randy Dunlap Date: Wed Nov 29 13:15:17 2006 -0800 [PATCH] sundance: use NULL for pointer Use NULL instead of 0 for pointers (cures sparse warnings). drivers/net/sundance.c:1106:16: warning: Using plain integer as NULL pointer drivers/net/sundance.c:1652:16: warning: Using plain integer as NULL pointer Signed-off-by: Randy Dunlap Signed-off-by: Jeff Garzik commit cb8011ad53e0855ef088e0e5a4bcb98fa90c70b6 Author: Amit S. Kale Date: Wed Nov 29 09:00:10 2006 -0800 [PATCH] NetXen: temp monitoring, newer firmware support, mm footprint reduction NetXen: 1G/10G Ethernet Driver updates - Temparature monitoring and device control - Memory footprint reduction - Driver changes to support newer version of firmware Signed-off-by: Amit S. Kale netxen_nic.h | 165 ++++++++++++++++++++++++++++++++-- netxen_nic_ethtool.c | 89 ++++++++++++------ netxen_nic_hdr.h | 71 +++++++++++++- netxen_nic_hw.c | 206 +++++++++++++++++++++++++++++-------------- netxen_nic_hw.h | 8 + netxen_nic_init.c | 239 +++++++++++++++++++++++++++++++++++++++++--------- netxen_nic_ioctl.h | 12 +- netxen_nic_isr.c | 54 +++++------ netxen_nic_main.c | 121 +++++++++++++++++-------- netxen_nic_niu.c | 172 +++++++++++++++++++++++++++-------- netxen_nic_phan_reg.h | 24 ++++- 11 files changed, 891 insertions(+), 270 deletions(-) Signed-off-by: Jeff Garzik commit edf901638144525a140c68be01be1b22e6041a6d Author: Amit S. Kale Date: Wed Nov 29 08:58:11 2006 -0800 [PATCH] NetXen: Fixed /sys mapping between device and driver Signed-off-by: Amit S. Kale netxen_nic_main.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) Signed-off-by: Jeff Garzik commit 38e3a6466f369944a2a1ec9aee9a9e472689d0a9 Author: Larry Finger Date: Sat Nov 25 18:30:03 2006 -0600 [PATCH] softmac: reduce scan debug output When scanning in debug mode, softmac is very chatty in that it puts 3 lines in the logs for each time it scans. This patch has only one line containing all the information previously reported. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 718cc4ca2bfb3263c7ea3ceba9c194f9cd7292e2 Author: Daniel Drake Date: Wed Nov 22 03:15:46 2006 +0000 [PATCH] ieee80211: Provide generic get_stats implementation bcm43xx and ipw2100 currently duplicate the same simplistic get_stats handler. Additionally, zd1211rw requires the same handler to fix a bug where all stats are reported as 0. This patch adds a generic implementation to the ieee80211 layer, which drivers are free to override. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit b1382edef9c06eca337e8982e6040e0699abab82 Author: Daniel Drake Date: Wed Nov 22 00:06:48 2006 +0000 [PATCH] zd1211rw: Use softmac ERP handling functionality This adds zd1211rw driver support for the softmac functionality I added a while back. We now obey changes in basic rates, use short preamble if it is available (but long if the AP says it's not), and send self-CTS in the proper situations. Locking fixed and improved by Ulrich Kunitz. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit b1cd84167b92de0f9fc7aad9cf272261496f4d0b Author: Daniel Drake Date: Wed Nov 22 00:06:38 2006 +0000 [PATCH] zd1211rw: Rename cs_rate to zd_rate These controlset rate constants are also applicable in places outside the controlset, such as in the RTS/CTS control register. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 35f2c7c0ce8eb09d19fb50ed2cd29b6dbea9cd86 Author: Daniel Drake Date: Wed Nov 22 00:06:32 2006 +0000 [PATCH] zd1211rw: Allow channels 1-13 in Japan Eric Goff found that he could not use his ZD1211 device which is programmed for the Japan regulatory domain. It turns out that ZyDAS deviate from the spec here: they do not use the newer Japan region code (0x41) but their drivers do operate as if the newer Japan legal frequency range is in effect. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 850c211ce6948bcd71e505be22b7ead99a425bfa Author: Ulrich Kunitz Date: Wed Nov 22 00:06:19 2006 +0000 [PATCH] zd1211rw: Optimized handling of zero length entries in length info There are a high number of split USB transactions, which contain only one packet but have a length info field. This patch optimizes this code by stopping parsing the length info structure if a zero length field is encountered. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 741fec53f268b691b869ffc70023319406e0cc97 Author: Ulrich Kunitz Date: Wed Nov 22 00:05:53 2006 +0000 [PATCH] zd1211rw: cleanups Bit-field constants in zd_chip.h are now defined using a shift expression. The value 0x08 is now (1 << 3). The fix is intended to improve readability. Remove misleading comment in zd_mac.c: The function already returns -EPERM in managed mode (IW_MODE_INFRA). Remove unused code in zd_mac.c: The unused code intended for debugging rx_status values is no longer useful. Added dump_stack() to ZD_ASSERT macro: Output of the stack helps to debug assertions. Keep in mind that the ZD_ASSERT() macro only results in code, if DEBUG is defined. Improved comments for filter_rx() zd_usb.c: Added driver name to module init and exit functions Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 84bc715c465f76584fc5127955fca0c61592e04b Author: Daniel Drake Date: Wed Nov 22 00:05:30 2006 +0000 [PATCH] zd1211rw: Remove IW_FREQ_AUTO support http://bugzilla.kernel.org/show_bug.cgi?id=7399 zd1211rw's support for IW_FREQ_AUTO is broken: when specified, the driver tries to change to a channel specified in an uninitialized integer. As IW_FREQ_AUTO is hard to implement properly, the solution (at least for now) is to drop support for it and start ignoring the flags like all other wireless drivers do. This has the added advantage that kismet also starts working with zd1211rw, even though kismet requesting IW_FREQ_AUTO is also a bug (fixed in their svn) Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 571d6eee9b5bce28fcbeb7588890ad5ca3f8c718 Author: Arnaldo Carvalho de Melo Date: Tue Nov 21 01:26:49 2006 -0200 [PATCH] Check ieee80211softmac_auth_resp kmalloc result And use kmemdup and kzalloc where applicable Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: John W. Linville commit 8e87295b9578fa46b5f325a7dc42ddbbdad6e0d0 Author: Daniel Drake Date: Fri Nov 17 00:26:40 2006 +0000 [PATCH] zd1211rw: Add ID for Belkin F5D7050 v4000 zd1211b chip 050d:705c v4810 high 00-17-3f AL2230_RF pa0 g--N Tested by Bryan Barnard Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 229782a336ab21b8eb7aa91dcb0dbdf728e95aef Author: Daniel Drake Date: Fri Nov 17 00:13:48 2006 +0000 [PATCH] zd1211rw: Add ID for Planex GW-US54Mini zd1211 chip 14ea:ab13 v4330 high 00-90-cc AL2230_RF pa0 g--- Tested by Tetsuya Yatagai. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit e72ba2d328331e9687f0105a7937ea1b1969246c Author: John W. Linville Date: Tue Nov 14 20:08:53 2006 -0500 [PATCH] prism54: correct overly aggressive check of return from pci_set_mwi Failure of pci_set_mwi should not be considered a fatal error. Signed-off-by: John W. Linville commit b6d2b1db0637ff35127f3cc38c04f289a0ee0579 Author: Larry Finger Date: Wed Nov 8 11:04:49 2006 -0600 [PATCH] bcm43xx: correct "Move IV/ICV stripping into ieee80211_rx" In the patch sent by Daniel Drake under the title "[PATCH] ieee80211: Move IV/ICV stripping into ieee80211_rx", a needed line was accidentally removed. (NOTE: I'm pretty sure this was my fault, not Daniel's. -- JWL) Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit cefd9f7f1281c1ead03236f227dad4b163619705 Author: Jeff Garzik Date: Tue Nov 14 11:46:41 2006 -0500 Revert "[PATCH] Add support for Marvell 88e1111S and 88e1145" This reverts commit 477c517903d57047150b01608149e02c6e9d83dd. This patch depended on something that was not yet committed. commit 89e5785fc8a6b9eafd37f2318a9a76d479c796be Author: Haavard Skinnemoen Date: Thu Nov 9 14:51:17 2006 +0100 [PATCH] Atmel MACB ethernet driver Driver for the Atmel MACB on-chip ethernet module. Tested on AVR32/AT32AP7000/ATSTK1000. I've heard rumours that it works with AT91SAM9260 as well, and it may be possible to share some code with the at91_ether driver for AT91RM9200. Hardware documentation can be found in the AT32AP7000 data sheet, which can be downloaded from http://www.atmel.com/dyn/products/datasheets.asp?family_id=682 Changes since previous version: * Probe for PHY ID instead of depending on it being provided through platform_data. * Grab initial ethernet address from the MACB registers instead of depending on platform_data. * Set MII/RMII mode correctly. These changes are mostly about making the driver more compatible with the at91 infrastructure. Signed-off-by: Haavard Skinnemoen Signed-off-by: Jeff Garzik commit b690bdef7c4523bf55103b7a841c454d4674b315 Author: Krzysztof Halasa Date: Mon Nov 13 19:48:54 2006 +0100 [PATCH] WAN: DSCC4 driver requires generic HDLC Another thing, reported recently to me by several people - DSCC4 WAN driver now (and perhaps for the last couple of years+) requires the generic HDLC. I've fixed the Kconfig and moved the DSCC4 option under CONFIG_HDLC so it's consistent visually. Signed-off-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit 5e123b844a1cbd4ec258cd37847ce4d57fa308c1 Author: Zang Roy-r61911 Date: Wed Nov 8 19:49:13 2006 -0800 [PATCH] Add tsi108/9 On Chip Ethernet device driver support Add tsi108/9 on chip Ethernet controller driver support. The driver code collects the feedback of previous posting form the mailing list and gives the update. MPC7448HPC2 platform in arch/powerpc uses tsi108 bridge. The following is a brief description of the Ethernet controller: The Tsi108/9 Ethernet Controller connects Switch Fabric to two independent Gigabit Ethernet ports,E0 and E1. It uses a single Management interface to manage the two physical connection devices (PHYs). Each Ethernet port has its own statistics monitor that tracks and reports key interface statistics. Each port supports a 256-entry hash table for address filtering. In addition, each port is bridged to the Switch Fabric through a 2-Kbyte transmit FIFO and a 4-Kbyte Receive FIFO. Each Ethernet port also has a pair of internal Ethernet DMA channels to support the transmit and receive data flows. The Ethernet DMA channels use descriptors set up in memory, the memory map of the device, and access via the Switch Fabric. The Ethernet Controller’s DMA arbiter handles arbitration for the Switch Fabric. The Controller also has a register bus interface for register accesses and status monitor control. The PMD (Physical Media Device) interface operates in MII, GMII, or TBI modes. The MII mode is used for connecting with 10 or 100 Mbit/s PMDs. The GMII and TBI modes are used to connect with Gigabit PMDs. Internal data flows to and from the Ethernet Controller through the Switch Fabric. Each Ethernet port uses its transmit and receive DMA channels to manage data flows through buffer descriptors that are predefined by the system (the descriptors can exist anywhere in the system memory map). These descriptors are data structures that point to buffers filled with data ready to transmit over Ethernet, or they point to empty buffers ready to receive data from Ethernet. Signed-off-by: Alexandre Bounine Signed-off-by: Roy Zang Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 31f817e9d6f325b10a316bb84237cae3739487ed Author: Jesse Huang Date: Wed Nov 8 19:49:12 2006 -0800 [PATCH] sundance: solve host error problem in low performance embedded system when continune down and up Solve host error problem in low performance embedded system when continune down and up. It will cause IP100A DMA TargetAbort. So we need more safe process to up and down IP100A with wait hardware completely stop and software cur_tx/ dirty_tx/cur_task/last_tx be clear. Signed-off-by: Jesse Huang Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit d0bb53e102e10cc90de50953531a163d95da1e07 Author: Andrew Morton Date: Tue Nov 14 10:35:03 2006 -0500 e1000 linkage fix ia64: drivers/built-in.o(.text+0xd9a72): In function `e1000_xmit_frame': : undefined reference to `csum_ipv6_magic' Cc: Auke Kok Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 95d21ff4c64592bdee7f1af2925145bed849c994 Author: Andy Fleming Date: Wed Nov 8 00:11:29 2006 -0600 [PATCH] Add support for Marvell 88e1111S and 88e1145 This patch requires the new support for configurable PHY interfaces. Changes include: * New support for 88e1145 * New support for 88e111s * Fixing 88e1101 driver to not match non-88e1101 PHYs * Increases in feature support across Marvell PHY product line * Fixes a bunch of whitespace issues found by Lindent Signed-off-by: Andrew Fleming Signed-off-by: Jeff Garzik commit f2d71c2d800e68f158a5949e38b23f5140948548 Author: Vitaly Wool Date: Tue Nov 7 13:27:02 2006 +0300 [PATCH] add netpoll support for gianfar: respin The patch inlined below adds NET_POLL_CONTROLLER support for gianfar network driver, slightly modified wrt the comments from Andy Fleming. drivers/net/gianfar.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) Signed-off-by: Vitaly Wool Signed-off-by: Jeff Garzik commit 02e0e5e935cad59a2d30a004df9065e8697543e3 Author: John W. Linville Date: Tue Nov 7 20:53:48 2006 -0500 [PATCH] wireless: clean-up some "check return code" warnings Clean-up some warnings from missing return code checks, mostly from calling pci_enable_device during a PCI resume. Signed-off-by: John W. Linville commit 5398d5901dcb677d24d839d3feac7209e250b161 Author: Larry Finger Date: Sat Nov 4 13:29:50 2006 -0600 [PATCH] ieee80211softmac: fix verbosity when debug disabled SoftMAC contains a number of debug-type messages that continue to print even when debugging is turned off. This patch substitutes dprintkl for printkl for those lines. Signed-off-by: Larry Finger Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 7f424ff4825adeae8d236fb3eafd699e6b2665e1 Author: Larry Finger Date: Thu Nov 2 21:56:52 2006 -0600 [PATCH] bcm43xx: Remove useless core enable/disable messages In the softmac version of bcm43xx, the core scan logs whether each core is enabled or disabled. This information is useless as one of the next steps is to enable all cores. This patch removes this output from the log. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 08c3103a562ed83c4f9ac8fad6f5cb1ebb1f29a0 Author: Larry Finger Date: Wed Nov 1 18:11:18 2006 -0600 [PATCH] bcm43xx: remove badness variable and related routine When the periodic work function in bcm43xx was converted for voluntary preemption to reduce latency, a new function was created to estimate the "badness" of each step, and this quantity was used to determine if preemption should be enabled when periodic work was undertaken. This concept was quite useful while debugging of periodic work was in progress. Now that this routine seems to be working correctly, it is time to simplify the code. This patch keeps the functionality intact, but simplifies the code. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1494a81410d8c53fa6c800be1e22b6b6f64180e6 Author: Jeff Garzik Date: Tue Nov 7 05:12:16 2006 -0500 [netdrvr] netxen: build fixes Most contributed and Signed-off-by: Andrew Morton with some from me as well. Signed-off-by: Jeff Garzik commit acd70c2bfddb52aee27a4864c160bea7f0d117e1 Author: Jesse Huang Date: Fri Oct 20 14:42:13 2006 -0700 [PATCH] sundance: correct initial and close hardware step. Correct initial and close hardware step. In some embedded system down and up IP100A will cause DMA crash. We add some for safe down and up IP100A. Signed-off-by: Jesse Huang Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 6b655529c3d817ed1b69cf2dd29e2c3ce5148a2b Author: Andy Fleming Date: Mon Oct 16 16:19:17 2006 -0500 [PATCH] Fixed a number of bugs in the PHY Layer * genphy_update_link is now exported * Added a fix from ncase@xes-inc.com which changes forcing so it only updates the link. Otherwise, it never tries the lower values, since it is always overwriting the speed/duplex values with the current ones, rather than the intended ones. * Fixed a bug where bringing up a PHY with no link caused it to timeout, and enter forcing mode. Once in forcing mode, plugging in the link didn't autonegotiate. Now the AN state detects the lack of link, and enters the NO_LINK state. AN only times out if the link is up and AN fails * Cleaned up the PHY_AN case, reducing one level of indentation for the timeout code. Signed-off-by: Jeff Garzik commit 2109f89f3483ff5a05899385ee3fb04d779e9cce Author: Jesse Huang Date: Fri Oct 20 14:42:11 2006 -0700 [PATCH] subdance: fix TX Pause bug (reset_tx, intr_handler) Fix TX Pause bug (reset_tx, intr_handler). When MaxCollisions occurred, need to re-enable Tx. But just after re-enable, MaxCollisions maybe occurred again and with TxStatusOverflow. This will cause driver can't check new MaxCollisions to re-enable Tx again, because TxStatusOverflow. For this reason, after re-enable Tx, we need to make sure Tx was actually enabled. Signed-off-by: Jesse Huang Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit e242040df1da94a9a3daa98ea5539e2b52502bb4 Author: Jesse Huang Date: Fri Oct 20 14:42:05 2006 -0700 [PATCH] sundance: remove TxStartThresh and RxEarlyThresh For patent issue need to remove TxStartThresh and RxEarlyThresh. This patent is cut-through patent. If use this function, Tx will start to transmit after few data be move in to Tx FIFO. We are not allow to use those function in DFE530/DFE550/DFE580/DL10050/IP100/IP100A. It will decrease a little performance. Signed-off-by: Jesse Huang Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit ac7468e923278cdcb202f8aa992d8f2776f8344c Author: Komuro Date: Sun Oct 15 10:08:00 2006 +0900 [PATCH] network: pcnet_cs: remove the code to change the E8390_CMD register from ei_watchdog() Remove the code to change the E8390_CMD register from ei_watchdog(). The 8390-page is always 0 outside the spin_lock. Signed-off-by: komurojun-mbn@nifty.com Signed-off-by: Jeff Garzik commit f4344848f8a7acbef2558dc5b89c62485f147033 Author: Ayaz Abdulla Date: Mon Nov 6 00:43:40 2006 -0800 [PATCH] forcedeth: add support for new mcp67 device Add support for the new mcp67 device into forcedeth. Signed-off-by: Ayaz Abdulla Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 52d78d63310d9818458fd9800d24a4d5425aeac7 Author: Ayaz Abdulla Date: Mon Nov 6 00:43:39 2006 -0800 [PATCH] forcedeth: add new NVIDIA pci ids Add pci device ids for the NVIDIA MCP67 chip. Signed-off-by: Ayaz Abdulla Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit c5cf9101fefae32df654da5f0e736ffbe28aefdc Author: Ayaz Abdulla Date: Mon Oct 30 17:32:01 2006 -0500 [PATCH] forcedeth: add recoverable error support This patch adds support to recover from a previously fatal MAC error. In the past the MAC would be hung on an internal fatal error. On new chipsets, the MAC has the ability to enter a non-fatal state and allow the driver to re-init it. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 7e680c22c0579f1db7b84a7b155755a2754f9557 Author: Ayaz Abdulla Date: Mon Oct 30 17:31:51 2006 -0500 [PATCH] forcedeth: add mgmt unit support This patch adds support for the mgmt unit in certain chipsets. The MAC and the mgmt unit share the PHY and therefore proper intialization procedures are needed for them to maintain coexistense. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit b2e68aa337f950e4a8c893a82b95b1755309bc56 Author: Maciej W. Rozycki Date: Mon Oct 23 13:53:17 2006 +0100 [PATCH] defxx: Big-endian hosts support The PDQ DMA engine requires a different byte-swapping mode for big-endian hosts; also the MAC address which is read from a register through PIO has to be byte-swapped. These changes have been verified with DEFPA-DC (PCI) boards and a Broadcom BCM91250A (MIPS CPU based) host. Signed-off-by: Maciej W. Rozycki Signed-off-by: Jeff Garzik commit c3a9392e4f3b9d97803b067871d66bc143369dbf Author: Eric Sesterhenn Date: Mon Oct 23 22:20:15 2006 +0200 [PATCH] kmemdup() cleanup in drivers/net hi, replace open coded kmemdup() to save some screen space, and allow inlining/not inlining to be triggered by gcc. Signed-off-by: Eric Sesterhenn Signed-off-by: Jeff Garzik commit bf793295e1090af84972750898bf8470df5e5419 Author: Francois Romieu Date: Wed Nov 1 00:53:05 2006 +0100 r8169: perform a PHY reset before any other operation at boot time Realtek's 8139/810x (0x8136) PCI-E comes with a touchy PHY. A big heavy reset seems to calm it down. Fix for http://bugzilla.kernel.org/show_bug.cgi?id=7378. Signed-off-by: Francois Romieu Signed-off-by: Darren Salt commit de3edab4276c3c789f64dc3d78eea027709fef0e Author: Auke Kok Date: Wed Nov 1 08:48:18 2006 -0800 e1000: update README for e1000 Signed-off-by: Auke Kok commit 25006ac61e514628b9d0f78fce0bed155f4f109c Author: Auke Kok Date: Wed Nov 1 08:48:15 2006 -0800 e1000: increment version to 7.3.15-k2 Signed-off-by: Auke Kok commit 835bb1298311f372a3387fb40b952b18d90aa9f8 Author: Jesse Brandeburg Date: Wed Nov 1 08:48:13 2006 -0800 e1000: add dynamic itr modes Add a new dynamic itr algorithm, with 2 modes, and make it the default operation mode. This greatly reduces latency and increases small packet performance, at the "cost" of some CPU utilization. Bulk traffic throughput is unaffected. The driver can limit the amount of interrupts per second that the adapter will generate for incoming packets. It does this by writing a value to the adapter that is based on the maximum amount of interrupts that the adapter will generate per second. Setting InterruptThrottleRate to a value greater or equal to 100 will program the adapter to send out a maximum of that many interrupts per second, even if more packets have come in. This reduces interrupt load on the system and can lower CPU utilization under heavy load, but will increase latency as packets are not processed as quickly. The default behaviour of the driver previously assumed a static InterruptThrottleRate value of 8000, providing a good fallback value for all traffic types,but lacking in small packet performance and latency. The hardware can handle many more small packets per second however, and for this reason an adaptive interrupt moderation algorithm was implemented. Since 7.3.x, the driver has two adaptive modes (setting 1 or 3) in which it dynamically adjusts the InterruptThrottleRate value based on the traffic that it receives. After determining the type of incoming traffic in the last timeframe, it will adjust the InterruptThrottleRate to an appropriate value for that traffic. The algorithm classifies the incoming traffic every interval into classes. Once the class is determined, the InterruptThrottleRate value is adjusted to suit that traffic type the best. There are three classes defined: "Bulk traffic", for large amounts of packets of normal size; "Low latency", for small amounts of traffic and/or a significant percentage of small packets; and "Lowest latency", for almost completely small packets or minimal traffic. In dynamic conservative mode, the InterruptThrottleRate value is set to 4000 for traffic that falls in class "Bulk traffic". If traffic falls in the "Low latency" or "Lowest latency" class, the InterruptThrottleRate is increased stepwise to 20000. This default mode is suitable for most applications. For situations where low latency is vital such as cluster or grid computing, the algorithm can reduce latency even more when InterruptThrottleRate is set to mode 1. In this mode, which operates the same as mode 3, the InterruptThrottleRate will be increased stepwise to 70000 for traffic in class "Lowest latency". Setting InterruptThrottleRate to 0 turns off any interrupt moderation and may improve small packet latency, but is generally not suitable for bulk throughput traffic. Signed-off-by: Jesse Brandeburg Cc: Rick Jones Signed-off-by: Auke Kok commit 9ac98284428961bd5be285a6cc1f5e6f5b6644aa Author: Jesse Brandeburg Date: Wed Nov 1 08:48:10 2006 -0800 e1000: add dynamic generic MSI interrupt routine Add a generic MSI interrupt routine that is IO read-free, speeding up MSI interrupt handling. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 04fedbfbc3dac1158519f8ef8cc8aca4fe79695b Author: Auke Kok Date: Wed Nov 1 08:48:07 2006 -0800 e1000: reorder e1000_param.c This file needs some cleanups and reordering - logically order it so that relevant defines and code are together with properly quoted defaults. Signed-off-by: Auke Kok commit 6a042dab19567fc888d5b87ce6ab68ac02aea1dc Author: Jesse Brandeburg Date: Wed Nov 1 08:48:04 2006 -0800 e1000: Only set IDE for tx when we are using TIDV/TADV Spec fix: don't set IDE unless we are actually setting the tx int delay time. Signed-off-by: Auke Kok Signed-off-by: Jesse Brandeburg commit 2df7d59f287236a636fb2d7e05879e65c8c56492 Author: Jeff Kirsher Date: Wed Nov 1 08:48:02 2006 -0800 e1000: rename ICH8 flash macros ICH8 will soon be followed by newer chipsets bearing the same acronym, thus we remove the '8' and make it independent of the version number in the platform name. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit fcfb1224250d7877b6a6c6a947986e08b2160fb6 Author: Jesse Brandeburg Date: Wed Nov 1 08:47:59 2006 -0800 e1000: add queue restart counter Add a netif_wake/start_queue counter to the ethtool statistics to indicated to the user that their transmit ring could be too small for their workload. Signed-off-by: Jesse brandeburg Cc: Jamal Hadi Signed-off-by: Auke Kok commit fc2307d00c15385fbdbb5928a8517e5f63c3d068 Author: Auke Kok Date: Wed Nov 1 08:47:56 2006 -0800 e1000: New hardware support Add support for a Low Profile quad-port PCI-E adapter and 2 variants of the ICH8 systems' onboard NIC's. Signed-off-by: Auke Kok commit a9ebadd640927ac6529d904b4131b17e8019d199 Author: Jesse Brandeburg Date: Wed Nov 1 08:47:53 2006 -0800 e1000: Remove unneeded and unwanted memsets This memsetting was added in a paranoid rage debugging TX hangs, but are no longer of importance. We can beef up the performance quite a bit removing them. Make sure to fill in next_to_watch to allow this. Signed-off-by: Auke Kok Signed-off-by: Jesse Brandeburg commit 996695de21b9b301ebb32379e2950fc2142df3a7 Author: Auke Kok Date: Wed Nov 1 08:47:50 2006 -0800 e1000: simplify skb_put call. Simplify two calls to skb_put by removing one call to it. Signed-off-by: Auke Kok commit 2bc35c1078fdfe7bb2a849c2d1bee8d9d5fea4a7 Author: Jeff Kirsher Date: Wed Nov 1 08:47:47 2006 -0800 e1000: reorder pci-e infor struct Order pci-e capability struct according to bus/pci bus width ordering preserving the hard pci spec numbers. Signed-off-by: Auke Kok Signed-off-by: Jeff Kirsher commit 070f6ffbb8ed5c398e84f1508752b8fd15b05cf2 Author: Jeff Kirsher Date: Wed Nov 1 08:47:44 2006 -0800 e1000: fix VR powerdown code On ich systems during PHY power down to D3, the voltage regulators were left on. Signed-off-by: Auke Kok Signed-off-by: Jeff Kirsher commit 2ce9047f5d8464039da8ff986e71be5546e229c0 Author: Jesse Brandeburg Date: Wed Nov 1 08:47:42 2006 -0800 e1000: add mmiowb() for IA64 to sync tail writes IA64 SMP systems were seeing TX issues with multiple cpu's attempting to write tail registers unordered. This mmiowb() fixes the issue. Signed-off-by: Auke Kok Signed-off-by: Jesse Brandeburg commit 21c4d5e07859a6fc0f62be37da15b161e142c8d1 Author: Auke Kok Date: Wed Nov 1 08:47:39 2006 -0800 e1000: Enble early receive (ERT) on 82573 Enable early receives on 82573 for jumbo frame performance. Jumbo's are only supported on 82573L with ASPM disabled. Signed-off-by: Auke Kok commit 87ca4e5b8d729fc157a0a599d78ccab245fc0602 Author: Auke Kok Date: Wed Nov 1 08:47:36 2006 -0800 e1000: FIX: enable hw TSO for IPV6 Enable TSO for IPV6. All e1000 hardware supports it. This reduces CPU utilizations by 50% when transmitting IPv6 frames. Fix symbol naming enabling ipv6 TSO. Turn off TSO6 for 10/100. Signed-off-by: Auke Kok commit b00dae7cce465323850c3e1fd3ac8b2d9229735c Author: Auke Kok Date: Wed Nov 1 08:47:33 2006 -0800 e1000: Remove DISABLE_MULR debug code Remove debugging code disabling MULR (multiple reads). It's not usable for a wide audience and there are no known problems with MULR right now. Signed-off-by: Auke Kok commit 90fb51358a264f2f7e0cabdca6fc229bbc40cd91 Author: Auke Kok Date: Wed Nov 1 08:47:30 2006 -0800 e1000: whitespace changes, comments, typos Small whitespace changes, comment changes, typo fixes. Signed-off-by: Auke Kok commit a362bf57aa12835e4fa6af6960e5135b5626bc5b Author: Daniel Drake Date: Wed Oct 18 00:17:02 2006 +0100 [PATCH] zd1211rw: Add ID for ZyXEL G-220 Tested by Newsome on IRC zd1211 chip 0586:3401 v4330 high 00-13-49 AL2230_RF pa0 g--- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit fe75f7471ba5604fe65435f717e3612a482c28cb Author: Christian Lamparter Date: Mon Oct 2 19:55:22 2006 +0200 [PATCH] wext: extend MLME support This patch adds two new defines for the SIOCSIWMLME to cover all kinds MLMEs (well, except REASSOC) through a ioctl. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 3d396eb17e9f8c5f59314078b45b88647591378d Author: Amit S. Kale Date: Sat Oct 21 15:33:03 2006 -0400 Add NetXen 1G/10G ethernet driver. Signed-off-by: Amit S. Kale Signed-off-by: Jeff Garzik commit f3d1fca3eb05cf6ff3879a385a15d24fbf556c57 Author: Stefano Brivio Date: Sun Oct 15 23:18:11 2006 -0500 [PATCH] bcm43xx: add PCI-E code The current bcm43xx driver does not contain code to handle PCI-E interfaces such as the BCM4311 and BCM4312. This patch, originally written by Stefano Brivio adds the necessary code to enable these interfaces. Signed-off-by: Stefano Brivio Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 995cdaa45b1faf8f4472e4b4c6027dc685ae1b54 Author: Alexey Dobriyan Date: Tue Oct 10 14:45:47 2006 -0700 [PATCH] prism54: use BUILD_BUG_ON Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit 3b31dc327f07a2df06da931ffb0bb1627711bd86 Author: Holden Karau Date: Tue Oct 10 14:45:33 2006 -0700 [PATCH] atmel: output signal strength information Output signal strength information as part of iwlist scan - before it did not output any signal strength related information. Signed-off-by: Holden Karau Cc: Jean Tourrilhes Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit 93b2dd12049d1adb0d76fb918fcd4c1030445433 Author: Dmitry Torokhov Date: Sun Oct 8 00:38:15 2006 -0400 [PATCH] prism54: whitespace cleanup NET: prism54 - whitespace cleanup Signed-off-by: Dmitry Torokhov Signed-off-by: John W. Linville commit d18e0c4a5434f02586b5fdcbcc72f1fe61ab49e6 Author: Dmitry Torokhov Date: Sun Oct 8 00:38:14 2006 -0400 [PATCH] prism54: fix potential race in reset scheduling NET: prism54 - fix potential race in reset scheduling There appears to be a race in reset scheduling logic - thread responsible for reseting the interface should clear "reset pending" flag before restarting the queue, otherwise timeout handler might not schedule another reset even if it is needed. This race is mostly theoretical as far as I can see but a race nonetheless. Signed-off-by: Dmitry Torokhov Signed-off-by: John W. Linville commit 5c877fe58c5df19646204b144b978b99c2ef074f Author: Dmitry Torokhov Date: Sun Oct 8 00:14:30 2006 -0400 [PATCH] atmel: whitespace cleanup NET: atmel: whitespace cleanup Signed-off-by: Dmitry Torokhov Signed-off-by: John W. Linville commit b4341135794fdad85f995a378da424e4f4128e4d Author: Dmitry Torokhov Date: Sun Oct 8 00:14:29 2006 -0400 [PATCH] atmel: use ARRAY_SIZE() NET: atmel - switch to using ARRAY_SIZE() Signed-off-by: Dmitry Torokhov Signed-off-by: John W. Linville commit 00a5ebf8621e8098305ca5e7b319937eed430184 Author: Dmitry Torokhov Date: Sun Oct 8 00:14:28 2006 -0400 [PATCH] atmel: save on array initialization NET: atmel - do not initialize array over and over again Signed-off-by: Dmitry Torokhov Signed-off-by: John W. Linville commit 837925df022a667c302b24aad9d6a58f94efd959 Author: Larry Finger Date: Tue Oct 3 18:49:32 2006 -0500 [PATCH] ieee80211: Drop and count duplicate data frames to remove 'replay detected' log messages In the SoftMAC version of the IEEE 802.11 stack, not all duplicate messages are detected. For the most part, there is no difficulty; however for TKIP and CCMP encryption, the duplicates result in a "replay detected" log message where the received and previous values of the TSC are identical. This change adds a new variable to the ieee80211_device structure that holds the 'seq_ctl' value for the previous frame. When a new frame repeats the value, the frame is dropped and the appropriate counter is incremented. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 42a4cf9576f036db69e15fa6b4e72986e17f0359 Author: matthieu castet Date: Thu Sep 28 19:57:25 2006 +0200 [PATCH] ieee80211: allow mtu bigger than 1500 Hi this patch allow to set the mtu between 1500 and 2304 (max octets in an MSDU) for devices using ieee80211 linux stack. Signed-off-by: Matthieu CASTET Signed-off-by: John W. Linville commit c9308b06c049a107edfbd4e5271771564eb6024d Author: Daniel Drake Date: Wed Sep 27 03:50:31 2006 +0100 [PATCH] ieee80211: Move IV/ICV stripping into ieee80211_rx This patch adds a host_strip_iv_icv flag to ieee80211 which indicates that ieee80211_rx should strip the IV/ICV/other security features from the payload. This saves on some memmove() calls in the driver and seems like something that belongs in the stack as it can be used by bcm43xx, ipw2200, and zd1211rw I will submit the ipw2200 patch separately as it needs testing. This patch also adds some sensible variable reuse (idx vs keyidx) in ieee80211_rx Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit f2423723d70298e04179f934ff17346c3e06f408 Author: Daniel Drake Date: Tue Sep 26 04:04:38 2006 +0100 [PATCH] zd1211rw: Add 3 more device IDs iNexQ UR055g: Tested by Todor T Zviskov zd1211 chip 1435:0711 v4330 high 00-10-a7 AL2230_RF pa0 g-- ZyXEL AG-225, FCC ID SI5WUB410: Tested by Nathan zd1211 chip 0586:3409 v4810 full 00-13-49 AL7230B_RF pa0 g--- Yakumo QuickWLAN USB: Tested by EdB zd1211 chip 0b3b:1630 v4330 high 00-01-36 RF2959_RF pa0 --- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit f04e2be7d9b73a1da7be99a08b3695074e14970c Author: Larry Finger Date: Mon Sep 25 15:33:20 2006 -0500 [PATCH] bcm43xx: output proper link quality with scans The bcm43xx-softmac driver fails to set two quantities needed for iwlist to compute wireless quality when scanning. As a result, userland programs using the quality to determine the best connection fail. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3470cb1d4fb27572273079e7095734ac4f9caa43 Author: Al Viro Date: Tue Oct 10 00:19:36 2006 +0100 [PATCH] 8390 fixes - the final chunk (h8300) The rest of 8390 conversions; ifdef cascade in 8390.h is gone now. Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit b936889c8f95b601d3ef6caac6ac653a8adb4fec Author: Al Viro Date: Tue Oct 10 00:19:36 2006 +0100 [PATCH] 8390 cleanup - etherh iomem annotations Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 8c6270f957f0eaa343e4a609159c4b85038468d6 Author: Al Viro Date: Tue Oct 10 00:19:36 2006 +0100 [PATCH] 8390 fixes - m68k oddballs more 8390 conversions - mac8390, zorro8390 and hydra got the same treatment as arm etherh; one more case in 8390.h ifdef cascade is gone. Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 6c3561b0c1b64c8f0d1419f3909ab29f0eb98906 Author: Al Viro Date: Tue Oct 10 00:19:36 2006 +0100 [PATCH] beginning of 8390 fixes - generic and arm/etherh etherh and a handful of other odd drivers use different macros when building 8390.c. Since we generate a single 8390.o and then link with it, in any config with both oddball and normal 8390-based driver we will end up with breakage in at least one of them. Solution: take most of 8390.c into lib8390.c and have 8390.c, etherh.c and the rest of oddballs #include it. Helper macros are taken from 8390.h to whoever includes lib8390.c. That way odd drivers get separate instances of compiled 8390 stuff and stop stepping on each other's toes. 8390.h gets cleaned up - we don't have the cascade of ifdefs in there and are left with the stuff that can be used by any 8390-based driver. Current problems are exactly because of that cascade - we attempt to choose the set of helpers by looking at config and that, of course, doesn't work well when we have several sets needed by various drivers in our config. Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 865f3b2b6ac578a061c823bec5baf00ad04cbd8c Author: Stephen Hemminger Date: Thu Oct 5 10:21:26 2006 -0700 [PATCH] sk98lin: MII ioctl support Add MII ioctl support to the deprecated sk98lin driver. This allows comparison with skge driver's PHY settings. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 24b46a0f0a9a736f125141f271102f70c2612a9f Author: Stephen Hemminger Date: Thu Oct 5 10:16:23 2006 -0700 [PATCH] sk98lin: ethtool register dump Add support for dumping the registers in the deprecated sk98lin driver. This is allows for easier comparison with settings in new skge driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 83717cf054214d144165c576cba6362d07fc6656 Author: Henrik Kretzschmar Date: Tue Oct 10 14:33:29 2006 -0700 [PATCH] pci_module_init() convertion in olympic.c pci_module_init() convertion in olympic.c Signed-off-by: Henrik Kretzschmar Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 107ce6d21b746f33f85f4385b9802b3ae928f876 Author: Eric Sesterhenn Date: Tue Oct 10 14:33:28 2006 -0700 [PATCH] Remove unnecessary check in drivers/net/depca.c This was spotted by coverity (cid #793). All callers dereference dev before calling this functions, and we dereference it earlier in the function, when initializing lp. Signed-off-by: Eric Sesterhenn Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit a189317fa0e9d425cd3a4c248b06f96d876cf7fd Author: Francois Romieu Date: Tue Oct 10 14:33:27 2006 -0700 [PATCH] forcedeth: power management support Tobias Diedrich sayeth: Vanilla forcedeth doesn't seem to support suspend and an ifdown/up-cycle is needed to get it working again after suspend. Francois Romieu's "Awfully experimental" patch is working just fine for me (with message signalled interrupts disabled) and has survived quite a few suspend/resume cycles. So I'd very much like to see (at least partial, with msi disabled) suspend support for forcedeth in mainline. (Addresses http://bugzilla.kernel.org/show_bug.cgi?id=6398) Cc: Francois Romieu Cc; Jeff Garzik Cc: Manfred Spraul Cc: Ayaz Abdulla Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 3c3070d713d798f7f9e7ee3614e49b47655d14d8 Author: Maciej W. Rozycki Date: Tue Oct 3 16:18:35 2006 +0100 [PATCH] 2.6.18: sb1250-mac: Phylib IRQ handling fixes This patch fixes a couple of problems discovered with interrupt handling in the phylib core, namely: 1. The driver uses timer and workqueue calls, but does not include nor . 2. The driver uses schedule_work() for handling interrupts, but does not make sure any pending work scheduled thus has been completed before driver's structures get freed from memory. This is especially important as interrupts may keep arriving if the line is shared with another PHY. The solution is to ignore phy_interrupt() calls if the reported device has already been halted and calling flush_scheduled_work() from phy_stop_interrupts() (but guarded with current_is_keventd() in case the function has been called through keventd from the MAC device's close call to avoid a deadlock on the netlink lock). Signed-off-by: Maciej W. Rozycki patch-mips-2.6.18-20060920-phy-irq-16 Signed-off-by: Jeff Garzik commit 13df29f69749a61b5209d52b71fcbf7300e5d6fb Author: Maciej W. Rozycki Date: Tue Oct 3 16:18:28 2006 +0100 [PATCH] 2.6.18: sb1250-mac: Missing inclusions from The uses some types and macros defined in , , and , but fails to include these headers. Signed-off-by: Maciej W. Rozycki patch-mips-2.6.18-20060920-include-phy-16 Signed-off-by: Jeff Garzik commit c4b41c9f077392803cd548000f3a2312dcd4a122 Author: Maciej W. Rozycki Date: Tue Oct 3 16:18:13 2006 +0100 [PATCH] 2.6.18: sb1250-mac: Broadcom PHY support This patch adds support for interrupt-driven operation of the Broadcom Gigabit Ethernet PHYs. I have included device IDs for the parts used on Broadcom SiByte evaluation boards; more can be added as a need arises. They are apparently generally software-compatible with one another. Signed-off-by: Maciej W. Rozycki patch-mips-2.6.18-20060920-broadcom-phy-15 Signed-off-by: Jeff Garzik commit 116b23b0ed36f8d5b56d16ac50266fce8de904c1 Merge: b6ef977... 9e1402a... Author: Linus Torvalds Date: Fri Dec 1 20:55:21 2006 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: [PATCH] Fix an offset error when reading the CS89x0 ADD_PORT register [PATCH] spidernet: poor network performance [PATCH] Spidernet: remove ETH_ZLEN check in earlier patch [PATCH] bonding: fix an oops when slave device does not provide get_stats [PATCH] drivers/net: SAA9730: Fix build error Revert "[PATCH] zd1211rw: Removed unneeded packed attributes" [PATCH] zd1211rw: Fix of a locking bug [PATCH] softmac: remove netif_tx_disable when scanning [PATCH] ieee80211: Fix kernel panic when QoS is enabled commit b6ef977b608b01e0f338afd9445cab5436c61e00 Merge: 9ba5aa3... bdbf77d... Author: Linus Torvalds Date: Fri Dec 1 16:47:26 2006 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog * master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 4 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 3 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 2 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 1 [WATCHDOG] MIPS RM9000 on-chip watchdog device [WATCHDOG] Add iTCO vendor specific support [WATCHDOG] sc1200wdt.c pnp unregister fix. [WATCHDOG] config.h removal [WATCHDOG] NS pc87413-wdt Watchdog driver - fixes [WATCHDOG] NS pc87413-wdt Watchdog driver v1.1 [WATCHDOG] NS pc87413-wdt Watchdog driver commit 9ba5aa3126873a9c29999b78de20a52c5f87d389 Merge: c3e59d1... a17259a... Author: Linus Torvalds Date: Fri Dec 1 16:46:22 2006 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [PATCH] libata: add missing sht->slave_destroy [PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllers commit c3e59d1e891f6140a346de2b8547e25133c716b0 Merge: b07e3c3... aa414df... Author: Linus Torvalds Date: Fri Dec 1 16:44:02 2006 -0800 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (31 commits) [MIPS] Remove duplicate ISA DMA code for 0 DMA channel case. [MIPS] Remove unused definition of cpu_to_lelongp() [MIPS] Remove userspace proofing from . [MIPS] Remove old junk left from old atomic_lock. [MIPS] Use conditional traps for BUG_ON on MIPS II and better. [MIPS] mips HPT cleanup: make clocksource_mips public [MIPS] do_IRQ cleanup [MIPS] Avoid dupliate D-cache flush on R400C / R4400 SC and MC variants. [MIPS] Remove redundant r4k_blast_icache() calls [MIPS] Work around bogus gcc warnings. [MIPS] Fix double inclusions [MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq [MIPS] IRQ cleanups [MIPS] mips hpt cleanup: get rid of mips_hpt_init [MIPS] PB1200: Remove duplicate definitions [MIPS] Fix alignment hole in struct cache_desc; shrink struct. [MIPS] Oprofile: kernel support for the R10000. [MIPS] Remove unused R10000 performance counter definitions. [MIPS] Add support for kexec [MIPS] Don't print presence of WAIT instruction on bootup. ... commit b07e3c3a1db0ce399d2a1d04860e1b901927c05e Merge: 5f56bbd... b94c7e6... Author: Linus Torvalds Date: Fri Dec 1 16:43:42 2006 -0800 Merge branch 'for-2.6.20' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-2.6.20' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6: SELinux: validate kernel object classes and permissions SELinux: ensure keys constant in hashtab_search SELinux: export object class and permission definitions SELinux: remove current object class and permission validation mechanism commit 5f56bbdf1e35d41b4b3d4c92bdb3e70c63877e4d Merge: 9641219... f469b26... Author: Linus Torvalds Date: Fri Dec 1 16:43:06 2006 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (25 commits) IB/ucm: Fix deadlock in cleanup IB/cm: Fix automatic path migration support IPoIB: Fix skb leak when freeing neighbour IB/srp: Fix memory leak on reconnect RDMA/addr: list_move() cleanups RDMA/addr: Fix some cancellation problems in process_req() RDMA/amso1100: Prevent deadlock in destroy QP IB/mthca: Fix initial SRQ logsize for mem-free HCAs IB/ehca: Use WQE offset instead of WQE addr for pending work reqs RDMA/iwcm: Fix comment for iwcm_deref_id() to match code RDMA/iwcm: Remove unnecessary function argument RDMA/iwcm: Remove unnecessary initializations RDMA/iwcm: Fix memory leak RDMA/iwcm: Fix memory corruption bug in cm_work_handler() IB: Convert kmem_cache_t -> struct kmem_cache IB/ipath: Fix typo in pma_counter_select subscript RDMA/amso1100: Fix section mismatches IB/mthca: Fix section mismatches IB/srp: Increase supported CDB size RDMA/cm: Remove setting local write as part of QP access flags ... commit 9641219825a54249d77d7aa1afa7d874a05c7f90 Merge: 72a73a6... 94fcda1... Author: Linus Torvalds Date: Fri Dec 1 16:41:58 2006 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (103 commits) usbcore: remove unused argument in autosuspend USB: keep count of unsuspended children USB hub: simplify remote-wakeup handling USB: struct usb_device: change flag to bitflag OHCI: make autostop conditional on CONFIG_PM USB: Add autosuspend support to the hub driver EHCI: Fix root-hub and port suspend/resume problems USB: create a new thread for every USB device found during the probe sequence USB: add driver for the USB debug devices USB: added dynamic major number for USB endpoints USB: pegasus error path not resetting task's state USB: endianness fix for asix.c USB: build the appledisplay driver USB serial: replace kmalloc+memset with kzalloc USB: hid-core: canonical defines for Apple USB device IDs USB: idmouse cleanup USB: make drivers/usb/core/driver.c:usb_device_match() static USB: lh7a40x_udc remove double declaration USB: pxa2xx_udc recognizes ixp425 rev b0 chip usbtouchscreen: add support for DMC TSC-10/25 devices ... commit 72a73a69f6a79266b8b4b18f796907b73a5c01e3 Merge: 4549df8... 2b290da... Author: Linus Torvalds Date: Fri Dec 1 16:41:27 2006 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (28 commits) PCI: make arch/i386/pci/common.c:pci_bf_sort static PCI: ibmphp_pci.c: fix NULL dereference pciehp: remove unnecessary pci_disable_msi pciehp: remove unnecessary free_irq PCI: rpaphp: change device tree examination PCI: Change memory allocation for acpiphp slots i2c-i801: SMBus patch for Intel ICH9 PCI: irq: irq and pci_ids patch for Intel ICH9 PCI: pci_{enable,disable}_device() nestable ports PCI: switch pci_{enable,disable}_device() to be nestable PCI: arch/i386/kernel/pci-dma.c: ioremap balanced with iounmap pci/i386: style cleanups PCI: Block on access to temporarily unavailable pci device pci: fix __pci_register_driver error handling pci: clear osc support flags if no _OSC method acpiphp: fix missing acpiphp_glue_exit() acpiphp: fix use of list_for_each macro Altix: Initial ACPI support - ROM shadowing. Altix: SN ACPI hotplug support. Altix: Add initial ACPI IO support ... commit 4549df891a31b9a05b7d183106c09049b79327be Merge: 6b8cc71... e17e0f5... Author: Linus Torvalds Date: Fri Dec 1 16:41:07 2006 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (36 commits) Driver core: show drivers in /sys/module/ Documentation/driver-model/platform.txt update/rewrite Driver core: platform_driver_probe(), can save codespace driver core: Use klist_remove() in device_move() driver core: Introduce device_move(): move a device to a new parent. Driver core: make drivers/base/core.c:setup_parent() static driver core: Introduce device_find_child(). sysfs: sysfs_write_file() writes zero terminated data cpu topology: consider sysfs_create_group return value Driver core: Call platform_notify_remove later ACPI: Change ACPI to use dev_archdata instead of firmware_data Driver core: add dev_archdata to struct device Driver core: convert sound core to use struct device Driver core: change mem class_devices to be real devices Driver core: convert fb code to use struct device Driver core: convert firmware code to use struct device Driver core: convert mmc code to use struct device Driver core: convert ppdev code to use struct device Driver core: convert PPP code to use struct device Driver core: convert cpuid code to use struct device ... commit 6b8cc71ab2619a776b02869fd733ac1ead3db4e8 Merge: 1399ff5... 8d6286f... Author: Linus Torvalds Date: Fri Dec 1 16:40:13 2006 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Fix timezone handling on stat to os/2 [CIFS] Incorrect hardlink count when original file is cached (oplocked) commit 1399ff54741b3aa0aaf5097b8559fa30277ebe61 Merge: bb37b94... 6b44d4e... Author: Linus Torvalds Date: Fri Dec 1 16:38:18 2006 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial * git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: Fix typos in drivers/isdn/hisax/isdnl2.c Fix typos in doc and comments BUG_ON conversion for fs/aio.c BUG_ON conversion for drivers/mmc/omap.c BUG_ON conversion for drivers/media/video/pwc/pwc-if.c Fix misc .c/.h comment typos Fix misc Kconfig typos Fix typos in /Documentation : Misc Fix typos in /Documentation : 'U-Z' Fix typos in /Documentation : 'T'' Fix jiffies.h comment tabify MAINTAINERS fix spelling error in include/linux/kernel.h mqueue.h: don't include linux/types.h commit e17e0f51aeea4e59c7e450a1c0f26605b91c1260 Author: Kay Sievers Date: Fri Nov 24 12:15:25 2006 +0100 Driver core: show drivers in /sys/module/ Show the drivers, which belong to the module: $ ls -l /sys/module/usbcore/drivers/ hub -> ../../../bus/usb/drivers/hub usb -> ../../../bus/usb/drivers/usb usbfs -> ../../../bus/usb/drivers/usbfs Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit c957b32406b73ed66d0f20ebab0cab25c848105d Author: David Brownell Date: Thu Nov 16 23:30:14 2006 -0800 Documentation/driver-model/platform.txt update/rewrite This is almost a rewrite of the driver-model/platform.txt documentation; the previous text was obsolete (for several years), evidently it never got updated to match the change from being a PC "legacy_bus" to the more widely used core bus for most embedded systems. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit c67334fbdfbba533af767610cf3fde8a49710e62 Author: David Brownell Date: Thu Nov 16 23:28:47 2006 -0800 Driver core: platform_driver_probe(), can save codespace This defines a new platform_driver_probe() method allowing the driver's probe() method, and its support code+data, to safely live in __init sections for typical system configurations. Many system-on-chip processors could benefit from this API, to the tune of recovering hundreds to thousands of bytes per driver. That's memory which is currently wasted holding code which can never be called after system startup, yet can not be removed. It can't be removed because of the linkage requirement that pointers to init section code (like, ideally, probe support) must not live in other sections (like driver method tables) after those pointers would be invalid. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit acf02d23b96efa92e7cff05987122ceeb37dd075 Author: Cornelia Huck Date: Wed Nov 22 17:49:39 2006 +0100 driver core: Use klist_remove() in device_move() As pointed out by Alan Stern, device_move needs to use klist_remove which waits until removal is complete. Signed-off-by: Cornelia Huck Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8a82472f86bf693b8e91ed56c9ca4f62fbbdcfa3 Author: Cornelia Huck Date: Mon Nov 20 17:07:51 2006 +0100 driver core: Introduce device_move(): move a device to a new parent. Provide a function device_move() to move a device to a new parent device. Add auxilliary functions kobject_move() and sysfs_move_dir(). kobject_move() generates a new uevent of type KOBJ_MOVE, containing the previous path (DEVPATH_OLD) in addition to the usual values. For this, a new interface kobject_uevent_env() is created that allows to add further environmental data to the uevent at the kobject layer. Signed-off-by: Cornelia Huck Acked-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit af9e0765362151b27372c14d9d6dc417184182d3 Author: Adrian Bunk Date: Fri Nov 17 02:19:44 2006 +0100 Driver core: make drivers/base/core.c:setup_parent() static This patch makes the needlessly global setup_parent() static. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 5ab699810d46011ad2195c5916f3cbc684bfe3ee Author: Cornelia Huck Date: Thu Nov 16 15:42:07 2006 +0100 driver core: Introduce device_find_child(). Introduce device_find_child() to match device_for_each_child(). Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman commit 035ed7a49447bc8e15d4d9316fc6a359b2d94333 Author: Thomas Maier Date: Sun Oct 22 19:17:47 2006 +0200 sysfs: sysfs_write_file() writes zero terminated data since most of the files in sysfs are text files, it would be nice, if the "store" function called during sysfs_write_file() gets a zero terminated string / data. The current implementation seems not to ensure this. (But only if it is the first time the zeroed buffer page is allocated.) So the buffer can be scanned by sscanf() easily, for example. This patch simply sets a \0 char behind the data in buffer->page. Signed-off-by: Thomas Maier Signed-off-by: Greg Kroah-Hartman commit 06a4bcae1ff2cd5f6f42bd74add85ec785a26343 Author: Heiko Carstens Date: Wed Nov 8 19:46:09 2006 -0800 cpu topology: consider sysfs_create_group return value Take return value of sysfs_create_group() into account. That function got called in case of CPU_ONLINE notification. Since callbacks are not allowed to fail on CPU_ONLINE notification do the sysfs group creation on CPU_UP_PREPARE notification. Also remember if creation succeeded in a bitmask. So it's possible to know whether it's legal to call sysfs_remove_group or not. In addition some other minor stuff: - since CPU_UP_PREPARE might fail add CPU_UP_CANCELED handling as well. - use hotcpu_notifier instead of register_hotcpu_notifier. - #ifdef code that isn't needed in the !CONFIG_HOTPLUG_CPU case. Signed-off-by: Heiko Carstens Acked-by: Cornelia Huck Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 289535334646796fe41f199718e4a731f7411a92 Author: Benjamin Herrenschmidt Date: Wed Nov 8 19:46:14 2006 -0800 Driver core: Call platform_notify_remove later Move the call to platform_notify_remove() to after the call to bus_remove_device(), where it belongs. It's bogus to notify the platform of removal while drivers are still attached to the device and possibly still operating since the platform might use this callback to tear down some resources used by the driver (ACPI bits, iommu table, ...) Signed-off-by: Benjamin Herrenschmidt Cc: "Brown, Len" Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 465ae641e4a3e5028aa9c85d3843259aa28a22ce Author: Benjamin Herrenschmidt Date: Sat Nov 11 17:18:42 2006 +1100 ACPI: Change ACPI to use dev_archdata instead of firmware_data Change ACPI to use dev_archdata instead of firmware_data This patch changes ACPI to use the new dev_archdata on i386, x86_64 and ia64 (is there any other arch using ACPI ?) to store it's acpi_handle. It also removes the firmware_data field from struct device as this was the only user. Only build-tested on x86 Signed-off-by: Benjamin Herrenschmidt Cc: Len Brown Signed-off-by: Greg Kroah-Hartman commit c6dbaef22a2f78700e242915a13218dd780c89ff Author: Benjamin Herrenschmidt Date: Sat Nov 11 17:18:39 2006 +1100 Driver core: add dev_archdata to struct device Add arch specific dev_archdata to struct device Adds an arch specific struct dev_arch to struct device. This enables architecture to add specific fields to every device in the system, like DMA operation pointers, NUMA node ID, firmware specific data, etc... Signed-off-by: Benjamin Herrenschmidt Acked-by: Andi Kleen Acked-By: David Howells Signed-off-by: Greg Kroah-Hartman commit d80f19fab89cba8a6d16193154c8ff3edab00942 Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert sound core to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. It also makes the struct sound_card to show up as a "real" device where all the different sound class devices are placed as childs and different card attribute files can hang off of. /sys/class/sound is still a flat directory, but the symlink targets of all devices belonging to the same card, point the the /sys/devices tree below the new card device object. Thanks to Kay for the updates to this patch. Signed-off-by: Kay Sievers Acked-by: Jaroslav Kysela Signed-off-by: Greg Kroah-Hartman commit ebf644c4623bc3eb57683199cd2b9080028b0f6f Author: Greg Kroah-Hartman Date: Tue Jul 25 17:13:31 2006 -0700 Driver core: change mem class_devices to be real devices Signed-off-by: Greg Kroah-Hartman commit 78cde0887930f5d11a56fc51b013f2672fba0e6f Author: Greg Kroah-Hartman Date: Thu Sep 14 07:30:59 2006 -0700 Driver core: convert fb code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit e55c8790d40fdbc6887b4e3e52afefe4b03f1311 Author: Greg Kroah-Hartman Date: Thu Sep 14 07:30:59 2006 -0700 Driver core: convert firmware code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit fcaf71fd51f9cfc504455d3e19ec242e4b2073ed Author: Greg Kroah-Hartman Date: Tue Sep 12 17:00:10 2006 +0200 Driver core: convert mmc code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 04880edae5e1027d61241beb5ac37b520755f2ab Author: Greg Kroah-Hartman Date: Tue Sep 12 17:00:10 2006 +0200 Driver core: convert ppdev code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 9a6a2a5e0b57d25c1bf6eb9b8c958940e156b059 Author: Greg Kroah-Hartman Date: Tue Sep 12 17:00:10 2006 +0200 Driver core: convert PPP code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 07accdc18e014cad945013886ee34e09f859f88a Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert cpuid code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit a271aaf15f492d202def1b34e447107b60fe4ece Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert msr code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit ac11d0601bbe73c92e31b393eeb1225593788d4c Author: Greg Kroah-Hartman Date: Mon Jul 3 13:46:24 2006 -0700 I2C: convert i2c-dev to use struct device instead of struct class_device As class_device is going away eventually... Cc: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 38ca6c34d385f143027ff40dd271c61adcc9b23c Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert raw device code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 01107d343076c34b9e1ce5d073292bd7f3097fda Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert tty core to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Also fixes up the isdn drivers that were putting something in the class device's directory. Signed-off-by: Greg Kroah-Hartman commit 94fbcded4ea0dc14cbfb222a5c68372f150d1476 Author: Greg Kroah-Hartman Date: Thu Jul 27 16:16:04 2006 -0700 Driver core: change misc class_devices to be real devices This also ment that some of the misc drivers had to also be fixed up as they were assuming the device was a class_device. Signed-off-by: Greg Kroah-Hartman commit cd15422b9f39155e2d9ea56ae95c6f62aa5df42e Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert vc code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 805952a889c4d0fdab23307c14c5ce9571f81233 Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: convert vt code to use struct device Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman commit 805fab474ed75f9603dbde6fa74a2976868b4bd2 Author: Kay Sievers Date: Thu Sep 14 11:23:28 2006 +0200 CONFIG_SYSFS_DEPRECATED - class symlinks Turn off class symlinks CONFIG_SYSFS_DEPRECATED is enabled. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit a87cb2ac4a78c590583b52a3ed196adc6c25b6c9 Author: Kay Sievers Date: Thu Sep 14 11:23:28 2006 +0200 CONFIG_SYSFS_DEPRECATED - PHYSDEV* uevent variables Disable the PHYSDEV* uevent variables if CONFIG_SYSFS_DEPRECATED is enabled. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 99ef3ef8d5f2f5b5312627127ad63df27c0d0d05 Author: Kay Sievers Date: Thu Sep 14 11:23:28 2006 +0200 CONFIG_SYSFS_DEPRECATED - device symlinks Turn off device symlinks CONFIG_SYSFS_DEPRECATED is enabled. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit b9cafc7d5b8af0c71896f60dfcff40c71bd38a9a Author: Kay Sievers Date: Thu Sep 14 11:23:28 2006 +0200 CONFIG_SYSFS_DEPRECATED - bus symlinks Turn off the bus symlinks if CONFIG_SYSFS_DEPRECATED is enabled Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 40fa54226f518a9bc97ed1d711c0016e416e3782 Author: Greg Kroah-Hartman Date: Tue Oct 24 00:37:58 2006 +0100 Driver core: make old versions of udev work properly If CONFIG_SYSFS_DEPRECATED is enabled, old versions of udev will work properly with devices that are associated with a class. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 88a22c985e3545c55c9779971007f0f29f912519 Author: Kay Sievers Date: Thu Sep 14 11:23:28 2006 +0200 CONFIG_SYSFS_DEPRECATED Provide a way to support older versions of udev that are shipped in older distros. If this option is disabled, it will also turn off the compatible symlinks in sysfs that older programs might rely on. When in doubt, or if running a distro older than 2006, say Yes here. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit f0ee61a6cecd100301a60d99feb187776533b2a2 Author: Greg Kroah-Hartman Date: Mon Oct 23 10:40:54 2006 -0700 Driver Core: Move virtual_device_parent() to core.c It doesn't need to be global or in device.h Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 1901fb2604fbcd53201f38725182ea807581159e Author: Kay Sievers Date: Sat Oct 7 21:55:55 2006 +0200 Driver core: fix "driver" symlink timing Create the "driver" link before the child device may be created by the probing logic. This makes it possible for userspace (udev), to determine the driver property of the parent device, at the time the child device is created. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 116af378201ef793424cd10508ccf18b06d8a021 Author: Benjamin Herrenschmidt Date: Wed Oct 25 13:44:59 2006 +1000 Driver core: add notification of bus events I finally did as you suggested and added the notifier to the struct bus_type itself. There are still problems to be expected is something attaches to a bus type where the code can hook in different struct device sub-classes (which is imho a big bogosity but I won't even try to argue that case now) but it will solve nicely a number of issues I've had so far. That also means that clients interested in registering for such notifications have to do it before devices are added and after bus types are registered. Fortunately, most bus types that matter for the various usage scenarios I have in mind are registerd at postcore_initcall time, which means I have a really nice spot at arch_initcall time to add my notifiers. There are 4 notifications provided. Device being added (before hooked to the bus) and removed (failure of previous case or after being unhooked from the bus), along with driver being bound to a device and about to be unbound. The usage I have for these are: - The 2 first ones are used to maintain a struct device_ext that is hooked to struct device.firmware_data. This structure contains for now a pointer to the Open Firmware node related to the device (if any), the NUMA node ID (for quick access to it) and the DMA operations pointers & iommu table instance for DMA to/from this device. For bus types I own (like IBM VIO or EBUS), I just maintain that structure directly from the bus code when creating the devices. But for bus types managed by generic code like PCI or platform (actually, of_platform which is a variation of platform linked to Open Firmware device-tree), I need this notifier. - The other two ones have a completely different usage scenario. I have cases where multiple devices and their drivers depend on each other. For example, the IBM EMAC network driver needs to attach to a MAL DMA engine which is a separate device, and a PHY interface which is also a separate device. They are all of_platform_device's (well, about to be with my upcoming patches) but there is no say in what precise order the core will "probe" them and instanciate the various modules. The solution I found for that is to have the drivers for emac to use multithread_probe, and wait for a driver to be bound to the target MAL and PHY control devices (the device-tree contains reference to the MAL and PHY interface nodes, which I can then match to of_platform_devices). Right now, I've been polling, but with that notifier, I can more cleanly wait (with a timeout of course). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Greg Kroah-Hartman commit 2b290da053608692ea206507d993b70c39d2cdea Author: Adrian Bunk Date: Thu Nov 16 13:16:23 2006 +0100 PCI: make arch/i386/pci/common.c:pci_bf_sort static This patch makes the needlessly global pci_bf_sort static. Signed-off-by: Adrian Bunk Acked-by: Matt Domsch Signed-off-by: Greg Kroah-Hartman commit b0d974e90d6f9fbf3a926defbbc76543cff74426 Author: Adrian Bunk Date: Fri Nov 17 02:19:25 2006 +0100 PCI: ibmphp_pci.c: fix NULL dereference The correct order is: NULL check before dereference Spotted by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 9d167dc367f22c07285137370816b83b4be9c697 Author: Kenji Kaneshige Date: Mon Nov 13 15:13:09 2006 -0800 pciehp: remove unnecessary pci_disable_msi This patch fixes the problem that "irq XX: nobody cared" kernel oops is reported when pciehp is once rmmoded and insmoded again. The cause of this problem is pciehp driver calls pci_disable_msi() at controller release time, even though it must be done by PCI Express Port Bus driver. This patch removes unnecessary pci_disable_msi() call from pciehp driver. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 407f452b05f9e5d019c07077d05238bca1b45c4c Author: Kenji Kaneshige Date: Mon Nov 13 15:13:00 2006 -0800 pciehp: remove unnecessary free_irq This patch fixes the problem that the following error messages is reported when pciehp driver is rmmoded. Trying to free already-free IRQ XX The cause of this problem is that pciehp driver is doing unknown 2nd free_irq at driver unloading. This patch removes this unknown 2nd free_irq call. Note: The pciehp driver should be adapted to standard device driver mode. Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit a57ed79ef1b71f6da44ebeabb41d019d172fb261 Author: John Rose Date: Mon Nov 13 15:12:52 2006 -0800 PCI: rpaphp: change device tree examination Change the criterion that RPA PCI Hotplug and RPA DLPAR use when determining the hotplug capabilities of a given device node. The "device_type" property is less consistent than "name" across PCI nodes on newer hardware. Signed-off-by: John Rose Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit ac9e98918776d8fa6dc38bfa6d298a7dbcbac2cb Author: Rolf Eike Beer Date: Mon Nov 13 15:12:45 2006 -0800 PCI: Change memory allocation for acpiphp slots Change memory allocation for acpiphp slots Change the "struct slot" that acpiphp uses for managing it's slots to directly contain the memory for the needed struct hotplug_slot_info and the slot's name. This way we need only two memory allocations per slot instead of four. While we are at it: make_slot_name() is just a wrapper around snprintf() knowing the right arguments to call it. Since the function makes just one function call and is only called from one place I inlined it by hand. Finally this fixes a possible bug waiting for someone to hit it. There were two unused local variables in acpiphp_register_hotplug_slot(). gcc did not find them because they were used in memory allocations with sizeof(*var). They had the same types as the target of the allocation, but nevertheless this was just weird. Signed-off-by: Rolf Eike Beer Acked-by: Matthew Wilcox Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit adbc2a102252994c36102008293b52760613d6c3 Author: Jason Gaston Date: Wed Nov 22 15:19:12 2006 -0800 i2c-i801: SMBus patch for Intel ICH9 This updated patch adds the Intel ICH9 LPC and SMBus Controller DID's. Thi= s patch relies on the irq ICH9 patch to pci_ids.h. Signed-off-by: Jason Gaston Signed-off-by: Greg Kroah-Hartman commit 3b59d52d8c7925e7a9a396f2e31a66eb060c6c37 Author: Jason Gaston Date: Wed Nov 22 15:15:08 2006 -0800 PCI: irq: irq and pci_ids patch for Intel ICH9 This updated patch adds the Intel ICH9 LPC and SMBus Controller DID's. Signed-off-by: Jason Gaston Signed-off-by: Greg Kroah-Hartman commit 95ddc5f25590e31843a09357365d5cbc6ec978db Author: Inaky Perez-Gonzalez Date: Wed Nov 22 12:40:32 2006 -0800 PCI: pci_{enable,disable}_device() nestable ports Change drivers/message/i20 pci driver to simply do a nestable enable()/disable() instead of checking for it. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit bae94d02371c402408a4edfb95e71e88dbd3e973 Author: Inaky Perez-Gonzalez Date: Wed Nov 22 12:40:31 2006 -0800 PCI: switch pci_{enable,disable}_device() to be nestable Changes the pci_{enable,disable}_device() functions to work in a nested basis, so that eg, three calls to enable_device() require three calls to disable_device(). The reason for this is to simplify PCI drivers for multi-interface/capability devices. These are devices that cram more than one interface in a single function. A relevant example of that is the Wireless [USB] Host Controller Interface (similar to EHCI) [see http://www.intel.com/technology/comms/wusb/whci.htm]. In these kind of devices, multiple interfaces are accessed through a single bar and IRQ line. For that, the drivers map only the smallest area of the bar to access their register banks and use shared IRQ handlers. However, because the order at which those drivers load cannot be known ahead of time, the sequence in which the calls to pci_enable_device() and pci_disable_device() cannot be predicted. Thus: 1. driverA starts pci_enable_device() 2. driverB starts pci_enable_device() 3. driverA shutdown pci_disable_device() 4. driverB shutdown pci_disable_device() between steps 3 and 4, driver B would loose access to it's device, even if it didn't intend to. By using this modification, the device won't be disabled until all the callers to enable() have called disable(). This is implemented by replacing 'struct pci_dev->is_enabled' from a bitfield to an atomic use count. Each caller to enable increments it, each caller to disable decrements it. When the count increments from 0 to 1, __pci_enable_device() is called to actually enable the device. When it drops to zero, pci_disable_device() actually does the disabling. We keep the backend __pci_enable_device() for pci_default_resume() to use and also change the sysfs method implementation, so that userspace enabling/disabling the device doesn't disable it one time too much. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 039d09a845209122c5193e650ab2d8b3c849ca7c Author: Amol Lad Date: Tue Oct 17 10:02:50 2006 +0530 PCI: arch/i386/kernel/pci-dma.c: ioremap balanced with iounmap ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Tested (compilation only): - using allmodconfig - making sure the files are compiling without any warning/error due to new changes Signed-off-by: Amol Lad Signed-off-by: Greg Kroah-Hartman commit 7edab2f0876ff6a38e10a88c9aca20180aad307c Author: Randy Dunlap Date: Tue Oct 17 10:17:58 2006 -0700 pci/i386: style cleanups Mostly CodingStyle cleanups for arch/i386/pci/i386.c: - fit in 80 columns; - use a #defined value instead of an inline constant; Also change one resource_size_t (DBG) printk from %08lx to %lx since it can be more than 32 bits (more than 8 hexits). Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 7ea7e98fd8d02351c43ef4ab35d70f3aaa26c31d Author: Matthew Wilcox Date: Thu Oct 19 09:41:28 2006 -0600 PCI: Block on access to temporarily unavailable pci device The existing implementation of pci_block_user_cfg_access() was recently criticised for providing out of date information and for returning errors on write, which applications won't be expecting. This reimplementation uses a global wait queue and a bit per device. I've open-coded prepare_to_wait() / finish_wait() as I could optimise it significantly by knowing that the pci_lock protected us at all points. It looked a bit funny to be doing a spin_unlock_irqsave(); schedule(), so I used spin_lock_irq() for the _user versions of pci_read_config and pci_write_config. Not carrying a flags pointer around made the code much less nasty. Attempts to block an already blocked device hit a BUG() and attempts to unblock an already unblocked device hit a WARN(). If we need to block access to a device from userspace, it's because it's unsafe for even another bit of the kernel to access the device. An attempt to block a device for a second time means we're about to access the device to perform some other operation, which could provoke undefined behaviour from the device. Signed-off-by: Matthew Wilcox Acked-by: Adam Belay Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 50bf14b3ff05fb6e10688021b96f95d30a300f8d Author: Akinobu Mita Date: Wed Nov 8 19:53:59 2006 -0800 pci: fix __pci_register_driver error handling __pci_register_driver() error path forgot to unwind. driver_unregister() needs to be called when pci_create_newid_file() failed. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 0dcb2b7e722f62b886f28b01150860de67d219fa Author: Kristen Carlson Accardi Date: Mon Oct 30 13:08:12 2006 -0800 pci: clear osc support flags if no _OSC method So it looks like pci aer code will call pci_osc_support_set to tell the firmware about OSC_EXT_PCI_CONFIG_SUPPORT flag. that causes ctrlset_buf[OSC_SUPPORT_TYPE] to evaluate to true when pciehp calls pci_osc_control_set() is called (to attempt to use OSC to gain native pcie control from firmware), regardless of whether or not _OSC was actually successfully executed. That causes this section of code: if (ctrlset_buf[OSC_SUPPORT_TYPE] && ((global_ctrlsets & ctrlset) != ctrlset)) { return AE_SUPPORT; } to be hit. This patch will reset the OSC_SUPPORT_TYPE field if _OSC fails, and then would allow pciehp to go ahead and try to run _OSC again. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 0a9dee2739fd4385e83c3316e3f3bee641796638 Author: Akinobu Mita Date: Mon Oct 30 13:08:04 2006 -0800 acpiphp: fix missing acpiphp_glue_exit() acpiphp_glue_exit() needs to be called to unwind when no slots found. (It fixes data corruption when reloading acpiphp driver with no such devices) Signed-off-by: Akinobu Mita Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 467c442f092e22acf86a3b4ad4863d097d7257da Author: Akinobu Mita Date: Mon Oct 30 13:07:58 2006 -0800 acpiphp: fix use of list_for_each macro This patch fixes invalid usage of list_for_each() list_for_each (node, &bridge_list) { bridge = (struct acpiphp_bridge *)node; ... } This code works while the member of list node is located at the head of struct acpiphp_bridge. Signed-off-by: Akinobu Mita Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit a2302c68d923537436b1114aa207787c1a31bd50 Author: John Keller Date: Wed Oct 4 16:49:52 2006 -0500 Altix: Initial ACPI support - ROM shadowing. Support a shadowed ROM when running with an ACPI capable PROM. Define a new dev.resource flag IORESOURCE_ROM_BIOS_COPY to describe the case of a BIOS shadowed ROM, which can then be used to avoid pci_map_rom() making an unneeded call to pci_enable_rom(). Signed-off-by: John Keller Signed-off-by: Greg Kroah-Hartman commit 9f581f162e2b304be25dee49bf3945d4ed65dfb6 Author: John Keller Date: Wed Oct 4 16:49:35 2006 -0500 Altix: SN ACPI hotplug support. A few minor changes to the way slot/device fixup is done. No need to be calling sn_pci_controller_fixup(), as a root bus cannot be hotplugged. Signed-off-by: John Keller Signed-off-by: Greg Kroah-Hartman commit 8ea6091f500162e97687d7acf925f84202066b8d Author: John Keller Date: Wed Oct 4 16:49:25 2006 -0500 Altix: Add initial ACPI IO support First phase in introducing ACPI support to SN. In this phase, when running with an ACPI capable PROM, the DSDT will define the root busses and all SN nodes (SGIHUB, SGITIO). An ACPI bus driver will be registered for the node devices, with the acpi_pci_root_driver being used for the root busses. An ACPI vendor descriptor is now used to pass platform specific information for both nodes and busses, eliminating the need for the current SAL calls. Also, with ACPI support, SN fixup code is no longer needed to initiate the PCI bus scans, as the acpi_pci_root_driver does that. However, to maintain backward compatibility with non-ACPI capable PROMs, none of the current 'fixup' code can been deleted, though much restructuring has been done. For example, the bulk of the code in io_common.c is relocated code that is now common regardless of what PROM is running, while io_acpi_init.c and io_init.c contain routines specific to an ACPI or non ACPI capable PROM respectively. A new pci bus fixup platform vector has been created to provide a hook for invoking platform specific bus fixup from pcibios_fixup_bus(). The size of io_space[] has been increased to support systems with large IO configurations. Signed-off-by: John Keller Signed-off-by: Greg Kroah-Hartman commit e08cf02f32dff732b2be0c9755cf5eb676f88e48 Author: Matthew Wilcox Date: Tue Oct 10 08:01:22 2006 -0600 PCI: Delete unused extern in powermac/pci.c This file no longer uses pci_cache_line_size, so delete the declaration Signed-off-by: Matthew Wilcox Cc: Benjamin Herrenschmidt Acked-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit edb2d97eb57b7a21c9256260562de6a65dda86cc Author: Matthew Wilcox Date: Tue Oct 10 08:01:21 2006 -0600 PCI: Replace HAVE_ARCH_PCI_MWI with PCI_DISABLE_MWI pSeries is the only architecture left using HAVE_ARCH_PCI_MWI and it's really inappropriate for its needs. It really wants to disable MWI altogether. So here are a pair of stub implementations for pci_set_mwi and pci_clear_mwi. Also rename pci_generic_prep_mwi to pci_set_cacheline_size since that better reflects what it does. Signed-off-by: Matthew Wilcox Cc: Paul Mackerras Acked-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit ebf5a24829def5d066922ceebde61dd57fdc6b1e Author: Matthew Wilcox Date: Tue Oct 10 08:01:20 2006 -0600 PCI: Use pci_generic_prep_mwi on sparc64 The setting of the CACHE_LINE_SIZE register in sparc64's pci initialisation code isn't quite adequate as the device may have incompatible requirements. The generic code tests for this, so switch sparc64 over to using it. Since sparc64 has different L1 cache line size and PCI cache line size, it would need to override the generic code like i386 and ia64 do. We know what the cache line size is at compile time though, so introduce a new optional constant PCI_CACHE_LINE_BYTES. Signed-off-by: Matthew Wilcox Signed-off-by: David Miller Acked-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit 3efe2d84c8d909567c7976a7106114127b8c3470 Author: Matthew Wilcox Date: Tue Oct 10 08:01:19 2006 -0600 PCI: Use pci_generic_prep_mwi on ia64 The pci_generic_prep_mwi() code does everything that pcibios_prep_mwi() does on ia64. All we need to do is be sure that pci_cache_line_size is set appropriately, and we can delete pcibios_prep_mwi(). Using SMP_CACHE_BYTES as the default was wrong on uniprocessor machines as it is only 8 bytes. The default in the generic code of L1_CACHE_BYTES is at least as good. Signed-off-by: Matthew Wilcox Acked-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit 368c73d4f689dae0807d0a2aa74c61fd2b9b075f Author: Alan Cox Date: Wed Oct 4 00:41:26 2006 +0100 PCI: quirks: fix the festering mess that claims to handle IDE quirks The number of permutations of crap we do is amazing and almost all of it has the wrong effect in 2.6. At the heart of this is the PCI SFF magic which says that compatibility mode PCI IDE controllers use ISA IRQ routing and hard coded addresses not the BAR values. The old quirks variously clears them, sets them, adjusts them and then IDE ignores the result. In order to drive all this garbage out and to do it portably we need to handle the SFF rules directly and properly. Because we know the device BAR 0-3 are not used in compatibility mode we load them with the values that are implied (and indeed which many controllers actually thoughtfully put there in this mode anyway). This removes special cases in the IDE layer and libata which now knows that bar 0/1/2/3 always contain the correct address. It means our resource allocation map is accurate from boot, not "mostly accurate" after ide is loaded, and it shoots lots of code. There is also lots more code and magic constant knowledge to shoot once this is in and settled. Been in my test tree for a while both with drivers/ide and with libata. Wants some -mm shakedown in case I've missed something dumb or there are corner cases lurking. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cc692a5f1e9816671b77da77c6d6c463156ba1c7 Author: Stephen Hemminger Date: Wed Nov 8 16:17:15 2006 -0800 PCI: save/restore PCI-X state Shouldn't PCI-X state be saved/restored? No device really needs this right now. qla24xx (fc HBA) and mthca (infiniband) don't do suspend, and sky2 resets its tweaks when links are brought up. Signed-off-by: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman commit e65e5fb5ceb02aaea7b65bf8b3b0d0c9057718b6 Author: Michael Ellerman Date: Tue Nov 7 18:21:21 2006 +1100 PCI: Make some MSI-X #defines generic Move some MSI-X #defines into pci_regs.h so they can be used outside of drivers/pci. Signed-off-by: Michael Ellerman Signed-off-by: Greg Kroah-Hartman commit 009af1ff78bfc30b9a27807dd0207fc32848218a Author: Greg Kroah-Hartman Date: Fri Oct 27 16:12:30 2006 -0700 PCI: Let PCI_MULTITHREAD_PROBE not be broken It's not really broken, but people keep running into other problems caused by it. Re-enable it so that the drivers get stress tested. Signed-off-by: Greg Kroah-Hartman commit 94fcda1f8ab5e0cacc381c5ca1cc9aa6ad523576 Author: Alan Stern Date: Mon Nov 20 11:38:46 2006 -0500 usbcore: remove unused argument in autosuspend Thanks to several earlier patches, usb_autosuspend_device() and usb_autoresume_device() are never called with a second argument other than 1. This patch (as819) removes the now-redundant argument. It also consolidates some common code between those two routines, putting it into a new subroutine called usb_autopm_do_device(). And it includes a sizable kerneldoc update for the affected functions. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit ee49fb5dc89d34f1794ac9362fa97c1a640f7ddd Author: Alan Stern Date: Wed Nov 22 16:55:54 2006 -0500 USB: keep count of unsuspended children This patch (as818b) simplifies autosuspend processing by keeping track of the number of unsuspended children of each USB hub. This will permit us to avoid a good deal of unnecessary work all the time; we will no longer have to create a bunch of workqueue entries to carry out autosuspend requests, only to have them fail because one of the hub's children isn't suspended. The basic idea is simple. There already is a usage counter in the usb_device structure for preventing autosuspends. The patch just increments that counter for every unsuspended child. There's only one tricky part: When a device disconnects we need to remember whether it was suspended at the time (leave the counter alone) or not (decrement the counter). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d25450c68767481f7c9cc4823a6da8235db40be6 Author: Alan Stern Date: Mon Nov 20 11:14:30 2006 -0500 USB hub: simplify remote-wakeup handling This patch (as817) simplifies the remote-wakeup processing in the hub driver. Now instead of using a specialized code path, it relies on the standard USB resume routines. The hub_port_resume() function does an initial get_port_status() to see whether the port has already resumed itself (as it does when a remote-wakeup request is sent). This will slow down handling of other resume events slightly, but not enough to matter. The patch also changes the hub_port_status() routine, making it return an error if a short reply is received. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit ce3615879ae85373c03744b45b7c2d7ae5e29b2a Author: Alan Stern Date: Mon Nov 20 11:12:22 2006 -0500 USB: struct usb_device: change flag to bitflag This patch (as816) changes an existing flag in the usb_device structure to a bitflag, preparing the way for more bitflags to come in the future. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1f9fc882d92f3ff390455836f98d7ddc36d4e4c3 Author: Alan Stern Date: Mon Nov 20 11:06:59 2006 -0500 OHCI: make autostop conditional on CONFIG_PM Unlike UHCI, OHCI does not exert any DMA load on the system when no devices are connected. Consequently there is no advantage to doing an autostop other than the power savings, so we shouldn't compile the necessary code unless CONFIG_PM is enabled. This patch (as820) makes the root-hub suspend and resume routines conditional on CONFIG_PM. It also prevents autostop from activating if the device_may_wakeup flag isn't set; some people use this flag to alert the driver about Resume-Detect bugs in the hardware. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 40f122f343797d02390c5a157372cac0c5b50bb7 Author: Alan Stern Date: Thu Nov 9 14:44:33 2006 -0500 USB: Add autosuspend support to the hub driver This patch (as742b) adds autosuspend/autoresume support to the USB hub driver. The largest aspect of the change is that we no longer need a special flag for root hubs that want to be resumed. Now every hub is autoresumed whenever khubd needs to access it. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8c03356a559ced6fa78931f498193f776d67e445 Author: Alan Stern Date: Thu Nov 9 14:42:16 2006 -0500 EHCI: Fix root-hub and port suspend/resume problems This patch (as738b) fixes numerous problems in the controller/root-hub suspend/resume/remote-wakeup support in ehci-hcd: The bus_resume() routine should wake up only the ports that were suspended by bus_suspend(). Ports that were already suspended should remain that way. The interrupt mask is used to detect loss of power in the bus_resume() routine (if the mask is 0 then power was lost). However bus_suspend() always sets the mask to 0. Instead the mask should retain its normal value, with port-change-detect interrupts disabled if remote wakeup is turned off. The interrupt mask should be reset to its correct value at the end of bus_resume() regardless of whether power was lost. bus_resume() reinitializes the operational registers if power was lost. However those registers are not in the aux power well, hence they can lose their values whenever the controller is put into D3. They should always be reinitialized. When a port-change interrupt occurs and the root hub is suspended, the interrupt handler should request a root-hub resume instead of starting up the controller all by itself. There's no need for the interrupt handler to request a root-hub resume every time a suspended port sends a remote-wakeup request. The pci_resume() method doesn't need to check for connected ports when deciding whether or not to reset the controller. It can make that decision based on whether Vaux power was maintained. Even when the controller does not need to be reset, pci_resume() must undo the effect of pci_suspend() by re-enabling the interrupt mask. If power was lost, pci_resume() must not call ehci_run(). At this point the root hub is still supposed to be suspended, not running. It's enough to rewrite the command register and set the configured_flag. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c066475e1fe3b3afbd613ddf5f1eca9be4fb6de0 Author: Greg Kroah-Hartman Date: Fri Aug 11 01:55:12 2006 -0700 USB: create a new thread for every USB device found during the probe sequence Might speed up some systems. If nothing else, a bad driver should not take the whole USB subsystem down with it. Signed-off-by: Greg Kroah-Hartman commit 958e8741bf9ff5d0f0b82b7cef578e96c764a288 Author: Greg Kroah-Hartman Date: Tue Apr 9 12:14:34 2002 -0700 USB: add driver for the USB debug devices It's a simple usb-serial driver that just creates a tty device to read and write from. Signed-off-by: Greg Kroah-Hartman commit 7e27780ffdf5fcf8675dfb278ca316a1f2b7e179 Author: Sarah Bailey Date: Sat Nov 18 22:30:16 2006 -0800 USB: added dynamic major number for USB endpoints This patch is an update for Greg K-H's proposed usbfs2: http://sourceforge.net/mailarchive/message.php?msg_id=19295229 It creates a dynamic major for USB endpoints and fixes the endpoint minor calculation. Signed-off-by: Sarah Bailey Signed-off-by: Greg Kroah-Hartman commit 10c8211c634f759633ffcdc3b0e2913963b32abc Author: Oliver Neukum Date: Thu Nov 23 15:40:17 2006 +0100 USB: pegasus error path not resetting task's state there is an error path in the pegasus driver which can leave the task in TASK_UNINTERRUPTIBLE. Depending on when it schedules next, this can be bad. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 9aa742ef7c1a7ff8e6df92a93ce3688e99fa66e3 Author: Oliver Neukum Date: Thu Nov 23 12:45:31 2006 +0100 USB: endianness fix for asix.c the latest update for asix.c reverted some endianness fixes. This reinstates them. Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 8feabf70f51f3f6772e2beda608a0ebca1dbf46a Author: Adrian Bunk Date: Fri Nov 24 03:24:03 2006 +0100 USB: build the appledisplay driver We do already have both the code and a config option, so why not build this driver? ;-) Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 7ac9da10af7ffd94cfd07e097b93d588bbd32b75 Author: Burman Yan Date: Wed Nov 22 20:54:38 2006 +0200 USB serial: replace kmalloc+memset with kzalloc Replace kmalloc+memset with kzalloc Signed-off-by: Yan Burman Signed-off-by: Greg Kroah-Hartman commit afd21ee5abd0fef567dbfa234099304886ff83ce Author: Julien BLACHE Date: Wed Nov 15 00:00:17 2006 -0500 USB: hid-core: canonical defines for Apple USB device IDs Use canonical defines for the Apple USB device IDs. Also add the Geyser IV devices missing in my previous patch. Signed-off-by: Julien BLACHE Acked-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 54ecf1fba683f779a1b36abed9c843decafc7d5b Author: Mariusz Kozlowski Date: Mon Nov 6 17:37:20 2006 +0100 USB: idmouse cleanup Just digging through code and found these needless variable initializations. So here is the patch. Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 8bb22d2bdaac415965e7be1af8da2b8f3ee35f31 Author: Adrian Bunk Date: Tue Nov 21 22:02:54 2006 +0100 USB: make drivers/usb/core/driver.c:usb_device_match() static usb_device_match() can now become static. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 7481bb8a7f2fd6b411764e0dc91713b1a58fce4c Author: David Brownell Date: Mon Nov 20 11:41:39 2006 -0800 USB: lh7a40x_udc remove double declaration Remove minor double-declaration goof. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 827982c577cddbe50b2120e577a60f6376716900 Author: David Brownell Date: Mon Nov 20 11:38:57 2006 -0800 USB: pxa2xx_udc recognizes ixp425 rev b0 chip Make the pxa2xx_udc driver recognize a newer revision of the IXP425 chip. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 24ced062a2965645d651ff92bc93b2c1f926474e Author: Holger Schurig Date: Fri Nov 17 22:50:15 2006 +0100 usbtouchscreen: add support for DMC TSC-10/25 devices Adds support for the DMC TSC-10 and TSC-25 usb touchscreen controllers. Signed-off-by: Holger Schurig Signed-off-by: Daniel Ritz Signed-off-by: Greg Kroah-Hartman commit 9ce8540c884c19c0f5f38c9e85d4bdc192baf321 Author: Adrian Bunk Date: Mon Nov 20 03:24:44 2006 +0100 USB: ftdi-elan.c: fixes and cleanups This patch contains the following possible cleanups: - make the needlessly global ftdi_release_platform_dev() static - remove the unused usb_ftdi_elan_read_reg() - proper prototypes for the following functions: - usb_ftdi_elan_read_pcimem() - usb_ftdi_elan_write_pcimem() Note that the misplaced prototypes for the latter ones in drivers/usb/host/u132-hcd.c were buggy. Depending on the calling convention of the architecture calling one of them could have turned your stack into garbage. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 27a3de4cfc3508b30803b7350ca6385b3c53f223 Author: Adrian Bunk Date: Mon Nov 20 03:23:54 2006 +0100 USB: make drivers/usb/host/u132-hcd.c:u132_hcd_wait static This patch makes the needlessly global "u132_hcd_wait" static. Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 2e46b74852446404d64b0b00ce872724bfa627ab Author: Mariusz Kozlowski Date: Fri Nov 17 17:49:22 2006 +0100 usb: cypress_m8 init error path fix If at some point cypress_init() fails deregister only the resources that were registered until that point. Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 93f1a47c4af34c4ee014b3d2aae70089b3b69f72 Author: David Brownell Date: Thu Nov 16 23:34:58 2006 -0800 USB: add ehci_hcd.ignore_oc parameter Certain boards seem to like to issue false overcurrent notifications, for example on ports that don't have anything connected to them. This looks like a hardware error, at the level of noise to those ports' overcurrent input signals (or non-debounced VBUS comparators). This surfaces to users as truly massive amounts of syslog spam from khubd (which is appropriate for real hardware problems, except for the volume from multiple ports). Using this new "ignore_oc" flag helps such systems work more sanely, by preventing such indications from getting to khubd (and spam syslog). The downside is of course that true overcurrent errors will be masked; they'll appear as spontaneous disconnects, without the diagnostics that will let users troubleshoot issues like short circuited cables. Note that the bulk of these reports seem to be with VIA southbridges, but I think some were with Intel ones. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit f0d7f27351058284f62ab4848909373c2d1f5ce8 Author: David Brownell Date: Thu Nov 16 23:56:15 2006 -0800 USB: EHCI hooks for high speed electrical tests EHCI hooks for high speed electrical tests of the root hub ports. The expectation is that a usermode program actually triggers the test, making the same control request it would make for an external hub. Tests for peripheral upstream ports would issue a different request. In all cases, the hardware needs re-initialization before it could be used "normally" again (e.g. unplug/replug, rmmod/modprobe). Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1f26e28d3e32339ca683f087cd55a70e2befc333 Author: Alan Stern Date: Thu Nov 16 10:16:00 2006 -0500 USB: net2280: don't send unwanted zero-length packets The net2280 driver is too eager to send zero-length packets when IN tokens are received on ep0. No such packet should be sent (the driver should NAK) before the gadget driver has queued the proper response. Otherwise deferred responses are impossible. This patch (as823) makes net2280 avoid sending ZLPs for IN transfers on ep0 until a response has been submitted, and avoids stalling when an OUT packet is received before a request has been submitted for an OUT transfer on ep0. Signed-off-by: Alan Stern Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit a3b1f50ce2fdc73c7e60e04c0a2235af74deac2b Author: Mariusz Kozlowski Date: Fri Nov 17 11:53:23 2006 +0100 usb: microtek possible memleak fix Possible memleak fix on error path. The changes: - out_kfree2 and out_free_urb replaced - missing scsi_host_put() added Here it goes: Signed-off-by: Mariusz Kozlowski Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 49314378ac9b76c40f221e3e5aed866e912e7e99 Author: Jaco Kroon Date: Wed Nov 15 01:02:08 2006 -0800 USB: add Digitech USB-Storage to unusual_devs.h The mass storage device from Digitech designed for Flash Cards, as found on (for example) the GNX4 device has issues with residue, similar to the bug report at http://kerneltrap.org/node/6297. This patch adds the faulty storage device to unusual_devs.h, this not only reduces the noise in dmesg but also increases the transfer speeds by a factor of 7x for me (89kB/s -> 637kB/s). T: Bus=02 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1210 ProdID=0003 Rev= 1.00 S: Manufacturer=DigiTech HMG S: Product=DigiTech Mass Storage C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms Signed-off-by: Jaco Kroon Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit db063507b40664de33a61161c90358fe6fc9565a Author: Alan Stern Date: Mon Nov 13 15:02:04 2006 -0500 USB core: fix compiler warning about usb_autosuspend_work This patch (as821) fixes a compiler warning when CONFIG_PM isn't on ("usb_autosuspend_work" defined but not used). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 7a5c7b42d3c7b1e0085d48414ee73003d3888d1f Author: Naranjo Manuel Francisco Date: Wed Nov 15 15:14:27 2006 -0300 USB: fix aircable.c: inconsequent NULL checking > 2006/11/11, Adrian Bunk : > > The Coverity checker spotted the following in > > drivers/usb/serial/aircable.c: > > > > <-- snip --> > > > > ... > > static void aircable_read(void *params) > > { > > ... Hi everyone, Sorry for the long time response but here is the patch, I think this way should work, if anyone has any suggestion let me know. What I do now is, in case I don't have the tty available I reschedule the work, I have tried it and it works with no problem, I even tried removing the device, and didn't find anything strange. Signed-off-by: Naranjo Manuel Signed-off-by: Greg Kroah-Hartman commit 1b7be3c066ae9238996a7a861b39b0bfd5860735 Author: Alan Stern Date: Mon Nov 6 12:05:00 2006 -0500 OHCI: change priority level of resume log message All the other root-hub suspend or resume log messages, in ohci-hcd or any of the other host controller drivers, use the debug priority level. This patch (as815) makes the one single exception behave like all the rest. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 68df9de1d0e95034355283dc12056f93de8e0a79 Author: Mariusz Kozlowski Date: Wed Nov 8 15:37:04 2006 +0100 usb: usbmixer free kill urb cleanup - usb_free_urb() cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit f5e135af8737bdc57168cddb3fd83028b25c26cd Author: Mariusz Kozlowski Date: Wed Nov 8 15:37:00 2006 +0100 usb: usbmidi kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit bcb54a54033ff9359cf64e4283e4f4b92bf9132f Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:55 2006 +0100 usb: visor kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 95d4316654a7e09778ebf81e03cab7040ecca1b0 Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:51 2006 +0100 usb: usb-serial free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 9aac10ff1d9a228d05491f68f933cf6a41b9debc Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:46 2006 +0100 usb: navman kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 73135bb9154f9565e8ae294ffa73f9e871d72b47 Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:42 2006 +0100 usb: mct_u232 free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 5505c2261eb5e7a6ff851afbe7f77d54d960e83b Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:38 2006 +0100 usb: kobil_sct kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 1cadc1378fe9cdee9515842a4bf9f42228448ad2 Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:34 2006 +0100 usb: keyspan free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 9a25f44f91b621f49b459687ae49d4fed4423d0e Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:29 2006 +0100 usb: io_edgeport kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit c69694b779714b751a326d1b886087322001e86f Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:22 2006 +0100 usb: catc free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 794c944ecd468ddf8a571bd37ab7b21035965f91 Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:25 2006 +0100 usb: ftdi_sio kill urb cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 5483eb1300fc052c294a9dac57d5bf6653126efd Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:18 2006 +0100 usb: phidgetmotorcontrol free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit df43121463d2e6dde9f7e40a7720e111e4cc600e Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:07 2006 +0100 usb: phidgetkit free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit f53510e8c49d00085a820ae98ca4753d4487dbad Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:14 2006 +0100 usb: legousbtower free kill urb cleanup Hello, - usb_free_urb() cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 2891a51cc27e0eed9474668b58e4f587b9f36694 Author: Mariusz Kozlowski Date: Wed Nov 8 15:36:03 2006 +0100 usb: auerswald free kill urb cleanup - usb_free_urb() cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 4ba0b2ed583b80cb26b9c8d8a8b418f677ec4a83 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:58 2006 +0100 usb: usbkbd free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 6f07429fa295a04e06c93601e6c597e7a6d95495 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:54 2006 +0100 usb: hid-core free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 2381526a793582ad18b30af0e3013ccad1a8bcdb Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:50 2006 +0100 usb: ati_remote2 free urb cleanup Hello, - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 459f836a612d28f224dbbc306ab63187014a6503 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:46 2006 +0100 usb: ati_remote free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit f988f272fe8de462045e9f298e5b7f1e39b2e53a Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:42 2006 +0100 usb: zd1201 free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 8fd31e1d85d5c13c1273013067474ebb73ad6fd1 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:38 2006 +0100 usb: irda-usb free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 8563650da0fb2df5755ea133d5fb182ded9d2ae8 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:12 2006 +0100 usb: zc0301_core free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 926b1e90093688d91cbc358e5339ad2861c86e46 Author: Mariusz Kozlowski Date: Wed Nov 8 15:35:02 2006 +0100 usb: quickcam_messenger free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 14d2707b80d6a9d1e8e92718885f99b77531b339 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:59 2006 +0100 usb: sn9c102_core free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 90b2625a5159607e37871cd75370c189fc22d208 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:55 2006 +0100 usb: pwc-if free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 4c6f7d4a889ad997483a4c0318111b4a506f0fe3 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:50 2006 +0100 usb: pvrusb2-io free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 5e55d2cea80254faa6ba5c13f3053070db57b63f Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:31 2006 +0100 usb: pvrusb2-hdw free unlink urb cleanup - usb_free_urb() cleanup - usb_unlink_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 5d02d027ac2e7778011fa833b3efa50b72a23dcd Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:27 2006 +0100 usb: ttusb_dec free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 4064fe43e8bf6cfe7fc6fadfbccc7fe1fbb1f0c1 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:22 2006 +0100 usb: cinergyT2 free kill urb cleanup - usb_free_urb() cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit ead54fcd6a6ffc0c45e318ffe8872d228bdff0e5 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:17 2006 +0100 usb: usb-gigaset free kill urb cleanup - usb_free_urb() cleanup - usb_kill_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 8f21d119f457ece27a69ac1dadd655deee6f2a20 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:09 2006 +0100 usb: iforce-usb free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 6265d62f31e42cc839f929439a95f602d70d6bf7 Author: Mariusz Kozlowski Date: Wed Nov 8 15:34:02 2006 +0100 usb: pcwd_usb free urb cleanup - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 3c8961ee6d93c5a2ddf34d8d8171dd685538722b Author: Mariusz Kozlowski Date: Wed Nov 8 15:33:38 2006 +0100 usb: writing_usb_driver free urb cleanup Allright. As Greg KH suggested I split this big patch into smaller ones to make the changes easier to review. Having no better idea how to split that I split it on a 'patch per file' basis. All those patches clean redundant 'if' before usb_unlink/free/kill_urb(): if (urb) usb_free_urb(urb); /* unlink / free / kill */ I decided not to touch bigger 'if's like if (urb) { usb_kill_urb(urb); usb_free_urb(urb); urb = NULL; } as that would be probably too intrusive. One of patches also fixes drivers/usb/misc/auerswald.c memleak I found when digging the code. All those patches are against 2.6.19-rc4. Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 444f4f91fda54bea57a0e31098a75f54548e8b28 Author: Mariusz Kozlowski Date: Thu Nov 16 16:38:57 2006 +0100 USB: pwc-if loop fix We should free urbs starting at [i-1] not [i]. Signed-off-by: Mariusz Kozlowski Signed-off-by: Greg Kroah-Hartman commit 1f54a6ae79ab4369f17d6bc86eaff3125395af9c Author: Oleg Verych Date: Fri Nov 17 08:21:27 2006 +0000 usb-serial: ti_usb, TI ez430 development tool ID usb-serial: ti_usb, TI ez430 development tool ID Signed-off-by: Oleg Verych Signed-off-by: Greg Kroah-Hartman commit ad0327d680734b76c33f5438cd656bdfd26f5f5b Author: daniel@centurion.net.nz Date: Sat Nov 11 15:47:52 2006 +1300 USB: airprime: New device ID Signed-off-by: Greg Kroah-Hartman commit 54c9b2266f83dfc3d6c538417564dc74266f4dd9 Author: Adrian Bunk Date: Mon Nov 20 03:23:58 2006 +0100 USB: make drivers/usb/input/wacom_sys.c:wacom_sys_irq() static This patch makes the needlessly global wacom_sys_irq() static. Signed-off-by: Adrian Bunk Signed-off-by: Ping Cheng Signed-off-by: Greg Kroah-Hartman commit d5ec1686ba96eb75e132196c486cc0521b00f12c Author: Stephen Hemminger Date: Tue Nov 14 10:06:17 2006 -0800 USB: resume_device symbol conflict Several functions in USB core overlap with global functions. The linker appears to do the right thing, but it is bad practice and makes debugging harder. Signed-off-by: Stephen Hemminger Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d8126a0c23b95d8f49a8f4b49191691f9a09ae4a Author: David Brownell Date: Sun Nov 12 18:09:44 2006 -0800 usb/gadget/ether.c minor manycast tweaks Minor cleanup/clarification in the ethernet gadget driver, using standard calls to test for Ethernet multicast and broadcast addresses. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1bb5f66bb3b6c2fd7eec1cdfee9cf3f68ef83487 Author: Alan Stern Date: Mon Nov 6 11:56:13 2006 -0500 USB: Move private hub declarations out of public header file This patch (as809b) moves the declaration of the hub driver's private data structure from hub.h into the hub.c source file. Lots of other files import hub.h; they have no need to know about the details of the hub driver's private data. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b4ee4a2309c9f811457ce44962eed753e451dc11 Author: Jean Delvare Date: Thu Nov 9 22:02:37 2006 +0100 USB: net1080: Fix && typos Fix STATUS_PACKETS_* macros, where "&&" was mistakenly used where "&" should have. Signed-off-by: Jean Delvare Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 692a186c9d5f12d43cef28d40c25247dc4f302f0 Author: Alan Stern Date: Mon Oct 30 17:07:51 2006 -0500 USB: expand autosuspend/autoresume API This patch (as814) adds usb_autopm_set_interface() to the autosuspend API. It also provides convenient wrapper routines, usb_autopm_enable() and usb_autopm_disable(), for drivers that want to specify directly whether autosuspend should be allowed. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit af4f76066d0fcb215ae389b8839d7ae37ce0e28b Author: Alan Stern Date: Mon Oct 30 17:06:45 2006 -0500 USB: autosuspend code consolidation This patch (as813) gathers together common code for USB interface autosuspend/autoresume. It also adds some simple checking at the time an autosuspend request is made, to see whether the request will fail. This way we don't add a workqueue entry when it would end up doing nothing. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 0c1ac4f25f894f9df0ffe9b912c165fb6a185a3c Author: Luiz Fernando N. Capitulino Date: Mon Oct 30 14:53:03 2006 -0300 USB: makes usb_endpoint_* functions inline. We have no benefits of having the usb_endpoint_* functions as functions, but making them inline saves text and data segment sizes: text data bss dec hex filename 14893634 3108770 1108840 19111244 1239d4c vmlinux.func 14893185 3108566 1108840 19110591 1239abf vmlinux.inline This is the result of a 2.6.19-rc3 kernel compiled with GCC 4.1.1 without CONFIG_MODULES, CONFIG_CC_OPTIMIZE_FOR_SIZE, CONFIG_REGPARM options set. USB support is fully enabled (while most of the other drivers are not), and that kernel has most of the USB code ported to use the endpoint functions. That happens because a call to those functions are expensive (in terms of bytes), while the function's size is smaller or have the same 'size' of the call. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 6f7cd44162ca1bffd54f4090e67b9810bacb5d25 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:03:04 2006 -0300 USB: yealink: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 0472074748444529188c77f62f0714f9ff7d7556 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:03:03 2006 -0300 USB: storage: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 4d823dd21d81c29a83a4672ac92e449fc5fa5cca Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:03:02 2006 -0300 USB: usbtest: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit fc6e2544bdb1e7cb9f7ccbb16c268d61743b123c Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:03:01 2006 -0300 USB: usbnet: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 30f36ef922201cd085a598a6274ee18a360635ea Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:03:00 2006 -0300 USB: usbmouse: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit a20c314412b9e9e029a73dbb4dd951e36499eb58 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:59 2006 -0300 USB: usbkbd: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit c5dd1f94246acdf6be6796db47efba8b2a93f93e Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:58 2006 -0300 USB: speedtch: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit a742e5a7fc5b179e2482b85e875fc99192cead74 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:57 2006 -0300 USB: phidgetmotorcontrol: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 8419404949488bba4504005c0d1180fb07bef740 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:56 2006 -0300 USB: phidgetkit: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 66722a194ef96a09ac12d0fe2f9e206f86c29c9f Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:55 2006 -0300 USB: onetouch: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 240661c55646401df64411e04ba5833c411c42bc Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:54 2006 -0300 USB: legousbtower: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 4f1f1ddd73d04e8d41c010934d81122d1a632e4e Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:53 2006 -0300 USB: kobil_sct: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit a7dc218b8f61d58fcf27ee5650e340d7baff74c4 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:52 2006 -0300 USB: idmouse: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 0f12aa03972e797129c79a236d2872f2ee5d25b6 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:51 2006 -0300 USB: hid-core: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 2ae7745beac6de54a47ed19fe441f1d45aa96172 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:50 2006 -0300 USB: ftdi-elan: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 87ad46c94ec74f1750764c12744410ed524f9900 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:49 2006 -0300 USB: devices: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 45aea704d12d05f06b3f82974aa1438460f42398 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:48 2006 -0300 USB: cdc-acm: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit b333d5bfd7d3791f91c678f3f5033c82b1e2b46f Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:47 2006 -0300 USB: cdc_ether: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 16f96376174bfbcb1b40734f83f5701161a5e63b Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:46 2006 -0300 USB: appledisplay: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 377f13bf95b64cf5fb0fad0bf2b94106ad868562 Author: Luiz Fernando N. Capitulino Date: Thu Oct 26 13:02:45 2006 -0300 USB: aircable: Use usb_endpoint_* functions Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 565402baee99096da4d79209e450fe42d379a0ca Author: Alan Stern Date: Fri Oct 27 10:35:01 2006 -0400 USB: OHCI: remove stale testing code from root-hub resume This patch (as811) removes some stale testing code from the root-hub resume routine in ohci-hcd. It also adds a spin_lock_irq() call that inadvertently got left out of an error pathway. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 5d7efe5b3768bf53df9b87380ea68baacf11f933 Author: Eric Sesterhenn Date: Thu Oct 26 21:06:24 2006 +0200 USB: kmemdup() cleanup in drivers/usb/ replace open coded kmemdup() to save some screen space, and allow inlining/not inlining to be triggered by gcc. Signed-off-by: Eric Sesterhenn Signed-off-by: Greg Kroah-Hartman commit 052ac01aeb84d8427ba8ac3d70991ac01b009b59 Author: Alan Stern Date: Fri Oct 27 10:33:11 2006 -0400 USB: OHCI: disable RHSC inside interrupt handler This patch (as808b) moves the Root Hub Status Change interrupt-disable code in ohci-hcd back into the interrupt handler proper, to avoid the chance of adverse interactions with mediocre hardware implementations. It also deletes the root-hub status timer from within the interrupt-enable routine. There's no need to poll for status any more once interrupts are re-enabled. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b1878440d46a0dc357ed5c9687c534e20955e940 Author: Alan Stern Date: Tue Oct 24 12:02:31 2006 -0400 USB: ohci-hcd: fix compiler warning This patch (as806) fixes a compiler warning when ohci-hcd is built with CONFIG_PM turned off. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 93c8bf45e083b89dffe3a708363c15c1b220c723 Author: Alan Stern Date: Wed Oct 18 16:41:51 2006 -0400 USB core: don't match interface descriptors for vendor-specific devices This patch (as804) makes USB driver matching ignore the interface class, subclass, and protocol if the device class is Vendor Specific. Drivers can override this policy by specifying a Vendor ID as part of the match; then vendor-specific matches are allowed. Linus Walleij has reported a problem this patch fixes. When a particular mass-storage device is switched from mass-storage mode to Media Transfer Protocol, the interface class remains set to mass-storage and usb-storage binds to it erroneously, even though the device class changes to Vendor-Specific. This may cause a problem for some drivers until their match records can be updated to include Vendor IDs. But if it does, then those records were broken to begin with. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6d8fc4d28deaf828606c19fb743fbe94aeab4caf Author: Alan Stern Date: Wed Oct 18 12:35:24 2006 -0400 USB HID: Handle STALL on interrupt endpoint The USB HID driver doesn't include any code to handle a STALL on the interrupt endpoint. While this may be uncommon, it does happen sometimes. This patch (as805) adds a fix. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 88fafff9d73c0a506c0b08e7cd637c89d8b604e1 Author: inaky@linux.intel.com Date: Wed Oct 11 20:05:59 2006 -0700 usb hub: fix root hub code so it takes more than 15 devices per root hub Wireless USB Host Controllers accept a large number of devices per host, which shows up as a large number of ports in its root hub. When the number of ports in a hub device goes over 16, the activation of the hub fails with the cryptic message in klogd. hub 2-0:1.0: activate --> -22 Following this further, it was seen that: hub_probe() hub_configure() generates pipe number pseudo allocates buffer 'maxp' bytes in size using usb_maxpacket() The endpoint descriptor for a root hub interrupt endpoint is declared in drivers/usb/core/hcd.c:hs_rh_config_descriptor and declares it to be size two (supporting 15 devices max). hub_activate() usb_hcd_submit_urb() rh_urb_enqueue() urb->pipe is neither int nor ctl, so it errors out rh_queue_status() Returns -EINVAL because the buffer length is smaller than the minimum needed to report all the hub port bits as in accordance with USB2.0[11.12.3]. There has to be trunc((PORTS + 1 + 7) / 8) bytes of space at least. Alan Stern confirmed that the reason for reading maxpktsize and not the right amount is because some hubs are known to return more data and thus cause overflow. So this patch simply changes the code to make the interrupt endpoint's max packet size be at least the minimum required by USB_MAXCHILDREN (instead of a fixed magic number) and add documentation for that. This way we are always ahead of the limit. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 437052516779fea608261a50682b124315f48f01 Author: inaky@linux.intel.com Date: Wed Oct 11 20:05:58 2006 -0700 usb/hub: allow hubs up to 31 children Current Wireless USB host hardware (Intel i1480 for example) allows up to 22 devices to connect, thus bringing up the max number of children in the WUSB Host Controller to 22 'fake' ports. Upcoming hardware might raise that limit. Makes almost no difference to go to 31, as the bit arrays are byte-aligned (plus an extra bit in general), so 22 bits fit in 4 bytes as 31 do. As well, the only other array that depends on USB_MAXCHILDREN is 'struct usb_hub->indicator'. By declaring it 'u8' instead of 'enum hub_led_mode', we reduce the size of each entry from 4 bytes (in i386) to 1, which will add as we when are doubling USB_MAXCHILDREN (with 16 the size of that array is 64 bytes, with 31 would be 128; by using u8 that goes down to 31 bytes). Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 8b7feff881b7e9f065ddd718a6841121207c3c19 Author: Pierre Ossman Date: Tue Nov 14 22:13:13 2006 +0100 mmc: correct request error handling We need to jump to the part of just flushing the request when we cannot claim the bus. Sending commands to a bus we do not own will give unpredictable results. Signed-off-by: Pierre Ossman commit 89b4e133afea9fce333054b94d89953583a55c19 Author: Pierre Ossman Date: Tue Nov 14 22:08:16 2006 +0100 mmc: Flush block queue when removing card After mmc_block's remove function has exited, we must not touch the card structure in any way. This means we not only must remove the gendisk, we must also flush out any remaning requests already queued up. We previously removed the disk, but didn't flush it, causing oops:es when removing a card in the middle of a transfer. Signed-off-by: Pierre Ossman commit 077df884835ebf2b5db16aacd9a24691d89902a0 Author: Pierre Ossman Date: Wed Nov 8 23:06:35 2006 +0100 mmc: sdhci high speed support The SDHCI spec implies that is is incorrect to set a clock frequency above 25 MHz without setting the high speed bit. Signed-off-by: Pierre Ossman commit 7ccd266e676a3f0c6f8f897f58b684cac3dd1650 Author: Pierre Ossman Date: Wed Nov 8 23:03:10 2006 +0100 mmc: Support for high speed SD cards Modern SD cards support a clock speed of 50 MHz. Make sure we test for this capability and do the song and dance required to activate it. Activating high speed support actually modifies the TRAN_SPEED field of the CSD. But as the spec says that the cards must report 50 MHz, we might as well skip re-reading the CSD. Signed-off-by: Pierre Ossman commit 73778120c4088a0a7b59c4c378904f7a230b4820 Author: Pierre Ossman Date: Sun Oct 22 22:13:10 2006 +0200 mmc: Fix mmc_delay() function Several fixes for mmc_delay(): * Repair if-clause that was supposed to detect sub-hz delays. * Change yield() to cond_resched() as yield() no longer has the semantics we desire. * mmc_delay() is used to guarantee protocol delays, so we cannot return early (i.e. use _interruptable). Based on patch by Amol Lad. Signed-off-by: Pierre Ossman commit e45a1bd20fa5b920901879e85cdf5eda21f78d7c Author: Philip Langdale Date: Sun Oct 29 10:14:19 2006 +0100 mmc: Add support for mmc v4 wide-bus modes This change adds support for the mmc4 4-bit wide-bus mode. The mmc4 spec defines 8-bit and 4-bit transfer modes. As we do not support any 8-bit hardware, this patch only adds support for the 4-bit mode, but it can easily be built upon when the time comes. The 4-bit mode is electrically compatible with SD's 4-bit mode but the procedure for turning it on is different. This patch implements only the essential parts of the procedure as defined by the spec. Two additional steps are recommended but not compulsory. I am documenting them here so that there's a record. 1) A bus-test mechanism is implemented using dedicated mmc commands which allow for testing the functionality of the data bus at the electrical level. This is pretty paranoid and they way the commands work is not compatible with the mmc subsystem (they don't set valid CRC values). 2) MMC v4 cards can indicate they would like to draw more than the default amount of current in wide-bus modes. We currently will never switch the card into a higher draw mode. Supposedly, allowing the card to draw more current will let it perform better, but the specs seem to indicate that the card will function correctly without the mode change. Empirical testing supports this interpretation. Signed-off-by: Philip Langdale Signed-off-by: Pierre Ossman commit bce40a36de574376f41f1ff3c4d212a7da2a3c90 Author: Philip Langdale Date: Sat Oct 21 12:35:02 2006 +0200 [PATCH] mmc: Add support for mmc v4 high speed mode This adds support for the high-speed modes defined by mmc v4 (assuming the host controller is up to it). On a TI sdhci controller, it improves read speed from 1.3MBps to 2.3MBps. The TI controller can only go up to 24MHz, but everything helps. Another person has taken this basic patch and used it on a Nokia 770 to get a bigger boost because that controller can run at 48MHZ. Signed-off-by: Philip Langdale Signed-off-by: Pierre Ossman commit 9c9c26188ff9fa5f44ba5a00e01b54b539f83d1d Author: Marcin Juszkiewicz Date: Thu Nov 16 22:39:10 2006 +0100 trivial change for mmc/Kconfig: MMC_PXA does not mean only PXA255 PXA MMC driver supports not only PXA255 but also PXA250 and newer ones Signed-off-by: Marcin Juszkiewicz Signed-off-by: Pierre Ossman commit c5cb431d27237937e1b04a888bf2f8863f06fa2d Author: Juha Yrjola juha.yrjola Date: Sat Nov 11 23:42:39 2006 +0100 Make general code cleanups This patch is part of Juha Yrjola's and Komal Shah's earlier patch to make general code cleanups Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Juha Yrjola solidboot.com> Signed-off-by: Komal Shah yahoo.com> Signed-off-by: Pierre Ossman commit f4204fdf05e70cdbff1f657e3ed78eddd3d6267f Author: Tony Lindgren tony Date: Sat Nov 11 23:41:54 2006 +0100 Add MMC_CAP_{MULTIWRITE,BYTEBLOCK} flags This patch is part of Tony Lindgren's earlier patch to add MMC_CAP_{MULTIWRITE,BYTEBLOCK} flags in omap.c Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Tony Lindgren atomide.com> Signed-off-by: Pierre Ossman commit 81ca70343f4d85637ac19b529dbcccd1db69a41d Author: Juha Yrjola juha.yrjola Date: Sat Nov 11 23:39:20 2006 +0100 Platform device error handling cleanup This patch is part of Juha Yrjola's earlier patch to add platform device error handling and a BUG_ON to verify if host == NULL Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Juha Yrjola solidboot.com> Signed-off-by: Pierre Ossman commit 0551f4df35694c7f89e00da461d7bee9769f016f Author: Juha Yrjola juha.yrjola Date: Sat Nov 11 23:38:36 2006 +0100 Move register definitions away from the header file This patch is part of Juha Yrjola's earlier patch to move register definitions away from the header file and the header file is removed. Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Juha Yrjola solidboot.com> Signed-off-by: Pierre Ossman commit 3342ee8bfa9c4453208766eb8ad61ef65241a091 Author: Juha Yrjola juha.yrjola Date: Sat Nov 11 23:36:52 2006 +0100 Change OMAP_MMC_{READ,WRITE} macros to use the host pointer This patch is part of Juha Yrjola's earlier patch to change OMAP_MMC_{READ,WRITE} macros to use the host pointer Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Juha Yrjola solidboot.com> Signed-off-by: Pierre Ossman commit 89783b1e44d3a6fc63be911468e09494ebbba3e3 Author: Juha Yrjola juha.yrjola Date: Sat Nov 11 23:36:01 2006 +0100 Replace base with virt_base and phys_base This patch is part of Juha Yrjola's earlier patch to replace base with virt_base and phys_base Signed-off-by: Carlos Eduardo Aguiar indt.org.br> Signed-off-by: Juha Yrjola solidboot.com> Signed-off-by: Pierre Ossman commit ab7aefd0b38297e6d2d71f43e8f81f9f4a36cdae Author: David Brownell Date: Sun Nov 12 17:55:30 2006 -0800 mmc: constify mmc_host_ops vectors Now that mmc_host_ops can be constified, update the various drivers to constify those method tables and shrink the writable data segment. Signed-off-by: David Brownell Signed-off-by: Pierre Ossman commit 87598a2bd4c4ed19b91ef163f76297f305007304 Author: Christoph Hellwig Date: Mon Nov 13 20:23:52 2006 +0100 mmc: remove kernel_thread() Replace kernel_thread() with kthread_run()/kthread_stop(). Signed-off-by: Christoph Hellwig Signed-off-by: Pierre Ossman commit bb37b94c68e7b37eecea8576039ae9396ca07839 Author: Jens Axboe Date: Fri Dec 1 10:42:33 2006 +0100 [BLOCK] Cleanup unused variable passing - ->init_queue() does not need the elevator passed in - ->put_request() is a hot path and need not have the queue passed in - cfq_update_io_seektime() does not need cfqd passed in Signed-off-by: Jens Axboe commit 0e75f9063f5c55fb0b0b546a7c356f8ec186825e Author: Mike Christie Date: Fri Dec 1 10:40:55 2006 +0100 [PATCH] block: support larger block pc requests This patch modifies blk_rq_map/unmap_user() and the cdrom and scsi_ioctl.c users so that it supports requests larger than bio by chaining them together. Signed-off-by: Mike Christie Signed-off-by: Jens Axboe commit ad2d7225709b11da47e092634cbdf0591829ae9c Author: Mike Christie Date: Fri Dec 1 10:40:20 2006 +0100 [PATCH] block: kill length alignment test in bio_map_user() The target mode support is mapping in bios using bio_map_user. The current targets do not need their len to be aligned with a queue limit so this check is causing some problems. Note: pointers passed into the kernel are properly aligned by usersapace tgt code so the uaddr check in bio_map_user is ok. The major user, blk_bio_map_user checks for the len before mapping so it is not affected by this patch. And the semi-newly added user blk_rq_map_user_iov has been failing out when the len is not aligned properly so maybe people have been good and not sending misaligned lens or that path is not used very often and this change will not be very dangerous. st and sg do not check the length and we have not seen any problem reports from those wider used paths so this patch should be fairly safe - for mm and wider testing at least. Signed-off-by: Mike Christie Signed-off-by: FUJITA Tomonori Signed-off-by: James Bottomley Signed-off-by: Jens Axboe commit be1c63411addba3ad750eb4fdfc50b97bc82825e Author: Olaf Kirch Date: Fri Dec 1 10:39:12 2006 +0100 [PATCH] blktrace: add timestamp message This adds a new timestamp message to blktrace, giving the timeofday when we starting tracing. This helps user space correlate block trace events with eg an application strace. This requires a (compatible) update to blkparse. The changed blkparse is still able to process traces generated by older kernels, and older versions of blkparse should silently ignore the new records (because they have a pid of 0). Signed-off-by: Olaf Kirch Signed-off-by: Jens Axboe commit bdbf77d6707a52bdeff223d0a60df12d086d21d7 Merge: 0215ffb... d5d06ff... Author: Wim Van Sebroeck Date: Thu Nov 30 20:22:09 2006 +0100 Merge ../linux-2.6-watchdog-mm commit 9e1402ab89623f08c8dc06ec395e3214e1ec7848 Author: George G. Davis Date: Thu Nov 16 14:50:14 2006 -0500 [PATCH] Fix an offset error when reading the CS89x0 ADD_PORT register Fix an offset error when reading the CS89x0 ADD_PORT register. Signed-off-by: George G. Davis Signed-off-by: Jeff Garzik commit 7bd54c863608a460e72aa0e57170cffb6bc62110 Author: Linas Vepstas Date: Fri Nov 17 14:39:40 2006 -0800 [PATCH] spidernet: poor network performance Correct a problem seen on later kernels running the NetPIPE application. Specifically, NetPIPE would begin running very slowly at the 1533 packet size. It was determined that Spidernet slowed with an idle DMA engine. Signed-off-by: James K Lewis Signed-off-by: Linas Vepstas Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 9c434f5e2181097e1d22d9b3e381ca6d693e5188 Author: James K Lewis Date: Fri Nov 17 14:39:36 2006 -0800 [PATCH] Spidernet: remove ETH_ZLEN check in earlier patch In an earlier patch, code was added to pad packets that were less that ETH_ZLEN (60) bytes using the skb_pad function. This has caused hangs when accessing certain NFS mounted file systems. This patch removes the check and solves the NFS problem. The driver, with this patch, has been tested extensively. Please apply. Signed-off-by: James K Lewis Cc: Stephen Hemminger Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 418e8f3d7ef4a30d4b5c84440641c9792a7f83f1 Author: Laurent Riffard Date: Sat Nov 18 12:03:04 2006 +0100 [PATCH] bonding: fix an oops when slave device does not provide get_stats Bonding driver unconditionnaly dereference get_stats function pointer for each of its slave device. This patch - adds a check for NULL dev->get_stats pointer in bond_get_stats - prints a notice when the bonding device enslave a device without get_stats function. Signed-off-by: Laurent Riffard Signed-off-by: Jeff Garzik commit c1cb0b77f905a2f5f297e91fafbe766acc143891 Merge: f2b67c7... a88556a... Author: Jeff Garzik Date: Thu Nov 30 06:01:04 2006 -0500 Merge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes commit f2b67c7945e8d709444884633670fef498218639 Author: Ralf Baechle Date: Wed Nov 29 17:10:38 2006 +0000 [PATCH] drivers/net: SAA9730: Fix build error Confusingly NET_PCI is also set for for non-PCI EISA configurations where building this driver will result in a build error due to a reference to pci_release_regions. While at it, remove the EXPERIMENTAL - in all its uglyness and despite the sincerest attempts of the buggy hardware the driver is known to work. Also limit the driver to the Atlas board - the only known system to ever use the SAA9730 before Phillips ended the short live of the SAA9730. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit a17259a726c4c9806dc99bda5e904727de76b694 Merge: 0215ffb... afdfe89... Author: Jeff Garzik Date: Thu Nov 30 05:20:49 2006 -0500 Merge branch 'tj-upstream-fixes' of git://htj.dyndns.org/libata-tj into tmp commit 6b44d4e69c6144d0df71ab47ec90d2009237d48f Author: Jan Engelhardt Date: Thu Nov 30 05:33:40 2006 +0100 Fix typos in drivers/isdn/hisax/isdnl2.c Changes persistant -> persistent in actual C code. (part 1 changed docs/comments). Compile-tested. Signed-off-by: Jan Engelhardt Signed-off-by: Adrian Bunk commit 03a67a46af8647b2c7825107045ecae641e103d3 Author: Jan Engelhardt Date: Thu Nov 30 05:32:19 2006 +0100 Fix typos in doc and comments Changes persistant -> persistent. www.dictionary.com does not know persistant (with an A), but should it be one of those things you can spell in more than one correct way, let me know. Signed-off-by: Jan Engelhardt Signed-off-by: Adrian Bunk commit 93e06b4140cc018826bce4d97b0bf7c9ba05ae6e Author: Eric Sesterhenn Date: Thu Nov 30 05:29:23 2006 +0100 BUG_ON conversion for fs/aio.c This patch converts a if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit d99c5909859625f3c9c6dfee6caa3b2a7c0ef163 Author: Eric Sesterhenn Date: Thu Nov 30 05:27:38 2006 +0100 BUG_ON conversion for drivers/mmc/omap.c This patch converts a if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 5d9a276a3eb073251737cb92b790bfdb9f0b9139 Author: Eric Sesterhenn Date: Thu Nov 30 05:26:46 2006 +0100 BUG_ON conversion for drivers/media/video/pwc/pwc-if.c This patch converts a if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 0779bf2d2ecc4d9b1e9437ae659f50e6776a7666 Author: Matt LaPlante Date: Thu Nov 30 05:24:39 2006 +0100 Fix misc .c/.h comment typos Fix various .c/.h typos in comments (no code changes). Signed-off-by: Matt LaPlante Signed-off-by: Adrian Bunk commit 3cb2fccc5f48a4d6269dfd00b4db570fca2a04d5 Author: Matt LaPlante Date: Thu Nov 30 05:22:59 2006 +0100 Fix misc Kconfig typos Fix various Kconfig typos. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit 5d3f083d8f897ce2560bbd4dace483d5aa60d623 Author: Matt LaPlante Date: Thu Nov 30 05:21:10 2006 +0100 Fix typos in /Documentation : Misc This patch fixes typos in various Documentation txts. The patch addresses some misc words. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit 4ae0edc21b152c126e4a8c94ad5391f8ea051b31 Author: Matt LaPlante Date: Thu Nov 30 04:58:40 2006 +0100 Fix typos in /Documentation : 'U-Z' This patch fixes typos in various Documentation txts. The patch addresses some +words starting with the letters 'U-Z'. Looks like I made it through the alphabet...just in time to start over again +too! Maybe I can fit more profound fixes into the next round...? Time will +tell. :) Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit fa00e7e152690adc17fdc318e64909d4aff1763e Author: Matt LaPlante Date: Thu Nov 30 04:55:36 2006 +0100 Fix typos in /Documentation : 'T'' This patch fixes typos in various Documentation txts. The patch addresses some +words starting with the letter 'T'. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit 98c4f0c336afe4318c12397bc74910d86ee036a2 Author: Chase Venters Date: Thu Nov 30 04:53:49 2006 +0100 Fix jiffies.h comment jiffies.h includes a comment informing that jiffies_64 must be read with the assistance of the xtime_lock seqlock. The comment text, however, calls jiffies_64 "not volatile", which should probably read "not atomic". Signed-off-by: Chase Venters Signed-off-by: Adrian Bunk commit ce00f85c45d7f8c13cf67d9ca24d0f100f8e9c59 Author: Jim Cromie Date: Thu Nov 30 04:49:44 2006 +0100 tabify MAINTAINERS Signed-off-by: Adrian Bunk commit e20ec9911bfef897459b9f8aeaf6eadb0920299a Author: Jim Cromie Date: Thu Nov 30 04:46:13 2006 +0100 fix spelling error in include/linux/kernel.h Signed-off-by: Adrian Bunk commit 139a7bdc2b9391a4d0362190d9e5625dcf580105 Author: Alexey Dobriyan Date: Thu Nov 30 04:40:22 2006 +0100 mqueue.h: don't include linux/types.h This #include is not required. Signed-off-by: Alexey Dobriyan Signed-off-by: Adrian Bunk commit aa414dff4f7bef29457592414551becdca72dd6b Author: Ralf Baechle Date: Thu Nov 30 01:14:51 2006 +0000 [MIPS] Remove duplicate ISA DMA code for 0 DMA channel case. Signed-off-by: Ralf Baechle commit 0b7883f49810ec91755caa222b3b28f047b8c93b Author: Ralf Baechle Date: Thu Nov 30 01:14:51 2006 +0000 [MIPS] Remove unused definition of cpu_to_lelongp() Signed-off-by: Ralf Baechle commit 4ffd8b3838f22c34b21a25b7612795ca45d14db6 Author: Ralf Baechle Date: Thu Nov 30 01:14:50 2006 +0000 [MIPS] Remove userspace proofing from . Signed-off-by: Ralf Baechle commit e303e088f25dc7d8bafc0d1942314214a3a57b44 Author: Ralf Baechle Date: Thu Nov 30 01:14:50 2006 +0000 [MIPS] Remove old junk left from old atomic_lock. Signed-off-by: Ralf Baechle commit 63dc68a8cf60cb110b147dab1704d990808b39e2 Author: Ralf Baechle Date: Mon Oct 16 01:38:50 2006 +0100 [MIPS] Use conditional traps for BUG_ON on MIPS II and better. This shaves of around 4kB and a few cycles for the average kernel that has CONFIG_BUG enabled. Signed-off-by: Ralf Baechle commit 005985609ff72df3257fde6b29aa9d71342c2a6b Author: Atsushi Nemoto Date: Sun Nov 12 00:10:28 2006 +0900 [MIPS] mips HPT cleanup: make clocksource_mips public Make clocksource_mips public and get rid of mips_hpt_read, mips_hpt_mask. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 187933f23679c413706030aefad9e85e79164c44 Author: Atsushi Nemoto Date: Wed Oct 25 23:57:04 2006 +0900 [MIPS] do_IRQ cleanup Now we have both function and macro version of do_IRQ() and the former is used only by DEC and non-preemptive kernel. This patch makes everyone use the macro version and removes the function version. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 617667ba724d46ffeccb88ee99e1379f29b0bfa7 Author: Ralf Baechle Date: Thu Nov 30 01:14:48 2006 +0000 [MIPS] Avoid dupliate D-cache flush on R400C / R4400 SC and MC variants. Signed-off-by: Ralf Baechle commit 0550d9d13e02b30efa117d47fcadea450bb23d23 Author: Atsushi Nemoto Date: Tue Aug 22 21:15:47 2006 +0900 [MIPS] Remove redundant r4k_blast_icache() calls r4k_flush_cache_all() and r4k_flush_cache_mm() case: these are noop if the CPU did not have dc_aliases. It would mean we do not need to care about icache here. r4k_flush_cache_range case: if r4k_flush_cache_mm() did not need to care about icache, it would be same for this function. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit e56798824456bd907cefe840ca127df0518942e3 Author: Ralf Baechle Date: Thu Nov 30 01:14:47 2006 +0000 [MIPS] Work around bogus gcc warnings. Signed-off-by: Ralf Baechle commit dd6bfd627c4f4df771b9b73e4df75c6c0c177b09 Author: Nicolas Kaiser Date: Tue Nov 7 09:56:24 2006 +0100 [MIPS] Fix double inclusions Signed-off-by: Nicolas Kaiser Signed-off-by: Ralf Baechle commit 1417836e81c0ab8f5a0bfeafa90d3eaa41b2a067 Author: Atsushi Nemoto Date: Tue Nov 14 01:13:18 2006 +0900 [MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq Further incorporation of generic irq framework. Replacing __do_IRQ() by proper flow handler would make the irq handling path a bit simpler and faster. * use generic_handle_irq() instead of __do_IRQ(). * use handle_level_irq for obvious level-type irq chips. * use handle_percpu_irq for irqs marked as IRQ_PER_CPU. * setup .eoi routine for irq chips possibly used with handle_percpu_irq. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 1603b5aca4f15b34848fb5594d0c7b6333b99144 Author: Atsushi Nemoto Date: Thu Nov 2 02:08:36 2006 +0900 [MIPS] IRQ cleanups This is a big irq cleanup patch. * Use set_irq_chip() to register irq_chip. * Initialize .mask, .unmask, .mask_ack field. Functions for these method are already exist in most case. * Do not initialize .startup, .shutdown, .enable, .disable fields if default routines provided by irq_chip_set_defaults() were suitable. * Remove redundant irq_desc initializations. * Remove unnecessary local_irq_save/local_irq_restore, spin_lock. With this cleanup, it would be easy to switch to slightly lightwait irq flow handlers (handle_level_irq(), etc.) instead of __do_IRQ(). Though whole this patch is quite large, changes in each irq_chip are not quite simple. Please review and test on your platform. Thanks. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit c87b6ebaea034c0e0ce86127870cf1511a307b64 Author: Atsushi Nemoto Date: Sat Oct 28 01:14:37 2006 +0900 [MIPS] mips hpt cleanup: get rid of mips_hpt_init Currently nobody outside time.c require mips_hpt_init(). Remove it and call c0_hpt_timer_init() directly if R4k counter was used for timer interrupt. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 0d02f0734f8d2310497fae4f960c978f679f66d9 Author: Yoichi Yuasa Date: Wed Nov 1 18:40:15 2006 +0900 [MIPS] PB1200: Remove duplicate definitions Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 6f2c3fa022312d5381f44359984395761e375f1b Author: Ralf Baechle Date: Thu Nov 30 01:14:45 2006 +0000 [MIPS] Fix alignment hole in struct cache_desc; shrink struct. Signed-off-by: Ralf Baechle commit 714cfe7865e5182a3b25be6a95c0b17aa8e64aa9 Author: Ralf Baechle Date: Mon Oct 23 00:44:02 2006 +0100 [MIPS] Oprofile: kernel support for the R10000. Signed-off-by: Ralf Baechle commit 2472d0b519c9634d89420064315c0926149947aa Author: Ralf Baechle Date: Thu Nov 30 01:14:45 2006 +0000 [MIPS] Remove unused R10000 performance counter definitions. Signed-off-by: Ralf Baechle commit 583bb86fbb9e85287f020fe4eb5352a0ec3c66a3 Author: Nicolas Schichan Date: Wed Oct 18 15:14:55 2006 +0200 [MIPS] Add support for kexec A tiny userland application loading the kernel and invoking kexec_load for mips is available here: http://chac.le-poulpe.net/~nico/kexec/kexec-2006-10-18.tar.gz Signed-off-by: Ralf Baechle commit c237923009da464881d89f4bc27c3b5b1a93d61b Author: Ralf Baechle Date: Thu Nov 30 01:14:44 2006 +0000 [MIPS] Don't print presence of WAIT instruction on bootup. Not useful and quite a big of noise on bootup of large systems. Signed-off-by: Ralf Baechle commit 5b10496b6e6577f65b032a5c4c97d0d3a841273c Author: Atsushi Nemoto Date: Mon Sep 11 17:50:29 2006 +0900 [MIPS] Fast path for rdhwr emulation for TLS Add special short path for emulationg RDHWR which is used to support TLS. Add an extra prologue for cpu_has_vtag_icache case. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 656be92f9ae194ed62bc81310a4589a7cd765f13 Author: Atsushi Nemoto Date: Thu Oct 26 00:08:31 2006 +0900 [MIPS] Load modules to CKSEG0 if CONFIG_BUILD_ELF64=n This is a patch to load 64-bit modules to CKSEG0 so that can be compiled with -msym32 option. This makes each module ~10% smaller. * introduce MODULE_START and MODULE_END * custom module_alloc() * PGD for modules * change XTLB refill handler synthesizer * enable -msym32 for modules again (revert ca78b1a5c6a6e70e052d3ea253828e49b5d07c8a) New XTLB refill handler looks like this: 80000080 dmfc0 k0,C0_BADVADDR 80000084 bltz k0,800000e4 # goto l_module_alloc 80000088 lui k1,0x8046 # %high(pgd_current) 8000008c ld k1,24600(k1) # %low(pgd_current) 80000090 dsrl k0,k0,0x1b # l_vmalloc_done: 80000094 andi k0,k0,0x1ff8 80000098 daddu k1,k1,k0 8000009c dmfc0 k0,C0_BADVADDR 800000a0 ld k1,0(k1) 800000a4 dsrl k0,k0,0x12 800000a8 andi k0,k0,0xff8 800000ac daddu k1,k1,k0 800000b0 dmfc0 k0,C0_XCONTEXT 800000b4 ld k1,0(k1) 800000b8 andi k0,k0,0xff0 800000bc daddu k1,k1,k0 800000c0 ld k0,0(k1) 800000c4 ld k1,8(k1) 800000c8 dsrl k0,k0,0x6 800000cc mtc0 k0,C0_ENTRYLO0 800000d0 dsrl k1,k1,0x6 800000d4 mtc0 k1,C0_ENTRYL01 800000d8 nop 800000dc tlbwr 800000e0 eret 800000e4 dsll k1,k0,0x2 # l_module_alloc: 800000e8 bgez k1,80000008 # goto l_vmalloc 800000ec lui k1,0xc000 800000f0 dsubu k0,k0,k1 800000f4 lui k1,0x8046 # %high(module_pg_dir) 800000f8 beq zero,zero,80000000 800000fc nop 80000000 beq zero,zero,80000090 # goto l_vmalloc_done 80000004 daddiu k1,k1,0x4000 80000008 dsll32 k1,k1,0x0 # l_vmalloc: 8000000c dsubu k0,k0,k1 80000010 beq zero,zero,80000090 # goto l_vmalloc_done 80000014 lui k1,0x8046 # %high(swapper_pg_dir) Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 56ae58333031bb0564c141f955d1e42276cade55 Author: Yoichi Yuasa Date: Sat Oct 14 00:25:04 2006 +0900 [MIPS] Rewrite GALILEO_INL/GALILEO_OUTL to GT_READ/GT_WRITE This patch has rewritten GALILEO_INL/GALILEO_OUTL using GT_READ/GT_WRITE. This patch tested on Cobalt Qube2. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 4e3884fc83f40b5daabceeee3a428a8ebebbbe4a Author: Atsushi Nemoto Date: Sat Oct 21 01:28:26 2006 +0900 [MIPS] Use "long" for 64-bit values on 64-bit kernel. This would get rid of some warnings about "long" vs. "long long". Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit acd86b8622099c3206e0a1665545ae2318089b9c Author: Franck Bui-Huu Date: Thu Oct 19 13:20:05 2006 +0200 [MIPS] Make free_init_pages() arguments to be physical addresses It allows caller of this function to not care about CKSEG0/XKPHYS address mixes. It's now automatically done by free_init_pages(). We can now safely remove hack needed by 64 bit kernels with CONFIG_BUILD_ELF64=n in free_initmem(). Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit a7837b76b6de932c31d0b7c71176ca8d1213a3ce Author: Franck Bui-Huu Date: Thu Oct 19 13:20:04 2006 +0200 [MIPS] setup.c: clean up initrd related code Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit f5bffe3a9bcd6e5319b5fd3a8109625f8638425a Author: Franck Bui-Huu Date: Thu Oct 19 13:20:03 2006 +0200 [MIPS] setup.c: use __pa_symbol() where needed It should fix the broken code in resource_init() too. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 8431fd094d625b94d364fe393076ccef88e6ce18 Author: Franck Bui-Huu Date: Thu Oct 19 13:20:02 2006 +0200 [MIPS] Introduce __pa_symbol() This patch introduces __pa_symbol() macro which should be used to calculate the physical address of kernel symbols. It also relies on RELOC_HIDE() to avoid any compiler's oddities when doing arithmetics on symbols. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit d4df6d4e7a66b7a9bd57f5dc7d80d6b55dc12dbb Author: Franck Bui-Huu Date: Thu Oct 19 13:20:01 2006 +0200 [MIPS] setup.c: get ride of CPHYSADDR() and use new __pa() implementation instead introduced by the previous patch. Indeed this macro can be used now even by the 64 bit kernels with CONFIG_BUILD_ELF64=n config. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 620a4802be8ee7989b1b6684b7198ebae02af854 Author: Franck Bui-Huu Date: Thu Oct 19 13:20:00 2006 +0200 [MIPS] Make __pa() aware of XKPHYS/CKSEG0 address mix for 64 bit kernels During early boot mem init, some configs couldn't use __pa() to convert virtual into physical addresses. Specially for 64 bit kernel cases when CONFIG_BUILD_ELF64=n. This patch make __pa() work for _all_ configs and thus make CPHYSADDR() useless. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 99e3b942c62f42c8d5added63305e12372b06daf Author: Franck Bui-Huu Date: Thu Oct 19 13:19:59 2006 +0200 [MIPS] page.h: remove __pa() usages. __pa() was used by virt_to_page() and virt_addr_valid(). These latter are used when kernel is initialised so __pa() is not appropriate, we use virt_to_phys() instead. Futhermore __pa() is going to take care of CKSEG0/XKPHYS address mix for 64 bit kernels. This makes __pa() more complex than virt_to_phys() and this extra work is not needed by virt_to_page() and virt_addr_valid(). Eventually it consolidates virt_to_phys() prototype by making its argument 'const'. this avoids some warnings that was due to some virt_to_page() usages which pass const pointer. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit f469b2626f48829c06e40ac799c1edf62b12048e Author: Michael S. Tsirkin Date: Wed Nov 29 15:33:10 2006 -0800 IB/ucm: Fix deadlock in cleanup ib_ucm_cleanup_events() holds file_mutex while calling ib_destroy_cm_id(). This can deadlock since ib_destroy_cm_id() flushes event handlers, and ib_ucm_event_handler() needs file_mutex, too. Therefore, drop the file_mutex during the call to ib_destroy_cm_id(). Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit e1444b5a163e81138754cab27c4fa1637b5a2239 Author: Sean Hefty Date: Tue Nov 28 14:57:13 2006 -0800 IB/cm: Fix automatic path migration support The ib_cm_establish() function is replaced with a more generic ib_cm_notify(). This routine is used to notify the CM that failover has occurred, so that future CM messages (LAP, DREQ) reach the remote CM. (Currently, we continue to use the original path) This bumps the userspace CM ABI. New alternate path information is captured when a LAP message is sent or received. This allows QP attributes to be initialized for the user when a new path is loaded after failover occurs. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 2745b5b713bf3457d8977c62dc2b3aa61f4a14b0 Author: Michael S. Tsirkin Date: Thu Nov 16 14:16:47 2006 +0200 IPoIB: Fix skb leak when freeing neighbour ipoib_neigh_free() is sometimes called while neighbour is still alive, so it might still have queued skbs. Fix skb leak in this case. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit d2fcea7d68473b8bb3e0addb4926c87e2217ca83 Author: Vu Pham Date: Tue Nov 21 14:14:10 2006 -0800 IB/srp: Fix memory leak on reconnect SRP reallocates the IU buffers for tx_ring and rx_ring without freeing the old buffers when it reconnects to a target. Fix this by keeping the old IU buffers around. Signed-off-by: Vu Pham Signed-off-by: Roland Dreier commit 04699a1f8634a4e89c71b22050b599c72126fa96 Author: Roland Dreier Date: Wed Nov 29 15:33:09 2006 -0800 RDMA/addr: list_move() cleanups Replace a couple list_del()/list_add() combos with list_move(). Signed-off-by: Roland Dreier commit c78bb8442b14ee6704bdb323111ffa874d4bfdaa Author: Krishna Kumar Date: Fri Nov 24 16:02:34 2006 +0530 RDMA/addr: Fix some cancellation problems in process_req() Fix following problems in process_req() relating to cancellation: - Function is wrongly doing another addr_remote() when cancelled, which is not required. - Make failure reporting immediate by using time_after_eq(). - On cancellation, -ETIMEDOUT was returned to the callback routine instead of the more appropriate -ECANCELLED (users getting notified may want to print/return this status, eg ucma_event_handler). Signed-off-by: Krishna Kumar Signed-off-by: Roland Dreier commit c9edea298e52faeb0d4ae875cb712a5d69ba1966 Author: Krishna Kumar Date: Fri Nov 24 16:03:48 2006 +0530 RDMA/amso1100: Prevent deadlock in destroy QP It is possible to swap the CQs used for send_cq and recv_cq when creating two different QPs. If these two QPs are then destroyed at the same time, an AB-BA deadlock can occur because the CQ locks are taken our of order. Fix this by always taking CQ locks in a fixed order. Signed-off-by: Krishna Kumar Signed-off-by: Roland Dreier commit 7013696a5f5ccd0d847d5e8b841d0b0b312277c8 Author: Jack Morgenstein Date: Sun Nov 26 09:10:19 2006 +0200 IB/mthca: Fix initial SRQ logsize for mem-free HCAs When initializing an mthca SRQ, the log_srq_size field should be the log of the number of SRQ WQEs, not the log of the number of bytes in the SRQ. This affects only mthca drivers for memfree HCAs which set the initial srq wqe counter (in the SW2HW transition) to a non-zero value. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit 2771e9ed4702e46c3f4c305eb2e047c251c2ad2b Author: Hoang-Nam Nguyen Date: Mon Nov 20 23:54:12 2006 +0100 IB/ehca: Use WQE offset instead of WQE addr for pending work reqs This is a patch for ehca to fix a bug in prepare_sqe_to_rts(), which used WQE address to iterate pending work requests. This might cause an access violation since the queue pages can not be assumed to follow each other consecutively. Thus, this patch introduces a few queue functions to determine WQE offset based on its address and uses WQE offset to iterate the pending work requests. Signed-off-by: Hoang-Nam Nguyen Signed-off-by: Roland Dreier commit 9ab1ffa8775d9c677b1301cccce8a7d91e5163d0 Author: Krishna Kumar Date: Thu Nov 9 09:30:48 2006 +0530 RDMA/iwcm: Fix comment for iwcm_deref_id() to match code In iwcm_deref_id(), the comment says : "If the last reference is being removed and iw_destroy_cm_id is waiting, wake up the waiting thread". The second part of the comment, "and iw_destroy_cm_id is waiting," is wrong, since this function either wakes the waiter already waiting in iwcm_deref_id, or enables it (so that when wait_for_completion() is performed later, it will immediately return). Signed-off-by: Krishna Kumar Acked-by: Steve Wise Signed-off-by: Roland Dreier commit 715a588f420936ecdb813c4fcd40dff7a16b1638 Author: Krishna Kumar Date: Thu Nov 9 09:30:45 2006 +0530 RDMA/iwcm: Remove unnecessary function argument Remove unnecessary cm_id_priv argument to copy_private_data(), and change text to reflect the code. Fix couple of typos in comments. Signed-off-by: Krishna Kumar Acked-by: Steve Wise Signed-off-by: Roland Dreier commit 13fccdb380f88770f05b922c273d907aecda7c12 Author: Krishna Kumar Date: Thu Nov 9 09:30:43 2006 +0530 RDMA/iwcm: Remove unnecessary initializations Signed-off-by: Krishna Kumar Acked-by: Steve Wise Signed-off-by: Roland Dreier commit 83b96586239bf6c719ff640341e1cf83e4a7c046 Author: Krishna Kumar Date: Thu Nov 9 09:30:41 2006 +0530 RDMA/iwcm: Fix memory leak If we get IW_CM_EVENT_CONNECT_REQUEST message and encounter an error (not in the LISTEN state, cannot create an id, cannot alloc work_entry, etc), then the memory allocated by cm_event_handler() in the event->private_data gets leaked. Since cm_work_handler has already put the event on the work_free_list, this allocated memory is leaked. High backlog value can allow DoS attacks. Signed-off-by: Krishna Kumar Acked-by: Steve Wise Signed-off-by: Roland Dreier commit 33ba0fa9f315ce32fbb86fa671c131f5355b52a1 Author: Krishna Kumar Date: Thu Nov 9 09:30:34 2006 +0530 RDMA/iwcm: Fix memory corruption bug in cm_work_handler() Possible memory corruption scenario: after putting the work entry back on the work_free_list, we call process_event() which dereferences work->event, which could have been modified to another value meanwhile. Signed-off-by: Krishna Kumar Acked-by: Steve Wise Signed-off-by: Roland Dreier commit e54f81889cd5228e7087637c377d76301c7c5663 Author: Roland Dreier Date: Wed Nov 29 15:33:07 2006 -0800 IB: Convert kmem_cache_t -> struct kmem_cache Signed-off-by: Roland Dreier commit 53533e16b1d94ff71cb013497938976906d9d504 Author: Roland Dreier Date: Wed Nov 29 15:33:07 2006 -0800 IB/ipath: Fix typo in pma_counter_select subscript The array has only 5 entries, so [5] should have been [4]. Signed-off-by: Roland Dreier commit 29666128a22ddc78b3e393674ef69462835db43f Author: Roland Dreier Date: Wed Nov 29 15:33:07 2006 -0800 RDMA/amso1100: Fix section mismatches The amso1100 driver was missing a couple of __devinit/__devexit annotations for init/cleanup functions that are called from __devinit/__devexit functions. Reported by Randy Dunlap . Signed-off-by: Roland Dreier commit f4f3d0f0ece2527184b6c91afa1196a27a5bfaf5 Author: Roland Dreier Date: Wed Nov 29 15:33:06 2006 -0800 IB/mthca: Fix section mismatches Commit b3b30f5e ("IB/mthca: Recover from catastrophic errors") introduced some section mismatch breakage, because the error recovery code tears down and reinitializes the device, which calls into lots of code originally marked __devinit and __devexit from regular .text. Fix this by getting rid of these now-incorrect section markers. Reported by Randy Dunlap . Signed-off-by: Roland Dreier commit 3c8edf0eca2e47340c960b2f27c659c097118ffe Author: Arne Redlich Date: Wed Nov 15 12:43:00 2006 +0100 IB/srp: Increase supported CDB size Set the Scsi_Host's max_cmd_len from 12 (default) to 16 for SRP. Otherwise scsi_dispatch_cmd() won't pass down certain commands such as READ CAPACITY 16, required for supporting disks > 2TB. Signed-off-by: Arne Redlich Signed-off-by: Roland Dreier commit e31353eaeca736981ec13b46089d30147342b28b Author: Dotan Barak Date: Tue Oct 24 13:35:27 2006 -0700 RDMA/cm: Remove setting local write as part of QP access flags The qp_access_flags are for remote access permissions only, so IB_ACCESS_LOCAL_WRITE is an invalid value. Remove it from the values set by cm_init_qp_init_attr() and cma_init_ib_qp(). Signed-off-by: Dotan Barak Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit bed8bdfddd851657cf9e5fd16bb44abb02ae7f42 Author: Eric Sesterhenn Date: Mon Oct 23 22:17:21 2006 +0200 IB: kmemdup() cleanup Replace open coded kmemdup() to save some screen space, and allow inlining/not inlining to be triggered by gcc. Signed-off-by: Eric Sesterhenn Signed-off-by: Roland Dreier commit a1a733f65b091fdad3d0783e648c92b491933ab6 Author: Krishna Kumar Date: Tue Oct 17 10:09:11 2006 +0530 RDMA/cma: Rewrite cma_req_handler() to encapsulate common code Rewrite cma_req_handler error handling case to encapsulate common code. Signed-off-by: Krishna Kumar Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit f115db4803effd8207c3169590fb3f13336a4093 Author: Krishna Kumar Date: Tue Oct 17 10:09:09 2006 +0530 RDMA/addr: Use time_after_eq() instead of time_after() in queue_req() In queue_req(), use time_after_eq() instead of time_after() for following reasons : - Improves insert time if multiple entries with same time are present. - set_timeout need not be called if entry with same time is added to the list (and that happens to be the entry with the smallest time), saving atomic/locking operations. - Earlier entries with same time are deleted first (fifo). Signed-off-by: Krishna Kumar Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit e4022274cf8df1f78f9e20ba7e199a9edf655422 Author: Krishna Kumar Date: Mon Oct 16 10:09:08 2006 +0530 RDMA/cma: Remove redundant check in cma_add_one Remove redundant check of node_guid in cma_add_one(). Signed-off-by: Krishna Kumar Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit e82153b54d75af31d5d4a84efe441e5719f34cfc Author: Krishna Kumar Date: Mon Oct 16 10:09:01 2006 +0530 RDMA/cma: Optimize cma_bind_loopback() to check for empty list Optimize to test for an empty list first. This ends up simplifying the code too. Signed-off-by: Krishna Kumar Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit afdfe899e6420eac6c5eb3bc8c89456dff38d40e Author: Tejun Heo Date: Wed Nov 29 11:26:47 2006 +0900 [PATCH] libata: add missing sht->slave_destroy Many LLDs are missing sht->slave_destroy. The method is mandatory to support device warm unplugging (echo 1 > /sys/.../delete). Without it, libata might access released scsi device. Signed-off-by: Tejun Heo commit 41669553353554211310cdb23079d58af1fda41e Author: Tejun Heo Date: Wed Nov 29 11:33:14 2006 +0900 [PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllers JMicron AHCI controllers set PORT_IRQ_IF_ERR on device errors. The IRQ status bit indicates interface error or protocol mismatch and ahci driver interprets it into AC_ERR_ATA_BUS. So, whenever an ATAPI device raises check condition, ahci interprets it as ATA bus error and thus resets it which, in turn, raises check condition thus creating a reset loop and rendering the device unuseable. This patch makes JMB controllers ignore PORT_IRQ_IF_ERR when interpreting error condition. Signed-off-by: Tejun Heo Cc: Justin Tsai commit a88556a4b24baff99f5d2a2a05202c4aca44ea05 Author: John W. Linville Date: Tue Nov 28 14:16:37 2006 -0500 Revert "[PATCH] zd1211rw: Removed unneeded packed attributes" This reverts commit 4e1bbd846d00a245dcf78b6b331d8a9afed8e6d7. Quoth Daniel Drake : "A user reported that commit 4e1bbd846d00a245dcf78b6b331d8a9afed8e6d7 (Remove unneeded packed attributes) breaks the zd1211rw driver on ARM." Signed-off-by: John W. Linville commit a68077defb3337342981a0d3a4df3380496a8a87 Author: Ulrich Kunitz Date: Wed Nov 22 00:06:06 2006 +0000 [PATCH] zd1211rw: Fix of a locking bug This patch fixes the bug as reported in the kernel bug tracker under the id 7244. The bug was simply that the interrupt lock has been locked outside an interrupt without blocking the interrupt. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit a3df3b6f2e37474cdb8b56d55d31be41c22f9b18 Author: Michael Buesch Date: Mon Nov 27 14:37:21 2006 -0600 [PATCH] softmac: remove netif_tx_disable when scanning In the scan section of ieee80211softmac, network transmits are disabled. When SoftMAC re-enables transmits, it may override the wishes of a driver that may have very good reasons for disabling transmits. At least one failure in bcm43xx can be traced to this problem. In addition, several unexplained problems may arise from the unexpected enabling of transmits. Note that making this change introduces a new bug that would allow transmits for the current session to be transmitted on the wrong channel; however, the new bug is much less severe than the one being fixed, as the new one only leads to a few retransmits, whereas the old one can bring the interface down. A fix that will not introduce new bugs is being investigated; however, the current, more serious one should be fixed now. Signed-off-by: Michael Buesch Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit b94c7e677b9d28bd3f9ba4a70df6bfa7942867ca Author: Chad Sellers Date: Mon Nov 6 12:38:18 2006 -0500 SELinux: validate kernel object classes and permissions This is a new object class and permission validation scheme that validates against the defined kernel headers. This scheme allows extra classes and permissions that do not conflict with the kernel definitions to be added to the policy. This validation is now done for all policy loads, not just subsequent loads after the first policy load. The implementation walks the three structrures containing the defined object class and permission values and ensures their values are the same in the policy being loaded. This includes verifying the object classes themselves, the permissions they contain, and the permissions they inherit from commons. Classes or permissions that are present in the kernel but missing from the policy cause a warning (printed to KERN_INFO) to be printed, but do not stop the policy from loading, emulating current behavior. Any other inconsistencies cause the load to fail. Signed-off-by: Chad Sellers Acked-by: Stephen Smalley Signed-off-by: James Morris commit bb242497474da317a7169cc939c741ccf2e79e8c Author: Chad Sellers Date: Mon Nov 6 12:38:17 2006 -0500 SELinux: ensure keys constant in hashtab_search Makes the key argument passed into hashtab_search and all the functions it calls constant. These functions include hash table function pointers hash_value and keycmp. The only implementations of these currently are symhash and symcmp, which do not modify the key. The key parameter should never be changed by any of these, so it should be const. This is necessary to allow calling these functions with keys found in kernel object class and permission definitions. Signed-off-by: Chad Sellers Acked-by: Stephen Smalley Signed-off-by: James Morris commit 5c45899879e8caadb78f04c9c639f4c2025b9f00 Author: Chad Sellers Date: Mon Nov 6 12:38:16 2006 -0500 SELinux: export object class and permission definitions Moves the definition of the 3 structs containing object class and permission definitions from avc.c to avc_ss.h so that the security server can access them for validation on policy load. This also adds a new struct type, defined_classes_perms_t, suitable for allowing the security server to access these data structures from the avc. Signed-off-by: Chad Sellers Acked-by: Stephen Smalley Signed-off-by: James Morris commit 5a64d4438ed1e759ccd30d9e90842bf360f19298 Author: Chad Sellers Date: Mon Nov 6 12:38:15 2006 -0500 SELinux: remove current object class and permission validation mechanism Removes the current SELinux object class and permission validation code, as the current code makes it impossible to change or remove object classes and permissions on a running system. Additionally, the current code does not actually validate that the classes and permissions are correct, but instead merely validates that they do not change between policy reloads. Signed-off-by: Chad Sellers Acked-by: Stephen Smalley Signed-off-by: James Morris commit d5d06ff7f181c06ef8c94b353ae3fef8f06b3085 Author: Wim Van Sebroeck Date: Fri Nov 17 23:50:06 2006 +0100 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 4 a number of small patches: - include notifier.h include file - re-arrange prototype functions - remove =0 initializations - change printk logging levels to what's used in other drivers - /dev/watchdog is a VFS so use nonseekable_open - Style: Instead of "if (constant op function_or_variable)" we prefer "if (function_or_variable op constant)" - arg is a __user pointer - use MAX_TIMEOUT_SECONDS instead of 32 in WDIOC_SETTIMEOUT Signed-off-by: Randy Dunlap Signed-off-by: Wim Van Sebroeck commit 414a675964e5636b53b37827b646138f166507d3 Author: Wim Van Sebroeck Date: Fri Nov 17 23:36:08 2006 +0100 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 3 Move start and stop code into seperate functions Signed-off-by: Wim Van Sebroeck commit 97846e3ccbcbcc966e23a91b0d190efd1f889c9b Author: Wim Van Sebroeck Date: Fri Nov 17 23:15:48 2006 +0100 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 2 Reorganize source code so that it is structured as follows: - Function prototypes - Local variables - Module arguments - Interrupt handler - Watchdog functions - /dev/watchdog operations - Shutdown notifier - Kernel interfaces - Init & exit procedures - Device driver init & exit Signed-off-by: Wim Van Sebroeck commit cd57eeab7c4c108ce6e84545bdf37ae91b930781 Author: Wim Van Sebroeck Date: Fri Nov 17 21:51:35 2006 +0100 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 1 Locate parameter descriptions close to parameter definition - not in bottom of file. Signed-off-by: Sam Ravnborg Signed-off-by: Wim Van Sebroeck commit 825d3748c1b5f9272e4f9769f1c2da85174ece28 Author: Thomas Koeller Date: Mon Aug 14 21:55:29 2006 +0200 [WATCHDOG] MIPS RM9000 on-chip watchdog device This is a driver for the on-chip watchdog device found on some MIPS RM9000 processors. Signed-off-by: Thomas Koeller Signed-off-by: Wim Van Sebroeck commit 8d6286fdfd290589f8446ec1503702227263dcfd Author: Steve French Date: Thu Nov 16 22:48:25 2006 +0000 [CIFS] Fix timezone handling on stat to os/2 We were adjusting for timezone on readdir but not on stat Signed-off-by: Steve French commit 31ec35d6c81175016a6372571eab23b6bd40b406 Author: Steve French Date: Thu Nov 16 20:54:20 2006 +0000 [CIFS] Incorrect hardlink count when original file is cached (oplocked) Fixes Samba bug 2823 In this case hardlink count is stale for one of the two inodes (ie the original file) until it is closed - since revalidate does not go to server while file is cached locally. Signed-off-by: Steve French commit efa53ebe0d2f50bf342eb1976824f59bba9941eb Author: Zhu Yi Date: Mon Nov 13 11:32:50 2006 +0800 [PATCH] ieee80211: Fix kernel panic when QoS is enabled The 802.11 header length is affected by the wireless mode (WDS or not) and type (QoS or not). We should use the variable hdr_len instead of the hard coded IEEE80211_3ADDR_LEN, otherwise we may touch invalid memory. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit e033351d5359f348d2913eb83fbb37023d8f21af Author: Wim Van Sebroeck Date: Sun Nov 12 18:05:09 2006 +0100 [WATCHDOG] Add iTCO vendor specific support Add vendor specific support to the intel TCO timer based watchdog devices. At this moment we only have additional support for some SuperMicro Inc. motherboards. Signed-off-by: Robert Seretny Signed-off-by: Wim Van Sebroeck commit 58c6570add83e30c0905885171fbffc134441165 Author: Akinobu Mita Date: Sun Oct 29 03:43:19 2006 +0900 [WATCHDOG] sc1200wdt.c pnp unregister fix. If no devices found or invalid parameter is specified, scl200wdt_pnp_driver is left unregistered. It breaks global list of pnp drivers. Signed-off-by: Akinobu Mita Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit fd0c5eca447254682a8372bc73b6bdcc16bf6777 Author: Andrew Morton Date: Fri Oct 27 17:20:42 2006 -0700 [WATCHDOG] config.h removal config.h got removed Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 0835caa2bf1933d5f41fd98e469107f4c00d547f Author: Wim Van Sebroeck Date: Mon Oct 23 18:21:52 2006 +0200 [WATCHDOG] NS pc87413-wdt Watchdog driver - fixes Some small fixes: * the status should return 0 and not 1 (1 means: * wdt_io is not a module-param, io is. Signed-off-by: Wim Van Sebroeck commit 00b3b3e6605d7446cd410c7c9bb98f5336a15ca1 Author: Sven Anders & Marcus Junker Date: Mon Oct 16 18:18:09 2006 +0200 [WATCHDOG] NS pc87413-wdt Watchdog driver v1.1 Change the driver for proper spin_locking, remove the TEMP_MINOR stuff, make sure the device works as a Virtual File System that is non_seekable, ... Signed-off-by: Sven Anders Signed-off-by: Marcus Junker Signed-off-by: Wim Van Sebroeck commit 789fc0adbaf3a3ca95a3894aedacfc01863e8ae3 Author: Sven Anders & Marcus Junker Date: Thu Aug 24 17:11:50 2006 +0200 [WATCHDOG] NS pc87413-wdt Watchdog driver New watchdog driver for the NS pc87413-wdt Watchdog Timer. Signed-off-by: Sven Anders Signed-off-by: Marcus Junker Signed-off-by: Wim Van Sebroeck