netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: John <me@privacy.net>
To: Jesse Brandeburg <jesse.brandeburg@gmail.com>
Cc: auke-jan.h.kok@intel.com, linux-kernel@vger.kernel.org,
	netdev@vger.kernel.org, hpa@zytor.com, saw@saw.sw.com.sg
Subject: Re: Intel 82559 NIC corrupted EEPROM
Date: Thu, 09 Nov 2006 15:15:29 +0100	[thread overview]
Message-ID: <45533801.7000809@privacy.net> (raw)
In-Reply-To: <4807377b0611080926x21bd6326xc5e7683100d20948@mail.gmail.com>

Jesse Brandeburg wrote:

> I suspect that one reason Becker's code works is that it uses IO
> based access (slower, and different method) to the adapter rather
> than memory mapped access.

I've noticed this difference.

> The second thought is that the adapter is in D3, and something about
> your kernel or the driver doesn't successfully wake it up to D0.

On my NICs, the EEPROM ID (Word 0Ah) is set to 0x40a2.
Thus DDPD (bit 6) is set to 0.

DDPD is the "Disable Deep Power Down while PME is disabled" bit.
0 - Deep Power Down is enabled in D3 state while PME-disabled.
1 - Deep Power Down disabled in D3 state while PME-disabled.
This bit should be set to 1b if a TCO controller is being used via the 
SMB because it requires receive functionality at all power states.

Are you suggesting I try and set DDPD to 1?
Or is this completely unrelated?

> An indication of this would be looking at lspci -vv before/after
> loading the driver.

$ diff -u lspci_vv_before_e100.txt lspci_vv_after_e100.txt
--- lspci_vv_before_e100.txt    2006-11-09 14:51:30.000000000 +0100
+++ lspci_vv_after_e100.txt     2006-11-09 14:51:30.000000000 +0100
@@ -74,21 +74,20 @@
         Expansion ROM at 20000000 [disabled] [size=1M]
         Capabilities: [dc] Power Management version 2
                 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA 
PME(D0+,D1+,D2+,D3hot+,D3cold+)
-               Status: D0 PME-Enable+ DSel=0 DScale=2 PME-
+               Status: D0 PME-Enable- DSel=0 DScale=2 PME-

  00:09.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 
100] (rev 08)
         Subsystem: Intel Corporation EtherExpress PRO/100B (TX)
-       Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping- SERR- FastB2B-
+       Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping- SERR- FastB2B-
         Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium 
 >TAbort- <TAbort- <MAbort- >SERR- <PERR-
-       Latency: 32 (2000ns min, 14000ns max), cache line size 08
         Interrupt: pin A routed to IRQ 10
-       Region 0: Memory at e5302000 (32-bit, non-prefetchable) [size=4K]
-       Region 1: I/O ports at dc00 [size=64]
-       Region 2: Memory at e5100000 (32-bit, non-prefetchable) [size=1M]
+       Region 0: Memory at e5302000 (32-bit, non-prefetchable) 
[disabled] [size=4K]
+       Region 1: I/O ports at dc00 [disabled] [size=64]
+       Region 2: Memory at e5100000 (32-bit, non-prefetchable) 
[disabled] [size=1M]
         Expansion ROM at 20100000 [disabled] [size=1M]
         Capabilities: [dc] Power Management version 2
                 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA 
PME(D0+,D1+,D2+,D3hot+,D3cold+)
-               Status: D0 PME-Enable+ DSel=0 DScale=2 PME-
+               Status: D0 PME-Enable- DSel=0 DScale=2 PME-

  00:0a.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 
100] (rev 08)
         Subsystem: Intel Corporation EtherExpress PRO/100B (TX)

> Also, after loading/unloading eepro100 does the e100 driver work?

No.

> A third idea is look for a master abort in lspci after e100 fails to
> load.

I don't understand that one.


  reply	other threads:[~2006-11-09 14:14 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <454B7C3A.3000308@privacy.net>
     [not found] ` <454BF0F1.5050700@zytor.com>
     [not found]   ` <45506C9A.5010009@privacy.net>
2006-11-08 10:55     ` Intel 82559 NIC corrupted EEPROM John
2006-11-08 16:17       ` Auke Kok
2006-11-09 12:17         ` John
2006-11-09 17:03           ` Auke Kok
2006-11-08 17:26       ` Jesse Brandeburg
2006-11-09 14:15         ` John [this message]
2006-11-10  0:19           ` Jesse Brandeburg
2006-11-10 12:03             ` John
2006-11-15  8:34               ` John
2006-11-27 14:17                 ` John
2006-11-27 20:34                   ` Jesse Brandeburg
2006-11-29 11:26                     ` John
2006-11-29 18:55                       ` Jesse Brandeburg
     [not found]                         ` <45704001.9040108@privacy.net>
2006-12-04 23:26                           ` Jesse Brandeburg
     [not found] <fa.FcMVUlqOXU3cAnxsPEN6d8T0wxU@ifi.uio.no>
     [not found] ` <fa.0FC8eT8GQaLxmNQTrsqyNFjRK4E@ifi.uio.no>
     [not found]   ` <fa.nds0CFkNbotWh4VNM05EixY68wE@ifi.uio.no>
     [not found]     ` <fa.K3Gpuu7oYQv+4q85Ziy3ljV6u+E@ifi.uio.no>
     [not found]       ` <fa./RNOPU0DwWMrnKJSqlMaY+Y16JM@ifi.uio.no>
     [not found]         ` <fa.yV32AYzot0OkvPVCY7VTCvd6rJw@ifi.uio.no>
2007-02-07 11:06           ` John
2007-02-13 19:45             ` Brandeburg, Jesse

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45533801.7000809@privacy.net \
    --to=me@privacy.net \
    --cc=auke-jan.h.kok@intel.com \
    --cc=hpa@zytor.com \
    --cc=jesse.brandeburg@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=saw@saw.sw.com.sg \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).