Commit graph android_kernel_sony_sdm845/drivers/net/e1000
Message SHA1
[PATCH] e1000: prevent statistics from getting garbled during reset
If a PCI bus error/fault triggers a PCI bus reset, attempts to get the
ethernet packet count statistics from the hardware will fail, returning
garbage data upstream.  This patch skips statistics data collection if the
PCI device is not on the bus.

This patch presumes that an earlier patch,
[PATCH] PCI Error Recovery: e1000 network device driver
has already been applied.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: John Ronciak <john.ronciak@intel.com>
Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

Linas Vepstas   authored and   Jeff Garzik   commited 2006-06-11 10:35:15 -04:00
282f33c986
Merge branch 'upstream' of git://lost.foo-projects.org/~ahkok/git/netdev-2.6 into tmp
Jeff Garzik   commited 2006-06-08 15:56:17 -04:00
cac925a4aa
Merge branch 'upstream-fixes' into upstream
Conflicts:

	drivers/net/e1000/e1000_ethtool.c

Jeff Garzik   commited 2006-06-08 15:55:45 -04:00
bcd618e4ea
e1000: add PCI Error Recovery
Various PCI bus errors can be signaled by newer PCI controllers.
This patch adds the PCI error recovery callbacks to the intel gigabit
ethernet e1000 device driver. The patch has been tested, and appears
to work well.

Signed-off-by: Linas Vepstas <linas@linas.org>
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-06-08 09:30:24 -07:00
9026729bfe
e1000: remove risky prefetch on next_skb->data
It was brought to our attention that the prefetches break e1000 traffic
on xscale/arm architectures.  Remove them for now.  We'll let them
stay in mm for a while, or find a better solution to enable.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-06-08 09:28:47 -07:00
24f476eeec
e1000: fix ethtool test irq alloc as "probe"
New code added in 2.6.17 caused setup_irq to print a warning when
running ethtool -t eth0 offline.

This test marks the request_irq call made by this test as a "probe"
to see if the interrupt is shared or not.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-06-08 09:28:38 -07:00
b9b6e78b11
e1000: add shutdown handler back to fix WOL
Someone was waaay too aggressive and removed e1000's reboot notifier
instead of porting it to the new way of the shutdown handler.  This change
broke wake on lan.  Add the shutdown handler back in using the same method
as e100 uses.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

(cherry picked from c653e6351e commit)

Auke Kok   authored and   Jeff Garzik   commited 2006-05-26 21:31:56 -04:00
80871e63e4
[PATCH] e1000: endian fixes
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: "Ronciak, John" <john.ronciak@intel.com>
Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
Acked-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

Alexey Dobriyan   authored and   Jeff Garzik   commited 2006-05-26 21:29:09 -04:00
6082823632
e1000: bump version to 7.0.38-k4
Signed-off-by: Auke Kok <auke.jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:36:19 -07:00
440c052d6f
e1000: remove changelog in driver
This honours the request to remove the changelog in the driver code.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:36:14 -07:00
fdf35d3c49
e1000: Fix date string in Makefile
I forgot to update the date string in the Makefile last time.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:36:10 -07:00
a1943b5a79
e1000: remove leading and trailing whitespace.
Some leading and trailing whitespace made it into the driver code here.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:36:06 -07:00
76c224bc9f
e1000: remove backslash r debug printfs
This removes unwanted characters in the debug output that should have
never been there.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:36:01 -07:00
a42a507cd3
e1000: add shutdown handler back to fix WOL
Someone was waaay too aggressive and removed e1000's reboot notifier
instead of porting it to the new way of the shutdown handler.  This change
broke wake on lan.  Add the shutdown handler back in using the same method
as e100 uses.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-05-23 13:35:57 -07:00
c653e6351e
e1000: Update truesize with the length of the packet for packet split
Update skb with the real packet size.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-25 22:50:04 -07:00
bcb49197ed
e1000: fix mismerge skb_put.
Seems there was a bit of a fix needed to due a bad merge in the legacy
receive path.  Fixes a panic due to skb_over_panic.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-04-18 12:31:04 -07:00
1cb5821f44
e1000: fix mispatch for media type detect.
Recent patch was mismerged in the miitool path. e1000_media_type_copper
was being compared with the phy type instead of the media type.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>

Auke Kok   commited 2006-04-18 12:30:51 -07:00
dc86d32ab5
e1000: Version bump, contact fix, year string change
Add the sourceforge project mailinglist to the contact information.

Bump version to 7.0.38-k2

Update copyright string with the new year.


Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:05:31 -07:00
3d41e30aa3
e1000: implement more efficient tx queue locking
Implement more efficient locking (avoid the lock) when checking for
a stopped queue.  Also don't wake the queue unless the threshold is
reached to avoid queue on/off thrash.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:05:25 -07:00
77b2aad5b4
e1000: Buffer optimizations for small MTU
Remove multi-descriptor support from legacy recieve path

Add memory usage efficiency by using more correct size descriptors for
small MTU sizes and optimize using LPE for <= 1522 byte frame sizes

An extra performance fix that effected our TCP window size growth
as a receiver.  Set our initial buffer to be 128 bytes instead of 256
to prevent over-socket charge when truesize is computed in the stack.
old way: truesize = 256 + l1 = 256 + 1460 = 1716
new way: truesize = 128 + l1 = 128 + 1460 = 1588
The magic value that we can't cross is 1648.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:05:18 -07:00
9e2feace1a
e1000: Dead variable cleanup
Removal of unused rx_dropped counter.

Removed reference to E1000_CTRL_EXT_CANC which is no longer valid,
replaced with E1000_CTRL_EXT_INT_TIMER_CLR


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:05:12 -07:00
6fc7a7eca7
e1000: Update truesize with the length of the packet for packet split
Update skb with the real packet size.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:05:06 -07:00
5d51b80f92
e1000: Made an adapter struct variable into a local (txb2b)
Made an adapter struct variable into a local (txb2b)


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:04:59 -07:00
fe7fe28ea5
e1000: De-inline functions to benefit from compiler smartness
De-inline functions to benefit from compiler smartness


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:04:52 -07:00
e619d52349
e1000: Esb2 wol link cycle bug and uninitialized registers
Esb2 link didn't return after wol disable. The code previously assumed
that writing reset to PHY_CTRL phy register turned the phy back on.
In the ESB2 phy case that didn't occur.

Add ESB2 to acquire/release_hw functions upon review it was
discovered that esb2 was skipped on these functions


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:04:46 -07:00
4cc15f5499
e1000: Remove PM warning DPRINTKs breaking 2.4.x kernels
remove DPRINTKs that were printing warnings about power management on
2.4 kernels.  Since we really don't react differently these printk
statements are not needed.  This code was originally added to fix
some compile time warnings that got fixed by newer kernels.


Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Auke Kok   commited 2006-04-14 19:04:40 -07:00
d0e027db78
BUG_ON() Conversion in drivers/net/
this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>

Eric Sesterhenn   authored and   Adrian Bunk   commited 2006-04-02 13:52:48 +02:00
5d9428de1a
[NET]: dev_put/dev_hold cleanup
Get rid of the old __dev_put macro that is just a hold over from pre 2.6
kernel.  And turn dev_hold into an inline instead of a macro.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

Stephen Hemminger   authored and   David S. Miller   commited 2006-03-20 22:32:28 -08:00
1533306186
Merge branch 'upstream-fixes'
Jeff Garzik   commited 2006-03-16 19:27:08 -05:00
abc71c46dc
[PATCH] e1000 endianness bugs
return -E_NO_BIG_ENDIAN_TESTING;

[E1000]: Fix 4 missed endianness conversions on RX descriptor fields.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

David S. Miller   authored and   Jeff Garzik   commited 2006-03-16 19:17:38 -05:00
c3d7a3a4eb
[PATCH] drivers/net/e1000/: proper prototypes
This patch moves prototypes of global variables and functions to a header
file.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: John Ronciak <john.ronciak@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

Adrian Bunk   authored and   Jeff Garzik   commited 2006-03-11 21:49:49 -05:00
30dcbf29cc
Merge branch 'e1000-upstream' of git://198.78.49.142/linux-2.6
Jeff Garzik   commited 2006-03-11 13:35:49 -05:00
b962697b79
Merge branch 'upstream-fixes'
Jeff Garzik   commited 2006-03-11 13:35:31 -05:00
749dfc7055
[PATCH] Wrong return value corrupts free object in e1000 driver
For some reason, E1000's ->hard_start_xmit() routine returns -EFAULT
instead of one of the NETDEV_TX_* error codes.  In fact, it frees up
the SKB before returning this.  This makes the queueing layer think
the packet should be requeued and subsequently we corrupt a freed
object.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>

David S. Miller   authored and   Jeff Garzik   commited 2006-03-11 13:25:17 -05:00
9e927fb618
e1000: Fix mii-tool access to setting speed and duplex
Paul Rolland reported that e1000 was having a hard time using mii-tool to set speed and duplex.  This patch fixes the issue on both newer hardware as well as fixing the code issue that originally caused the problem.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-08 17:24:12 -08:00
cb764326df
e1000: Added driver comments and whitespace changes. Modified long lines of code to ensure they would not wrap beyond 80 characters.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:46:29 -08:00
0f15a8fae8
e1000: Added a performance enhancement - prefetch
- this implementation of prefetch was tested on new and old hardware

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:21:57 -08:00
30320be88f
e1000: Add copybreak when using packet split
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:21:40 -08:00
dc7c6add34
e1000: Fixed the following issues with ESB2 (requires ESB2 support):
- Add restriction for ESB2 to MTU size <=9216
- Removed FIFO errors which were not being used
- Fixed issues with loopback
- Power management change for saving state and config space
- WA to disable recieves and reset device on link loss.  Reset needed to be done outside the interrupt context - modified existing tx_timeout_task

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:21:24 -08:00
8704163987
e1000: Add support for new hardware (ESB2)
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:21:10 -08:00
6418ecc68e
e1000: Add performance enahancement by balancing TX and RX
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:20:43 -08:00
2a1af5d7df
e1000: Add enabled Jumbo frame support for 82573L
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:20:29 -08:00
85b22eb632
e1000: Add 82573 controller support to TSO fix
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:20:17 -08:00
9f68788856
e1000: Fix filling skb descriptors while using packet split
-  Simplified by calling skb_fill_page_desc(), which is more efficient.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:20:02 -08:00
329bfd0b6d
e1000: Fix network problems when forced at 100Mb/s and to fix TSO when forced at 100Mb/s
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:19:30 -08:00
7e6c9861bb
e1000: Fix Quadport Wake on LAN
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:18:48 -08:00
8491682986
e1000: Fix RSS if enabled in mid-connection
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:18:32 -08:00
8df06e504e
e1000: Fix 82543 issue when reading eeprom
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:18:20 -08:00
497fce5e72
e1000: Fix dhcp issue when the skb structure fields are not filled properly
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:18:08 -08:00
20a44028f0
e1000: Fix AMT losing connectivity when switching VLAN in passive mode
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

Jeff Kirsher   authored and   root   commited 2006-03-02 18:17:55 -08:00
c5f226fe97