Menu

#17 Adaptec/Cogent quad & "Briain Damaged"

Chipset-specific
closed-fixed
General (32)
5
2014-07-05
2001-04-13
Anonymous
No

From Donald Becker's tulip page:
http://www.scyld.com/network/tulip.html:

-------------------------------------------------
Special Notes

When using multiport cards with some (brain-damaged,
but technically not broken) PCI BIOSes the Tulip chips
are detected in reverse order. This isn't a problem if
where all chips have individual address EEPROMs, but
some multiport cards have only a single EEPROM on the
"first" chip which is now detected last. The current
work-around is implemented by loading the module
with the parameter 'reverse_probe=1' or compiling the
driver with '-DREVERSE_PROBE_ORDER=1'.
------------------------------------------------

I believe that I have run accross a case of such a
"Brain Damaged" BIOS with a FIC-PA2013 based on the VIA
Apollo MVP3 Chipset, an AMI BIOS and two Adaptec/Cogent
quad 10/100 ethernet controllers.

The first port on the first card (PCI slot 0,
eth0-eth3) works fine, but the last three ports report
"missing eeprom" with the "tulip-diag" program. All
the ports on the second card (PCI slot 1, eth4-eth7)
work excellent.

The problem is that the "reverse_probe=1" option is no
longer in the 2.4 "tulip" driver. I understand that
all the PCI stuff was moved out of the individual NIC
drivers to a common "pci-scan" routine to facilitate
cardbus in 2.4, but could there be some way to still
implement this in the driver or will this bug report
have to be submitted to the PCI guys? If the case is
the latter, to whom should I report this to?

Here is the relevent data on my set-up:

---------------------------------------
OUTPUT from "tulip-diag"
---------------------------------------

tulip-diag.c:v2.06 1/8/2001 Donald Becker
(becker@scyld.com)
http://www.scyld.com/diag/index.html
Index #1: Found a Digital DS21140 Tulip adapter at
0xb000.
Port selection is MII, half-duplex.
Transmit started, Receive started, half-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit threshold is 256.
Index #2: Found a Digital DS21140 Tulip adapter at
0xb400.
Port selection is 10mpbs-serial, half-duplex.
Transmit stopped, Receive stopped, half-duplex.
The Rx process state is 'Stopped'.
The Tx process state is 'Stopped'.
The transmit threshold is 72.
WARNING: The EEPROM is missing or erased!
Index #3: Found a Digital DS21140 Tulip adapter at
0xb800.
Port selection is 10mpbs-serial, half-duplex.
Transmit stopped, Receive stopped, half-duplex.
The Rx process state is 'Stopped'.
The Tx process state is 'Stopped'.
The transmit threshold is 72.
WARNING: The EEPROM is missing or erased!
Index #4: Found a Digital DS21140 Tulip adapter at
0xbc00.
Port selection is 10mpbs-serial, half-duplex.
Transmit stopped, Receive stopped, half-duplex.
The Rx process state is 'Stopped'.
The Tx process state is 'Stopped'.
The transmit threshold is 72.
WARNING: The EEPROM is missing or erased!
Index #5: Found a Digital DS21140 Tulip adapter at
0xc000.
Port selection is MII, full-duplex.
Transmit started, Receive started, full-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit threshold is 256.
Index #6: Found a Digital DS21140 Tulip adapter at
0xc400.
Port selection is MII, full-duplex.
Transmit started, Receive started, full-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit threshold is 256.
Index #7: Found a Digital DS21140 Tulip adapter at
0xc800.
Port selection is MII, full-duplex.
Transmit started, Receive started, full-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit threshold is 256.
Index #8: Found a Digital DS21140 Tulip adapter at
0xcc00.
Port selection is MII, full-duplex.
Transmit started, Receive started, full-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit unit is set to store-and-forward.
Use '-a' or '-aa' to show device registers,
'-e' to show EEPROM contents, -ee for parsed
contents,
or '-m' or '-mm' to show MII management registers.

---------------------------------------
OUTPUT FROM "mii-diag"
---------------------------------------

[root@harp i586]# mii-diag eth0
Basic registers of MII PHY #1: 3100 782d 2000 5c00
01e1 0000 0000 0000.
Basic mode control register 0x3100: Auto-negotiation
enabled.
You have link beat, and everything is working OK.
Your link partner does not do autonegotiation, and
this transceiver
type
does not report the sensed link speed.
[root@harp i586]# mii-diag eth1
Basic registers of MII PHY #1: 2100 780b 2000 5c00
01e1 0000 0000 0000.
Basic mode control register 0x2100: Auto-negotiation
disabled, with
Speed fixed at 100 mbps, full-duplex.
Basic mode status register 0x780b ... 780b.
Link status: not established.
*** Link Jabber! ***
Link partner information information is not exchanged
when in fixed
speed mode.
[root@harp i586]# mii-diag eth2
Basic registers of MII PHY #1: 2100 780b 2000 5c00
01e1 0000 0000 0000.
Basic mode control register 0x2100: Auto-negotiation
disabled, with
Speed fixed at 100 mbps, full-duplex.
Basic mode status register 0x780b ... 780b.
Link status: not established.
*** Link Jabber! ***
Link partner information information is not exchanged
when in fixed
speed mode.
[root@harp i586]# mii-diag eth3
Basic registers of MII PHY #1: 2100 780b 2000 5c00
01e1 0000 0000 0000.
Basic mode control register 0x2100: Auto-negotiation
disabled, with
Speed fixed at 100 mbps, full-duplex.
Basic mode status register 0x780b ... 780b.
Link status: not established.
*** Link Jabber! ***
Link partner information information is not exchanged
when in fixed
speed mode.
[root@harp i586]# mii-diag eth4
Basic registers of MII PHY #1: 3100 7849 2000 5c01
01e1 0000 0000 0000.
Basic mode control register 0x3100: Auto-negotiation
enabled.
Basic mode status register 0x7849 ... 7849.
Link status: not established.
[root@harp i586]# mii-diag eth5
Basic registers of MII PHY #1: 3100 7849 2000 5c01
01e1 0000 0000 0000.
Basic mode control register 0x3100: Auto-negotiation
enabled.
Basic mode status register 0x7849 ... 7849.
Link status: not established.
[root@harp i586]# mii-diag eth6
Basic registers of MII PHY #1: 3100 786b 2000 5c01
01e1 0081 0000 0000.
Basic mode control register 0x3100: Auto-negotiation
enabled.
Basic mode status register 0x786b ... 786f.
Link status: previously broken, but now
reestablished.
*** Link Jabber! ***
Your link partner is generating 100baseTx link beat
(no
autonegotiation).
[root@harp i586]# mii-diag eth7
Basic registers of MII PHY #1: 3100 786b 2000 5c01
01e1 45e1 0003 0000.
Basic mode control register 0x3100: Auto-negotiation
enabled.
Basic mode status register 0x786b ... 786f.
Link status: previously broken, but now
reestablished.
*** Link Jabber! ***
Your link partner advertised 45e1: Flow-control
100baseTx-FD 100baseTx
10baseT-FD 10baseT, w/ 802.3X flow control.

---------------------------------------
INFO IN "/proc/pci"
---------------------------------------

[root@harp i586]# cat /proc/pci
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: VIA Technologies, Inc. VT82C597
[Apollo VP3] (rev 4).
Master Capable. Latency=16.
Prefetchable 32 bit memory at 0xee000000
[0xee3fffff].
Bus 0, device 1, function 0:
PCI bridge: VIA Technologies, Inc. VT82C598/694x
[Apollo
MVP3/Pro133x AGP] (rev 0).
Master Capable. No bursts. Min Gnt=12.
Bus 0, device 7, function 0:
ISA bridge: VIA Technologies, Inc. VT82C586/A/B
PCI-to-ISA [Apollo
VP] (rev 71).
Bus 0, device 7, function 1:
IDE interface: VIA Technologies, Inc. Bus Master
IDE (rev 6).
Master Capable. Latency=64.
I/O at 0xd400 [0xd40f].
Bus 0, device 7, function 3:
PCI bridge: VIA Technologies, Inc. VT82C586B ACPI
(rev 16).
IRQ 9.
Bus 0, device 8, function 0:
PCI bridge: Digital Equipment Corporation DECchip
21050 (rev 2).
Master Capable. Latency=64. Min Gnt=6.
Bus 0, device 9, function 0:
PCI bridge: Digital Equipment Corporation DECchip
21152 (rev 3).
Master Capable. Latency=64. Min Gnt=6.
Bus 0, device 10, function 0:
Unknown mass storage controller: American
Megatrends Inc. MegaRAID
(rev 3).
IRQ 5.
Master Capable. Latency=64.
I/O at 0xd800 [0xd87f].
Bus 0, device 11, function 0:
Unknown mass storage controller: Promise
Technology, Inc. 20262 (rev
1).
IRQ 7.
Master Capable. Latency=64.
I/O at 0xdc00 [0xdc07].
I/O at 0xe000 [0xe003].
I/O at 0xe400 [0xe407].
I/O at 0xe800 [0xe803].
I/O at 0xec00 [0xec3f].
Non-prefetchable 32 bit memory at 0xee400000
[0xee41ffff].
Bus 1, device 0, function 0:
VGA compatible controller: ATI Technologies Inc 3D
Rage Pro AGP
1X/2X (rev 92).
Master Capable. Latency=64. Min Gnt=8.
Non-prefetchable 32 bit memory at 0xe8000000
[0xe8ffffff].
I/O at 0x9000 [0x90ff].
Non-prefetchable 32 bit memory at 0xea000000
[0xea000fff].
Bus 3, device 4, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (rev 32).
IRQ 10.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xb000 [0xb07f].
Non-prefetchable 32 bit memory at 0xdc003000
[0xdc00307f].
Bus 3, device 5, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#2) (rev 32).
IRQ 11.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xb400 [0xb47f].
Non-prefetchable 32 bit memory at 0xdc001000
[0xdc00107f].
Bus 3, device 6, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#3) (rev 32).
IRQ 5.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xb800 [0xb87f].
Non-prefetchable 32 bit memory at 0xdc000000
[0xdc00007f].
Bus 3, device 7, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#4) (rev 32).
IRQ 7.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xbc00 [0xbc7f].
Non-prefetchable 32 bit memory at 0xdc002000
[0xdc00207f].
Bus 4, device 4, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#5) (rev 34).
IRQ 11.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xc000 [0xc07f].
Non-prefetchable 32 bit memory at 0xe4003000
[0xe400307f].
Bus 4, device 5, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#6) (rev 34).
IRQ 5.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xc400 [0xc47f].
Non-prefetchable 32 bit memory at 0xe4001000
[0xe400107f].
Bus 4, device 6, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#7) (rev 34).
IRQ 7.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xc800 [0xc87f].
Non-prefetchable 32 bit memory at 0xe4000000
[0xe400007f].
Bus 4, device 7, function 0:
Ethernet controller: Digital Equipment Corporation
DECchip 21140
[FasterNet] (#8) (rev 34).
IRQ 10.
Master Capable. Latency=64. Min Gnt=20.Max
Lat=40.
I/O at 0xcc00 [0xcc7f].
Non-prefetchable 32 bit memory at 0xe4002000
[0xe400207f].

---------------------------------------
I/O Information
---------------------------------------
[root@harp /proc]# cat iomem
00000000-0009ffff : System RAM
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000cc000-000ce1ff : Extension ROM
000cf000-000d07ff : Extension ROM
000f0000-000fffff : System ROM
00100000-11feffff : System RAM
00100000-002450eb : Kernel code
002450ec-0029ae57 : Kernel data
11ff0000-11ff07ff : ACPI Non-volatile Storage
11ff0800-11ffffff : ACPI Tables
d8000000-dfffffff : PCI Bus #03
dc000000-dc00007f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#3)
dc000000-dc00007f : eth2
dc001000-dc00107f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#2)
dc001000-dc00107f : eth1
dc002000-dc00207f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#4)
dc002000-dc00207f : eth3
dc003000-dc00307f : Digital Equipment Corporation
DECchip 21140
[FasterNet]
dc003000-dc00307f : eth0
e0000000-e7ffffff : PCI Bus #04
e4000000-e400007f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#7)
e4000000-e400007f : eth6
e4001000-e400107f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#6)
e4001000-e400107f : eth5
e4002000-e400207f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#8)
e4002000-e400207f : eth7
e4003000-e400307f : Digital Equipment Corporation
DECchip 21140
[FasterNet] (#5)
e4003000-e400307f : eth4
e8000000-ebffffff : PCI Bus #01
e8000000-e8ffffff : ATI Technologies Inc 3D Rage Pro
AGP 1X/2X
ea000000-ea000fff : ATI Technologies Inc 3D Rage Pro
AGP 1X/2X
ee000000-ee3fffff : VIA Technologies, Inc. VT82C597
[Apollo VP3]
ee400000-ee41ffff : Promise Technology, Inc. 20262
ffff0000-ffffffff : reserved

---------------------------------------

Discussion

  • Jeff Garzik

    Jeff Garzik - 2001-04-15
    • assigned_to: nobody --> jgarzik
    • summary: Adaptec/Cogent quad & "Briain Damaged" --> Adaptec/Cogent quad & "Briain Damaged"
     
  • Jeff Garzik

    Jeff Garzik - 2001-05-11

    Logged In: YES
    user_id=17443

    The problem you reported has been fixed in the latest version of
    the Tulip ethernet driver. This updated driver is available for
    download and testing on the SourceForge project Web page,
    http://sourceforge.net/projects/tulip/

     
  • Jeff Garzik

    Jeff Garzik - 2001-05-11
    • status: open --> closed-fixed
     

Log in to post a comment.