Commit Graph

3956 Commits

Author SHA1 Message Date
Linus Torvalds
b5bf28cde8 Revert "e1000: fix shared interrupt warning message"
This reverts commit d2ed16356f.

As Thomas Gleixner reports:
  "e1000 is not working anymore. ifup fails permanentely.
    ADDRCONF(NETDEV_UP): eth0: link is not ready
   nothing else"

The broken commit was identified with "git bisect".

Auke Kok says:
  "I think we need to drop this now.  The report that says that this
   *fixes* something might have been on regular interrupts only.  I
   currently suspect that it breaks all MSI interrupts, which would make
   sense if I look a the code.  Very bad indeed."

Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
Acked-by: Auke Kok <auke-jan.h.kok@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-21 11:21:44 -08:00
Linus Torvalds
91aa69315e 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: (21 commits)
  natsemi: Support Aculab E1/T1 PMXc cPCI carrier cards
  natsemi: Add support for using MII port with no PHY
  skge: race with workq and RTNL
  Replace local random function with random32()
  s2io: RTNL and flush_scheduled_work deadlock
  8139too: RTNL and flush_scheduled_work deadlock
  sis190: RTNL and flush_scheduled_work deadlock
  r8169: RTNL and flush_scheduled_work deadlock
  [PATCH] ieee80211softmac: Fix setting of initial transmit rates
  [PATCH] bcm43xx: OFDM fix for rev 1 cards
  [PATCH] bcm43xx: Fix for 4311 and 02/07/07 specification changes
  [PATCH] prism54: correct assignment of DOT1XENABLE in WE-19 codepaths
  [PATCH] zd1211rw: Readd zd_addr_t cast
  [PATCH] bcm43xx: Fix for oops on resume
  [PATCH] bcm43xx: Ignore ampdu status reports
  [PATCH] wavelan: Use ARRAY_SIZE macro when appropriate
  [PATCH] hostap: Use ARRAY_SIZE macro when appropriate
  [PATCH] misc-wireless: Use ARRAY_SIZE macro when appropriate
  [PATCH] ipw2100: Use ARRAY_SIZE macro when appropriate
  [PATCH] bcm43xx: Janitorial change - remove two unused variables
  ...
2007-02-20 10:26:46 -08:00
Dale Farnsworth
f00a3ec4d4 [NET] Eliminate user-selectable CONFIG_MV643XX_ETH_[012]
Remove the use of CONFIG_MV643XX_ETH_[012] variables on most platforms.
Instead, platform-specific code enables the ports supported by the
hardware.  After this patch, these config variables are only used in
arch/ppc, so also move them from drivers/net/Kconfig to arch/ppc/Kconfig.

Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: Paul Mackerras <paulus@samba.org>
2007-02-20 17:11:55 +00:00
Jeff Garzik
6606e17a7f Merge branch 'upstream-jgarzik' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream 2007-02-20 11:28:42 -05:00
Mark Brown
6aab44475a natsemi: Support Aculab E1/T1 PMXc cPCI carrier cards
Aculab E1/T1 PMXc cPCI carrier card cards present a natsemi on the cPCI
bus with an oversized EEPROM using a direct MII<->MII connection with no
PHY.  This patch adds a new device table entry supporting these cards.

Signed-Off-By: Mark Brown <broonie@sirena.org.uk>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:13 -05:00
Mark Brown
68c90166e4 natsemi: Add support for using MII port with no PHY
This patch provides code paths which allow the natsemi driver to use the
external MII port on the chip but ignore any PHYs that may be attached to it.
The link state will be left as it was when the driver started and can be
configured via ethtool.  Any PHYs that are present can be accessed via the MII
ioctl()s.

This is useful for systems where the device is connected without a PHY
or where either information or actions outside the scope of the driver
are required in order to use the PHYs.

Signed-Off-By: Mark Brown <broonie@sirena.org.uk>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:13 -05:00
Stephen Hemminger
208491d8f9 skge: race with workq and RTNL
If a workqueue function that needs RTNL is running when skge_down
is called then a deadlock is possible. Fix by only clearing the timer,
and handling the flush_scheduled_work on removal. This work queue is only
ever used for the old fiber based boards.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:13 -05:00
Ralf Baechle
8b5b467181 Replace local random function with random32()
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:13 -05:00
Francois Romieu
22747d6b41 s2io: RTNL and flush_scheduled_work deadlock
Mantra: don't use flush_scheduled_work with RTNL held.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:13 -05:00
Francois Romieu
83cbb4d257 8139too: RTNL and flush_scheduled_work deadlock
Your usual dont-flush_scheduled_work-with-RTNL-held stuff.

It is a bit different here since the thread runs permanently
or is only occasionally kicked for recovery depending on the
hardware revision.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:12 -05:00
Francois Romieu
c014f6c8f8 sis190: RTNL and flush_scheduled_work deadlock
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:12 -05:00
Francois Romieu
eb2a021c47 r8169: RTNL and flush_scheduled_work deadlock
flush_scheduled_work() in net_device->close has a slight tendency
to deadlock with tasks on the workqueue that hold RTNL.

rtl8169_close/down simply need the recovery tasks to not meddle
with the hardware while the device is going down.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-20 11:18:12 -05:00
Linus Torvalds
874ff01bd9 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (25 commits)
  Documentation/kernel-docs.txt update.
  arch/cris: typo in KERN_INFO
  Storage class should be before const qualifier
  kernel/printk.c: comment fix
  update I/O sched Kconfig help texts - CFQ is now default, not AS.
  Remove duplicate listing of Cris arch from README
  kbuild: more doc. cleanups
  doc: make doc. for maxcpus= more visible
  drivers/net/eexpress.c: remove duplicate comment
  add a help text for BLK_DEV_GENERIC
  correct a dead URL in the IP_MULTICAST help text
  fix the BAYCOM_SER_HDX help text
  fix SCSI_SCAN_ASYNC help text
  trivial documentation patch for platform.txt
  Fix typos concerning hierarchy
  Fix comment typo "spin_lock_irqrestore".
  Fix misspellings of "agressive".
  drivers/scsi/a100u2w.c: trivial typo patch
  Correct trivial typo in log2.h.
  Remove useless FIND_FIRST_BIT() macro from cardbus.c.
  ...
2007-02-19 13:29:02 -08:00
John W. Linville
b312362be6 Merge branch 'upstream' into upstream-jgarzik
Conflicts:

	net/ieee80211/softmac/ieee80211softmac_module.c
	net/ieee80211/softmac/ieee80211softmac_wx.c
2007-02-17 18:26:09 -05:00
Daniel Drake
0b3581e26d sk98lin: mark deprecated in Kconfig
sk98lin is scheduled for removal in July 2007. This patch makes the
deprecation more obvious in the configuration interface. FWIW, Gentoo have
been shipping a patch very similar to this for a long time.

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 16:56:33 -05:00
Baruch Even
bdcac1878c Hostess SV-11 depends on INET
Comtrol Hostess SV-11 driver uses features from INET but doesn't depend on it.
The simple solution is to make it depend on INET as happens for the sealevel
driver.

Fixes bug #7930.

Signed-Off-By: Baruch Even <baruch@ev-en.org>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:39:37 -05:00
Ralf Baechle
f0ba73583a Fix link autonegotiation timer.
Start link negotiation in the open method.  Previously it was started
on driver initialialization and shutdown on close so an ifdown would
have results in closing negotiation for good.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Stephen Hemminger
8765c125e0 sk98lin: planned removal
Nag message about planned sk98lin removal.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Gary Zambrano
40ee8c768c B44: increase wait loop
The b44 Enet control disable bit may take longer to clear on some
systems, so the loop count is increased with this patch. Functionality
is not compromised, but a debug message can be seen when the bit is not
cleared within the count value.
Thanks to Vasileios Lourdas who reported the problem.

Signed-off by: Gary Zambrano <zambrano@broadcom.com>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Gary Zambrano
97db9ee7ee b44: replace define
Replaced B44_DMA_MASK with DMA_30BIT_MASK.

Signed-off by: Gary Zambrano <zambrano@broadcom.com>

Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Kok, Auke
ca6efb7d6c e1000: allow ethtool to see link status when down
By reading the MAC status register we can detect whether the MAC has
seen the PHY see link. This allows us to show the link properties before
the device is up in ethtool.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Kok, Auke
1d33e9c606 e1000: remove obsolete custom pci_save_state code
Now that 2.6.19 provides a proper implementation that saves MSI, PCI-E
config space, we can have the e1000 driver use those instead of it's
custom implementation.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Kok, Auke
d2ed16356f e1000: fix shared interrupt warning message
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:37:14 -05:00
Jeff Morrow
52edc17f94 bugfixes and new hardware support for arcnet driver
The modifications and bug fixes noted below were done by Realtime Control
Works and Contemporary Control Systems, Inc, Jan 2005.  They were
incorporated into the 2.6 kernel by Jeff Morrow of Sierra Analytics, Feb
2007.  <jmorrow@massspec.com>

The changes have been tested on a Contemporary Controls PCI20U-4000.

Summary of changes:

Arc-rawmode.c:
      rx():
      - Fixed error in received packet lengths; 256 byte packets were
        being received as 257 bytes packets.

      prepare_tx():
      - Fixed error in transmit length calcs; 257 byte packets were being
        transmitted as 260 byte packets.

com20020.c:
      com20020_check():
      - We now load the SETUP2 register if the 'clockm' parameter is
        non-zero, instead of checking for ARC_CAN_10MBIT. The user is
        now responsible for whether or not SETUP2 is loaded.  If the
        clock multiplier is non-zero, this means that the user wants a
        baud rate greater than 2.5Mbps. This is not possible unless the
        SETUP2 register is present (COM20020D, or COM20022). So, we're
        relying on the user to be smart about what kind of chip he's
        dealing with...

com20020-pci.c
      - Added several entries to com20020pci_id_table[].

Signed-off-by: Jeff Morrow <jmorrow@massspec.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:48 -05:00
pcnet32@verizon.net
659dd8351a pcnet32 NAPI no longer experimental
Remove the experimental tag for the pcnet32 NAPI implementation.

Signed-off-by:  Don Fry <pcnet32@verizon.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:48 -05:00
Haavard Skinnemoen
140e807dd7 macb: Remove inappropriate spinlocks around mii calls
Remove spin_lock_irqsave() around mii_ethtool_gset, mii_ethtool_sset
and generic_mii_ioctl. These are unnecessary and harmful because
the mii calls may call back into the mdio functions, which may sleep.

Pointed out by David Brownell.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:48 -05:00
Ralf Baechle
daeafdc360 Convert meth to netdev_priv
And while at it loose plenty of useless casts.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
62ba7e6cfd sky2: v1.13
New version.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
a79abdc6ee sky2: receive error handling improvements
Don't drop oversize frame it might be a VLAN (untagged).
Use different counter for fifo overrun vs fifo error.
Print error on fifo overrrun.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
819067916d sky2: transmit timeout
The transmit timeout code could hang, and it would not clear out
problems if the hardware was stuck.  Change the code to effectively do
a device down/up similar to the suspend/resume code.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
da4c1ff475 sky2: flow control negotiation for Yukon-FE
The Yukon-FE chip doesn't do gigabit and has a differen PHY internally.
On this chip, phy status register doesn't properly reflect the result
of flow control negotiation. To workaround the problem and avoid having
to have so much chip dependent code; compute the result of flow control
by looking at the local and remote advertised bits.

Signed-off-by: Stephen Hemmminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
7a7b518151 sky2: no need to reset pause bits on shutdown
Resetting the pause bits on shutdown is not necessary.
The code was inherited from the vendor driver, and it is currently #ifdef'd
out there as well.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Stephen Hemminger
7e7c098221 sky2: dont flush good pause frames
Don't mark pause frames as errors. This problem caused transmitter not
to pause and would effectively take out a gigabit switch because the
it can't handle overrun.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:47 -05:00
Steve Wise
0f4e7b45b9 cxgb3 Fix copyrights in the cxgb3 driver.
Fix copyrights in the cxgb3 driver.

Remove the Open Grid Computing copyright.  It shouldn't be there.

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:30:46 -05:00
Sergei Shtylyov
538cc7ee7d gianfar: don't duplicate gfar_error()
It was hardly necessary to repeat most of the code from gfar_error() in
gfar_interrupt(), especially having some inconsistencies between the two.
So, make the gfar_interrupt() just call gfar_error(), and not acknowledge
the interrupts itself as gfar_{receive/transmit/error}() do it anyway.
While at it, also clarify/cleanup debug messages in gfar_error()...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:26:45 -05:00
Amit S. Kale
825811749b NetXen: Fix to get the driver working after sparse changes
Signed-off-by: Amit S. Kale <amitkale@netxen.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:26:45 -05:00
Richard Knutsson
11cc3bb522 net/wan/pc300too.c: pci_module_init to pci_register_driver
Convert pci_module_init() to pci_register_driver().

Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:26:45 -05:00
Jay Cliburn
9cc6d14e90 atl1: bump version number
Bump the version number.

Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:17:05 -05:00
Chris Snook
e81e557a8f atl1: add L1 device id to pci_ids, then use it
Add device id for the Attansic L1 chip to pci_ids.h, then use it.

Signed-off-by: Chris Snook <csnook@redhat.com>
Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:17:05 -05:00
Chris Snook
f1e5a1a00d atl1: remove unused define
Remove unused define from atl1_main.c.

Signed-off-by: Chris Snook <csnook@redhat.com>
Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Jay Cliburn
fd8c5a7da3 atl1: read MAC address from register
On some Asus motherboards containing the L1 NIC, the MAC address is
written by the BIOS directly to the MAC register during POST, and is
not stored in eeprom.  If we don't succeed in fetching the MAC address
from eeprom or spi, try reading it directly from the MAC register.
Suggested by Xiong Huang.

And do some cleanup while we've got the hood up...

Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Chris Snook <csnook@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Al Viro
a62daa4c75 atl1: fix bad ioread address
An ioread32 statement reads the wrong address.  Fix it.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Chris Snook <csnook@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Jay Cliburn
a1ca14b1f4 atl1: drop NET_PCI from Kconfig
The atl1 driver doesn't need NET_PCI.  Remove it from Kconfig.
Noticed by Chad Sprouse.

Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net>
Signed-off-by: Chris Snook <csnook@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Komuro
e363d138ed PCMCIA-NETDEV : the 2nd argument of el3_interrrupt and smc_interrupt is struct net_device*
Signed-off-by: Komuro <komurojun-mbn@nifty.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Andy Fleming
76884679c6 phylib: Add support for Marvell 88e1111S and 88e1145
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 <afleming@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-02-17 15:16:08 -05:00
Jeff Garzik
f630fe2817 Merge branch 'master' into upstream 2007-02-17 15:11:43 -05:00
Jeff Garzik
48c871c1f6 Merge branch 'gfar' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc into upstream 2007-02-17 15:09:59 -05:00
Shane Shrybman
4b2d5c0490 drivers/net/eexpress.c: remove duplicate comment
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2007-02-17 19:56:23 +01:00
Simon Depiets
6486abbf63 fix the BAYCOM_SER_HDX help text
This fixes kernel Bugzilla #4076.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
2007-02-17 19:42:17 +01:00
Robert P. J. Day
d08df601a3 Various typo fixes.
Correct mis-spellings of "algorithm", "appear", "consistent" and
(shame, shame) "kernel".

Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2007-02-17 19:07:33 +01:00