Fun with 4-port 82559ER and 2.4.25 kernel

Ben Greear <[email protected]> Wed, 17 Mar 2004 15:48:04 -0800
Newsgroups gmane.linux.drivers.eepro100.devel
Organization Candela Technologies
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------010708050404090302080900
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit


I have a 4-port NIC with 82559ER chipsets, and it does not
auto-negotiate using the standard RH 9 kernel or the 2.4.25
kernel.  The debug info comes from the eepro100 in the 2.4.25
kernel:
version: v1.09j-t 9/29/99,
Revision 1.36 2000/11/17

The problem exists with both the eepro100 and the e100
driver.  For the e100 driver, I noticed that the Phy-ID
0x15402a8 is not in their standard list of #defines, so that
may be part of the problem.

It appears the eepro100 gets all zeros when reading the
eeprom and/or phy, so it thinks the NICs are set to 10bt-HD,
though it won't train up even at that rate.

For the e100, at least, forcing the ports to 100bt-FD works
fine.

I don't yet know who made this board, the only identifying mark
I see is "PTI-2141", and google does not find it.  It also has
a big chip on it labled "Firewall".

The output of eepro100-diag is attached.  The first two
NICs work, the last 4 are the ones with problems.

Please let me know if you have any ideas.

Thanks,
Ben

-- 
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com


--------------010708050404090302080900
Content-Type: text/plain;
 name="eepro_diag.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="eepro_diag.txt"

eepro100-diag.c:v2.02 7/19/2000 Donald Becker ([email protected])
 http://www.scyld.com/diag/index.html
Index #1: Found a Intel i82557 (or i82558) EtherExpressPro100B adapter at 0xa000.
i82557 chip registers at 0xa000:
  00000000 00000000 00000000 00080002 183f0000 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Idle'.
   The receive unit state is 'Idle'.
  This status is unusual for an activated interface.
EEPROM contents, size 64x16:
    00: e000 5281 7397 0203 0000 0201 4701 0000
  0x08: 5678 1234 58e2 1040 8086 0064 0000 0000
      ...
  0x20: 0000 0000 0000 1229 0000 0000 0000 0000
      ...
  0x30: 0128 4000 4106 0000 0000 0000 0000 0000
  0x38: 0000 0000 0000 0000 0000 0000 0000 e28e
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:E0:81:52:97:73.
  Board assembly 567812-052, Physical connectors present: RJ45
  Primary interface chip i82555 PHY #1.
 MII PHY #1 transceiver registers:
  1000 7809 02a8 0154 0101 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0001 0000 0000 0000 0000 0000
  0002 0000 08e0 0000 00a0 0000 0000 0000.
Index #2: Found a Intel i82557 (or i82558) EtherExpressPro100B adapter at 0xa400.
i82557 chip registers at 0xa400:
  0c000050 0bcff000 00000000 00080002 1821782d 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Suspended'.
   The receive unit state is 'Ready'.
  This status is normal for an activated but idle interface.
 The Command register has an unprocessed command 0c00(?!).
EEPROM contents, size 64x16:
    00: e000 5281 7297 0203 0000 0201 4701 0000
  0x08: 5678 1234 58e2 1040 8086 0064 0000 0000
      ...
  0x20: 0000 0000 0000 1229 0000 0000 0000 0000
      ...
  0x30: 0128 4000 4106 0000 0000 0000 0000 0000
  0x38: 0000 0000 0000 0000 0000 0000 0000 e38e
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:E0:81:52:97:72.
  Board assembly 567812-052, Physical connectors present: RJ45
  Primary interface chip i82555 PHY #1.
 MII PHY #1 transceiver registers:
  1000 782d 02a8 0154 0101 45e1 0001 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0a03 0000 0001 0000 0000 0000 0000 0000
  0000 0000 0b10 0000 0090 0000 0000 0000.
Index #3: Found a Intel 82559ER EtherExpressPro/100+ adapter at 0x9000.
i82557 chip registers at 0x9000:
  0c000050 0c406000 00000000 00080002 18010000 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Suspended'.
   The receive unit state is 'Ready'.
  This status is normal for an activated but idle interface.
 The Command register has an unprocessed command 0c00(?!).
EEPROM contents, size 64x16:
    00: 9000 0027 170e 0000 0000 0000 0000 0000
  0x08: 2002 0906 40a0 1209 14c2 0000 0000 0000
      ...
  0x38: 0000 0000 0000 0000 0000 0000 0000 8312
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:90:27:00:0E:17.
  Receiver lock-up bug exists. (The driver work-around *is* implemented.)
  Board assembly 200209-006, Physical connectors present:
  Primary interface chip None PHY #0.
Index #4: Found a Intel 82559ER EtherExpressPro/100+ adapter at 0x9400.
i82557 chip registers at 0x9400:
  0c000050 0bd91000 00000000 00080002 18010000 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Suspended'.
   The receive unit state is 'Ready'.
  This status is normal for an activated but idle interface.
 The Command register has an unprocessed command 0c00(?!).
EEPROM contents, size 64x16:
    00: 9000 0027 180e 0000 0000 0000 0000 0000
  0x08: 2002 0906 40a0 1209 14c2 0000 0000 0000
      ...
  0x38: 0000 0000 0000 0000 0000 0000 0000 8212
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:90:27:00:0E:18.
  Receiver lock-up bug exists. (The driver work-around *is* implemented.)
  Board assembly 200209-006, Physical connectors present:
  Primary interface chip None PHY #0.
Index #5: Found a Intel 82559ER EtherExpressPro/100+ adapter at 0x9800.
i82557 chip registers at 0x9800:
  0c000050 0ba09000 00000000 00080002 18010000 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Suspended'.
   The receive unit state is 'Ready'.
  This status is normal for an activated but idle interface.
 The Command register has an unprocessed command 0c00(?!).
EEPROM contents, size 64x16:
    00: 9000 0027 190e 0000 0000 0000 0000 0000
  0x08: 2002 0906 40a0 1209 14c2 0000 0000 0000
      ...
  0x38: 0000 0000 0000 0000 0000 0000 0000 8112
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:90:27:00:0E:19.
  Receiver lock-up bug exists. (The driver work-around *is* implemented.)
  Board assembly 200209-006, Physical connectors present:
  Primary interface chip None PHY #0.
Index #6: Found a Intel 82559ER EtherExpressPro/100+ adapter at 0x9c00.
i82557 chip registers at 0x9c00:
  0c000050 0bacb000 00000000 00080002 18010000 00000600
  No interrupt sources are pending.
   The transmit unit state is 'Suspended'.
   The receive unit state is 'Ready'.
  This status is normal for an activated but idle interface.
 The Command register has an unprocessed command 0c00(?!).
EEPROM contents, size 64x16:
    00: 9000 0027 1a0e 0000 0000 0000 0000 0000
  0x08: 2002 0906 40a0 1209 14c2 0000 0000 0000
      ...
  0x38: 0000 0000 0000 0000 0000 0000 0000 8012
 The EEPROM checksum is correct.
Intel EtherExpress Pro 10/100 EEPROM contents:
  Station address 00:90:27:00:0E:1A.
  Receiver lock-up bug exists. (The driver work-around *is* implemented.)
  Board assembly 200209-006, Physical connectors present:
  Primary interface chip None PHY #0.

--------------010708050404090302080900--