1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
Commit graph

3291 commits

Author SHA1 Message Date
Auke Kok
a535aa1922 e100: increment version to 3.5.16-k2
Increment the version of e100 to 3.5.16-k2, increment dates.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:49 -07:00
Auke Kok
859b039463 e100: remove skb->dev assignment
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:49 -07:00
Linas Vepstas
b1d26f24e8 e100: fix error recovery
A recent patch in -mm3 titled
"gregkh-pci-pci-don-t-enable-device-if-already-enabled.patch" causes
pci_enable_device() to be a no-op if the kernel thinks that the device is
already enabled.  This change breaks the PCI error recovery mechanism in
the e100 device driver, since, after PCI slot reset, the card is no longer
enabled.  This is a trivial fix for this problem.  Tested.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:48 -07:00
Auke Kok
4187592b6d e100: Convert e100 to use netdev_alloc_skb().
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:48 -07:00
Auke Kok
7cc33234f2 e1000: Increment driver version to 7.2.7-k2
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:47 -07:00
Christoph Hellwig
ca6f722419 e1000: clean up skb allocation code
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:47 -07:00
Jesse Brandeburg
5881cde8a3 e1000: Add PCI ID 0x10a4 for our new 4-port PCI-Express device
Device 0x10a4 is a double 82571 on a single PCI-Express card and
has 4 gigabit capable ports.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:47 -07:00
Jesse Brandeburg
120cd57644 e1000: unify WoL capability detection code
WoL is constantly giving problems and needed a rewrite. Consolidates
all WoL capabilities into a single function, and disables WoL for all
other ports on the device except for port A.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
2006-08-31 14:27:46 -07:00
Francois Romieu
cccb20d3a9 8139cp: use PCI_DEVICE() to shorten the PCI device table
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:43 +02:00
François Romieu
7668a4945b 8139cp: pci_get_drvdata(pdev) can not be NULL in suspend handler
1) pci_set_drvdata() is used in cp_{init/remove}_one to initialize/reset
   driver_data to the relevant value (resp. net_device * and NULL).

2) each of the 3 relevant functions is issued under (device *)->sem:
   2.1) pci_unregister_driver
        -> driver_unregister
           -> bus_remove_driver
              -> driver_detach (takes (device *)->sem)
                 -> __device_release_driver(dev)
                    -> dev->bus-remove(dev) (== pci_device_remove)
                       -> drv->remove(pdev) (== cp_remove_one)
                       [...]
                       pci_dev->driver = NULL;

   2.2) pci_register_driver
        -> __pci_register_driver
           -> driver_register
              -> bus_add_driver
                 -> driver_attach
                    -> __driver_attach (takes (device *)->sem)
                       -> driver_probe_device(drv, dev)
                          -> dev->bus->probe(dev) (== pci_device_probe)
                             -> _pci_device_probe(drv, pci_dev)
                                -> pci_call_probe(drv, pci_dev, id)
                                   -> drv->probe(dev, id) (== cp_init_one)
                                [...]
                                pci_dev->driver = drv;

   2.3) suspend_device (takes (device *)->sem)
        -> dev->bus->suspend(dev) (== pci_device_suspend)
           checking for drv = pci_dev->driver != NULL
           [...]
           -> drv->suspend(pci_dev, state) (== cp_suspend)

dev->sem and the state of pci_dev->driver provide the expected result.

St Mary's day was a bit rainy here.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:42 +02:00
Francois Romieu
e68970e754 8139cp: removal of useless BUG_ON() check
netdev_priv() will provide a nice oops a few lines before
the BUG_ON() check.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:41 +02:00
Francois Romieu
d03d376dd2 8139cp: sync the device private data with its r8169 counterpart
struct cp_private is reorganized to be more easily compared between the
r8169 and the 8139cp drivers.

The alignment should not be impacted.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:41 +02:00
Francois Romieu
0ba894d420 8139cp: ring_info removal for the receive path
The ring_info.len field is not used at all. cp_private.rx_skb is
turned into an array of sk_buff *.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:40 +02:00
Francois Romieu
c48e9399e8 8139cp: remove gratuitous indirection
dev is an argument of the current function.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:40 +02:00
Francois Romieu
3598b57be4 8139cp: trim ring_info
Fat removal: the mapping address is available from the Rx/Tx descriptors.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:15:39 +02:00
Francois Romieu
d2eed8cff9 r8169: the 0x8136 needs a 8 bytes alignment
Reported by Darren Salt.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 22:01:07 +02:00
Francois Romieu
5f787a1aca r8169: add basic MII ioctl support
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 21:59:42 +02:00
Francois Romieu
64e4bfb40c r8169: use standard #defines from mii.h instead of declaring private ones
Some unused stuff goes away btw.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 21:59:36 +02:00
Francois Romieu
5b0384f4fd r8169: trim trailing whitespaces and convert whitespaces to tabs
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 21:59:29 +02:00
Francois Romieu
b518fa8eac r8169: udelay() removal
No need to chew CPU cycles as there is no heavy timing requirement
and the delays are always requested from a sleepable context.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 21:59:24 +02:00
Francois Romieu
188f4af046 r8169: use NETDEV_TX_{BUSY/OK}
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
2006-08-31 21:59:19 +02:00
Paul Mackerras
aa43f77939 Merge branch 'merge' 2006-08-31 15:45:48 +10:00
Linus Torvalds
df31405a9a Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SUNLANCE]: Fix probing problem.
  [SPARC64]: Fix X server hangs due to large pages.
2006-08-30 15:54:55 -07:00
Krzysztof Helt
404dda854b [SUNLANCE]: Fix probing problem.
The current probe table causes ledma and lebuffer
"le" devices to get probed twice which is not what
we want.

Match just "le" and look directly at the parent to get the correct
top-level node information.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-29 21:23:32 -07:00
Stephen Hemminger
ee1377c3ee [STRIP]: Fix neighbour table refcount leak.
Found by inspection. The STRIP driver does neigh_lookup() but never
releases.  This driver shouldn't being doing gratuitous arp anyway.

Untested, obviously, because of lack of hardware.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-29 21:22:19 -07:00
David S. Miller
8fb6f732c3 [E100]: Add module option to ignore bad EEPROM checksums.
Several people run into the situation where the E100
EEPROM contents are fine, but the checksum hasn't been
set properly.  This renders the device useless for
them even though it would function correctly.

The default is off, which retains the current behavior.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-29 21:22:14 -07:00
Stephen Hemminger
6fc47e31c0 [PATCH] skge: version 1.7
Increase version.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:31 -04:00
Stephen Hemminger
ccdaa2a9da [PATCH] skge: use ethX for irq assigments
The user level irq balance daemon uses "eth" as a way to distinquish
ethernet devices. Also, by using device name it is possible to distinquish
different boards.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:31 -04:00
Stephen Hemminger
83c758fabd [PATCH] skge: use dev_alloc_skb
To avoid problems with buggy protocols that assume extra header space,
use dev_alloc_skb() when allocating receive buffers.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:31 -04:00
Stephen Hemminger
78bc218663 [PATCH] skge: pci bus post fixes
At the end of a critical section, we need to force the PCI write
to complete by doing a read.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
Stephen Hemminger
d38efdd65a [PATCH] skge: cleanup suspend/resume code
The code for suspend/resume needs several fixes. The hardware lock
should be setup in probe only, not in resume. Interrupts should be
disabled during suspend, etc.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
e981d47b9f [PATCH] sky2: version 1.7
Change version number for this bundle.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
98232f85ff [PATCH] sky2: pci post bug
Make sure that PCI write occurs before the delay.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
d3bcfbeb27 [PATCH] sky2: power down PHY when not up
To save power, don't enable power to the PHY until device is brought up.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
1d179332f8 [PATCH] sky2: optimize checksum offload information
Since many packets have the same checksum starting offset and insertion
location; the driver can save the last information and only tell hardware
when it changes.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
e07560cd4f [PATCH] sky2: TSO mss optimization
The MSS in the transmit engine only has to change if TSO mtu changes. This
means less commands to the chip when mixing TSO and regular data.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
bb507fe11f [PATCH] sky2: MSI test timing
The test for MSI IRQ could have timing issues. The PCI write needs to be
pushed out before waiting, and the wait queue should be initialized before
the IRQ.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:30 -04:00
shemminger@osdl.org
97bda706b4 [PATCH] sky2: dont use force status bit
Don't use force status bit. It was never implemented on all chips, or has
no impact.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:29 -04:00
shemminger@osdl.org
497d7c8681 [PATCH] sky2: use netdev_alloc_skb
Use netdev_alloc_skb for buffer allocation to allow for headroom.
This prevents bugs in code paths that assume extra space at the
front and makes sky2 behave like other drivers.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:29 -04:00
shemminger@osdl.org
fba5008cda [PATCH] sky2: remove cloned/pskb_expand_head check
The code to handle cloned skb overwriting is unnecessary in the
sky2 driver and is buggy. The bug is that pskb_expand_head can change the
skb but the driver has already mapped in the header.

Since the sky2 hardware doesn't need to overwrite memory, the buggy
code can just be removed; it was mistakenly copied from the tg3
driver.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-29 17:18:29 -04:00
Larry Finger
c576af4791 [PATCH] bcm43xx: Set floor of wireless signal and noise at -110 dBm
This patch sets the floor of wireless level (signal) and noise at
-110 dBm, which makes them be comatible with RCPI, as discussed by
Simon Barber. With this change, bcm43xx-softmac and bcm43xx-d80211
behave the same.

Signed-Off-By: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:34 -04:00
Larry Finger
653d5b55c0 [PATCH] bcm43xx - set correct value in mac_suspended for ifdown/ifup sequence
When bcm43xx-softmac is given an ifdown/ifup sequence, the value for
bcm->mac_suspended ends up wrong, which leads to a large number of
assert(bcm->mac_suspended>=0) messages. This one-line patch fixes
this problem.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-Off-By: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:34 -04:00
Zhu Yi
efa7e0691f [PATCH] ipw2200: Fix compile error when CONFIG_IPW2200_DEBUG is not selected
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:34 -04:00
Zhu Yi
8b5f9171f6 [PATCH] ipw2200: Update version stamp to 1.1.4
Update version ipw2200 stamp to 1.1.4

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:34 -04:00
Zhu Yi
094c4d2df6 [PATCH] ipw2200: enable wireless extension passive scan
This patch enables the ipw2200 driver to support passive scanning as
offered by the wireless extensions. For this, I enhanced the ipw_wx_set_scan
function in such a way that it differentiates between a passive and an
active scan request. Additionally, I added a new function called
ipw_request_passive_scan that is similiar to the ipw_request_scan
function to perform passive scans. Last but not least, I added a field
(in fact it is a work_struct struct) called request_passive_scan to
the ipw_priv struct.

Signed-off-by: Thomas King <king@informatik.uni-mannheim.de>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:34 -04:00
Zhu Yi
efbd809829 [PATCH] ipw2100: Fix deadlock detected by lockdep
Fix by removing dependency between priv->action_sem and rtnl semaphore.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:33 -04:00
Zhu Yi
c8c22c942e [PATCH] ipw2200: Add pci .shutdown handler
If we don't disable the card in the pci .shutdown method, there might be
pending interrupts still in the interrupt line after a reboot on some
platform. This patch fixes the problem by disable the hardware in the pci
.shutdown method.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:33 -04:00
Zhu Yi
b9bec768c3 [PATCH] ipw2200: Fix kernel Oops if cmdlog debug is enabled
When command error log debug is enabled, we write every host command and
parameters into a buffer. But we didn't alloc the parameter buffer for this
case. The patch adds struct cmdlog_host_cmd so that the buffer is allocated
from the stack.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:33 -04:00
Zhu Yi
d5f7ac2039 [PATCH] ipw2200: mark "iwconfig retry 255" as invalid
The ipw2200 firmware/ucode only support values from 0 to 254. So mark 255
as invalid.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:33 -04:00
Zhu Yi
88a93df4cb [PATCH] ipw2200: remove the MAC timestamp present field from radiotap head
IEEE80211_RADIOTAP_TSFT is defined as the Value in microseconds of the
MAC's 64-bit 802.11 Time Synchronization Function timer when the first bit
of the MPDU arrived at the MAC. Since ipw2200 hardware doesn't provide this
value, we disable this feature from the radiotap header present flag.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-29 17:06:32 -04:00