aboutsummaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2007-07-10[PATCH] use list_for_each_entry() for iteration in Prism 54 driverMatthias Kaehlcke
Use list_for_each_entry() instead of manual iteration and substitute a list_for_each_safe() loop with list_for_each_entry_safe() Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Cc: Christoph Hellwig <hch@lst.de> Acked-by: Luis R. Rodriguez <mcgrof@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] libertas: fix disabling WPADan Williams
Found by Guillaume LECERF <glecerf@gmail.com> Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] drivers/net/wireless/libertas/wext.c: remove dead codeAdrian Bunk
This patch removes dead code introduced by commit 90a42210f275e1f828eb6c08bf8252c2d6a774e0 and spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] zd1211rw: Defer firmware load until first ifupDaniel Drake
While playing with the firmware a while back, I discovered a way to access the device's entire address space before the firmware has been loaded. Previously we were loading the firmware early on (during probe) so that we could read the MAC address from the EEPROM and register a netdevice. Now that we can read the EEPROM without having firmware, we can defer firmware loading until later while still reading the MAC address early on. This has the advantage that zd1211rw can now be built into the kernel -- previously if this was the case, zd1211rw would be loaded before the filesystem is available and firmware loading would fail. Firmware load and other device initialization operations now happen the first time the interface is brought up. Some architectural changes were needed: handling of the is_zd1211b flag was moved into the zd_usb structure, MAC address handling was obviously changed, and a preinit_hw stage was added (the order is now: init, preinit_hw, init_hw). Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] zd1211rw: Add ID for Buffalo WLI-U2-KG54LDaniel Drake
Tested by Zen Kato zd1211b chip 0411:00da v4810 high 00-16-01 AL2230S_RF pa0 g--N- Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] zd1211rw: Detect more AL2230S radiosDaniel Drake
Zen Kato has a device which reports the 0xa RF type. The vendor driver treats this as AL2230S, the same as devices with the AL2230S bit in the POD. Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] zd1211rw: Allow channels 1-11 for unrecognised regulatory domainsDaniel Drake
Zen Kato's device has a regulatory domain value of 0x49, which is not an IEEE 802.11 code and is not even identified in the vendor driver. Recent versions of the vendor driver don't even look at the regdomain value any more, and just allow channels 1-11 everywhere. This patch brings us more in line with that behaviour, by allowing channels 1-11 for regdomains which we don't know about. Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] airo: start with radio offMichal Schmidt
Don't turn the radio on until the interface is up. This saves some power in case the driver is loaded but the card is not used. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] airo: simpler calling convention for enable_MAC()Michal Schmidt
Callers of enable_MAC() shouldn't have to worry about the bits in the response's status word (and most of them don't). The return value is sufficient information. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] airo: fix a race causing initialization failuresMichal Schmidt
Matteo Croce reported Aironet initialization failures. They were caused by a race in airo. airo finds a free interface name, then initializes the card and finally registers the interface. Another device may get the same name in the meantime. The reason airo gets its name early is to use it in informative printks and to name the resources it requests. The printks will be just fine without the interface name and the resources can use the driver's name - that's what other network drivers do anyway. One of the talkative functions is setup_card(). It is called once before registration and can be called later again. Let's have an empty dev->name during the first call, so it doesn't print the ugly "airo(eth%d)" message. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] airo: delay some initialization until the netdev is upMichal Schmidt
airo's kernel thread and the IRQ handler are needed only when the interface is up. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] airo: disable the PCI device when unloading moduleMichal Schmidt
Fix an assymetry between pci_{enable,disable}_device. airo did not disable the PCI device when unloading the module. This caused suspend failures after modprobe -r airo && modprobe airo. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] ipw2100: RF kill switch timer power saveStephen Hemminger
Similar patch to ipw2200. Round the timer used for RF kill switch off to 1 second boundary to save power. Build tested only, don't have this hardware. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] ipw2200: rf kill switch polling power savingStephen Hemminger
Make the ipw2200 driver polling of rf kill switch occur on second boundaries to reduce power. Making all the wakeup's in the system occur together reduces power, and keeps CPU in idle longer. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] rtl8187: fix endianness issue in rtl8225 register writingMichael Wu
I failed to notice that a u16 was being passed to the hardware. This fixes it. Thanks to Kasper F. Brandt for finding this! Signed-off-by: Michael Wu <flamingice@sourmilk.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] libertas: fix use-after-free in rx pathHolger Schurig
... by removing an ill-conceived, useless line. Discovered by coverity. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-10[PATCH] WIRELESS: Remove clearly obsolete libertas/version.h file.Robert P. J. Day
Remove a header file that was ostensibly "removed" before, in commit 3ce40232. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-07-08Ethernet driver for EISA only SNI RM200/RM400 machinesThomas Bogendoerfer
Changes to last version: - spelling fix - cleaned up probe code Thomas. Ethernet driver for EISA only SNI RM200/RM400 machines Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08Extract chip specific code out of lasi_82596.cThomas Bogendoerfer
Changes to last version: - use netdev_alloc_skb - make init_rx_bufs just fail and not panic, if skb alloc fails - don/t free_irq, if request_irq failed Thomas. Extracted chip specific code out of lasi_82596.c and placed into a lib82596.c to make it usable for other 82596 drivers Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08ehea: Whitespace cleanupJan-Bernd Themann
This patch fixes several whitespace issues. Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08pasemi_mac: Fix TX interrupt thresholdOlof Johansson
It was mistakenly set to interrupt on the second packet instead of first, causing some interesting latency behaviour. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08spidernet: Replace literal with constLinas Vepstas
Replace literal with const; add bit definitions. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08r8169: perform RX config change after mac filteringFrancois Romieu
It does not really make sense to update the RX config register before the mac filtering registers. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: mac address change supportFrancois Romieu
Merged from Realtek's r8169-6.001 driver. I have added some locking to protect against the arp monitoring timer in the bonding driver. Accessing the configuration registers is otherwise performed under RTNL locking. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: display some extra debug information during startupFrancois Romieu
It does not cost much and it will ease the identification of (so far) unknown devices. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: add endianess annotations to [RT]xDescRolf Eike Beer
Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: align the IP header when there is no DMA constraintFrancois Romieu
Align the IP header when the chipset can DMA at any location (plain 0x8169). Otherwise (0x8136/0x8168) obey the constraint imposed by the hardware. This patch complements the previous alignment rework done for copybreak. Original idea from Philip Craig <philipc@snapgear.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Philip Craig <philipc@snapgear.com> Cc: Mike Isely <isely@pobox.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: add bit description for the TxPoll registerFrancois Romieu
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: cleanupFrancois Romieu
No functionnal change: - trim the old history log - whitespace/indent/case police - unsigned int where signedness does not matter - removal of obsolete assert - needless cast from void * (dev_instance) - remove dead code once related to power management - use netdev_alloc_skb. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Stephen Hemminger <shemminger@linux-foundation.org> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: remove the media optionFrancois Romieu
It has been documented as deprecated: - in MODULE_PARM_DESC since may 2005 ; - at the top of the source file and in printk since june 2004. Good bye. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: small 8101 commentFrancois Romieu
Extracted from version 1.001.00 of Realtek's r8101. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: confusion between hardware and IP header alignmentFrancois Romieu
The rx copybreak part is straightforward. The align field in struct rtl_cfg_info is related to the alignment requirements of the DMA operation. Its value is set at 2 to limit the scale of possible regression but my old v1.21 8169 datasheet claims a 8 bytes requirements (which never appeared in the driver, of course) and the 8101/8168 go with a plain 8 bytes alignment. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: merge with version 8.001.00 of Realtek's r8168 driverFrancois Romieu
This one includes: - more tweaks to rtl_hw_start_8168 - a work around for a Rx FiFO overflow issue on the 8168Bb - rtl8169_{intr_mask/napi_event} are replaced with per-device fields, namely tp->{intr/napi}_event - rtl_cfg_info is converted to C99 for readability but the values are not changed for the 8169/8110 and the 8101 Includes ChipCmd fix from Bernhard Walle <bwalle@suse.de> (2007/02/24). Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: merge with version 6.001.00 of Realtek's r8169 driverFrancois Romieu
- new identifier for the 8110SCe - the PCI latency timer is set unconditionally. This part is identical in Realtek's r8168 (8.001.00) and r8101 (1.001.00) - initialization of the cache line size register is for the 8169s only - more magic in rtl_hw_start_8169 - it is not possible to factor out the setting of the the irq event mask with the 8168 and the 8101 any more. Pushed it into the hw_start handler. - rtl_set_rx_tx_config_registers() and write to the ChipCmd register are issued identically for the whole 8169/8110 family: the 8110SCd/8110SCe are handled the same way - work around for AMD platform. Some registers definitions in Realtek's driver are let aside for later. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: prettify mac_versionFrancois Romieu
...still a bit yucky though. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: populate the hw_start handler for the 8110Francois Romieu
Same thing as the previous change for rtl_hw_start_8168. The 8101 related code in rtl_hw_start_8169 (see RTL_GIGA_MAC_VER_13) goes away. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: populate the hw_start handler for the 8168Francois Romieu
rtl_hw_start_8168 inherits the content of rtl_hw_start_8169 minus the code which depends on RTL_GIGA_MAC_VER_XY (XY != {11/12}). Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: add helpers for per-device hw_start handlerFrancois Romieu
They aim to limit the amount of moved code when the hw_start handler gets more specialized. No functional change. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: add hooks for per-device hw_start handlerFrancois Romieu
Rationale: rtl8169_hw_start will not help maintaining an unified driver for different chipsets but people at Realtek are probably too polite to say it distinctly. Let's add the hook and keep hw_start handler unchanged. As can be seen from the content of rtl8169_pci_tbl, the RTL_CFG_1 entry in rtl_cfg_info was unused. I recycled it for the 0x8168. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: Rx path updateStephen Hemminger
- pci_dma_sync_single_for_cpu is not needed for a single large packet - remove the function pointer to help gcc optimizing the inline pci_dma functions. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: kill eth_copy_and_sum()David S. Miller
It hasn't "summed" anything in over 7 years, and it's just a straight mempcy ala skb_copy_to_linear_data() so just get rid of it. Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: de-obfuscate modulo arithmeticFrancois Romieu
The former style suggests a modulo arithmetic misuse but the expression should never be < 0. Even if it does, the driver will simply loop longer than expected (not that the remaining parts of the system will necessarily appreciate it...). Let's warn the user when something goes wrong and try to go over it. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08r8169: use netdev_alloc_skbStephen Hemminger
Use netdev_alloc_skb and remove the useless sk_buff * argument of rtl8169_alloc_rx_skb. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Cc: Edward Hsu <edward_hsu@realtek.com.tw>
2007-07-08sky2: version 1.15Stephen Hemminger
New version because of new chip support. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: Yukon Extreme (88e8071) support.Stephen Hemminger
Enable support for Yukon EX chipset (88e8071). Most of changes are related to new commands to chip for transmit, and change in status and checksumming. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: GPIO registerStephen Hemminger
The General Purpose I/O register is yet another hardware workaround catchall. Enable workaround that vendor driver does to stay but for bug compatiable. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: enable clocks before probeStephen Hemminger
Catch-22: On Yukon EX (88E8071) need to have internal clocks enabled before reading chip id. It is harmless on other chips. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: rename BMU registerStephen Hemminger
This register is more of a test and control register on Yukon2. So rename it to Q_TEST and give some bit definitions. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: Add PCI device specfic register 4 & 5Stephen Hemminger
Need to setup more PCI control control registers are on Yukon EX. Some of these also exist on Yukon EC-U as well. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-08sky2: avoid reserved regions on ethtool reg dumpStephen Hemminger
On Yukon EX reading some of the undocumented places in the memory space will cause a hang. Since they don't provide useful information, just skip the reserved areas. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>