Koozali.org: home of the SME Server

Obsolete Releases => SME Server 7.x => Topic started by: bscally on September 12, 2007, 03:40:35 AM

Title: Marvell 88E8001 NIC
Post by: bscally on September 12, 2007, 03:40:35 AM
Ok so I am asking in the forum first as I may just be having a mad momet...

I have installed collectd on my gateway box, and have been wondering why eth0 (internal) never shows any traffic, where eth1(wan) is running nicely.
This is a new system, ( to me ) an ran XP fine.


from ifconfig..

eth0      Link encap:Ethernet  HWaddr 00:30:1B:B9:C7:BF
          inet addr:192.168.2.1  Bcast:192.168.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:185 Memory:fddf8000-0

eth1      Link encap:Ethernet  HWaddr 00:01:02:BD:73:03
          inet addr:66.103.110.35  Bcast:66.103.110.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:349118 errors:0 dropped:0 overruns:0 frame:0
          TX packets:268786 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:343786121 (327.8 MiB)  TX bytes:85469400 (81.5 MiB)
          Interrupt:201 Base address:0xdf00

The MB has an onboard Marvell 88E88001 NIC using the SK98LIN driver,  the WAN port is a 3c59x driver.
Oh and I only have one PCI port.

When I boot I get...

Sep 11 18:57:07 tbm network: Bringing up loopback interface:  succeeded
Sep 11 18:57:07 tbm kernel: Ethernet Channel Bonding Driver: v2.6.3-rh (June 8, 2005)
Sep 11 18:57:07 tbm kernel: bonding: MII link monitoring set to 200 ms
Sep 11 18:57:07 tbm kernel: divert: allocating divert_blk for bond0
Sep 11 18:57:07 tbm kernel: ACPI: PCI Interrupt 0000:01:0b.0[A] -> GSI 19 (level, low) -> IRQ 185
Sep 11 18:57:07 tbm kernel: ACPI: PCI Interrupt 0000:01:0b.0[A] -> GSI 19 (level, low) -> IRQ 185
Sep 11 18:57:07 tbm kernel: divert: allocating divert_blk for eth0
Sep 11 18:57:07 tbm kernel: eth0:
Sep 11 18:57:07 tbm kernel:       PrefPort:A  RlmtMode:Check Link State
Sep 11 18:57:08 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:08 tbm kernel:         Class:  internal Software error
Sep 11 18:57:08 tbm kernel:         Nr:  0x19e
Sep 11 18:57:08 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:08 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:08 tbm kernel:         Class:  internal Software error
Sep 11 18:57:08 tbm kernel:         Nr:  0x19e
Sep 11 18:57:08 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:09 tbm kernel: eth0: network connection up using port A
Sep 11 18:57:09 tbm kernel:     speed:           100
Sep 11 18:57:09 tbm kernel:     autonegotiation: yes
Sep 11 18:57:09 tbm kernel:     duplex mode:     full
Sep 11 18:57:09 tbm kernel:     flowctrl:        symmetric
Sep 11 18:57:09 tbm kernel:     irq moderation:  disabled
Sep 11 18:57:09 tbm kernel:     scatter-gather:  enabled
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:12 tbm kernel:         Nr:  0x19e
Sep 11 18:57:12 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:12 tbm kernel:         Nr:  0x19e
Sep 11 18:57:12 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:12 tbm kernel:         Nr:  0x19e
Sep 11 18:57:12 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm network: Bringing up interface eth0:  succeeded
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:12 tbm kernel:         Nr:  0x19e
Sep 11 18:57:12 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:12 tbm kernel:         Nr:  0x19e
Sep 11 18:57:12 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:12 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:12 tbm kernel:         Class:  internal Software error
Sep 11 18:57:13 tbm kernel:         Nr:  0x19e
Sep 11 18:57:13 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:13 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:13 tbm kernel:         Class:  internal Software error
Sep 11 18:57:13 tbm kernel:         Nr:  0x19e
Sep 11 18:57:13 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:13 tbm kernel: ACPI: PCI Interrupt 0000:01:09.0[A] -> GSI 17 (level, low) -> IRQ 201
Sep 11 18:57:13 tbm kernel: 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html
Sep 11 18:57:13 tbm kernel: 0000:01:09.0: 3Com PCI 3c905B Cyclone 100baseTx at 0xdf00. Vers LK1.1.19
Sep 11 18:57:13 tbm kernel: divert: allocating divert_blk for eth1
Sep 11 18:57:13 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:13 tbm kernel:         Class:  internal Software error
Sep 11 18:57:13 tbm kernel:         Nr:  0x19e
Sep 11 18:57:13 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:13 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:13 tbm kernel:         Class:  internal Software error
Sep 11 18:57:13 tbm kernel:         Nr:  0x19e
Sep 11 18:57:13 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:13 tbm wan: Starting wan succeeded
Sep 11 18:57:13 tbm kernel: ACPI: PCI Interrupt 0000:01:09.0[A] -> GSI 17 (level, low) -> IRQ 201
Sep 11 18:57:13 tbm dhclient: Internet Systems Consortium DHCP Client V3.0.1
Sep 11 18:57:13 tbm dhclient: Copyright 2004 Internet Systems Consortium.
Sep 11 18:57:13 tbm dhclient: All rights reserved.
Sep 11 18:57:13 tbm dhclient: For info, please visit http://www.isc.org/products/DHCP
Sep 11 18:57:13 tbm dhclient:
Sep 11 18:57:13 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:13 tbm kernel:         Class:  internal Software error
Sep 11 18:57:13 tbm kernel:         Nr:  0x19e
Sep 11 18:57:13 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:13 tbm irqbalance: Can't balance irqs on a uniprocessor system:  failed
Sep 11 18:57:13 tbm dhclient: Listening on LPF/eth1/00:01:02:bd:73:03
Sep 11 18:57:13 tbm dhclient: Sending on   LPF/eth1/00:01:02:bd:73:03
Sep 11 18:57:13 tbm dhclient: Sending on   Socket/fallback
Sep 11 18:57:13 tbm dhclient: DHCPREQUEST on eth1 to 255.255.255.255 port 67


Sep 11 18:57:26 tbm sysmon: Damonizing sysmon...
Sep 11 18:57:26 tbm sysmon: sysmon startup succeeded
Sep 11 18:57:26 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:26 tbm kernel:         Class:  internal Software error
Sep 11 18:57:26 tbm kernel:         Nr:  0x19e
Sep 11 18:57:26 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:26 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:26 tbm kernel:         Class:  internal Software error
Sep 11 18:57:26 tbm kernel:         Nr:  0x19e
Sep 11 18:57:26 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:28 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:28 tbm kernel:         Class:  internal Software error
Sep 11 18:57:28 tbm kernel:         Nr:  0x19e
Sep 11 18:57:28 tbm kernel:         Msg:  Vpd: Cannot read VPD keys
Sep 11 18:57:28 tbm kernel: eth0: -- ERROR --
Sep 11 18:57:28 tbm kernel:         Class:  internal Software error
Sep 11 18:57:28 tbm kernel:         Nr:  0x19e
Sep 11 18:57:28 tbm haldaemon: haldaemon startup succeeded
Sep 11 18:57:28 tbm squid[4462]: Loaded Icons.
Sep 11 18:57:29 tbm kernel:         Msg:  Vpd: Cannot read VPD keys



So the driver is not happy,  and I get the same thing on shutdown.
I Also think that the driver is leaking memory to the tune of 100k a day.

So I looked around the internet ank there are similar comments, and sugestions about using the skge or sky2 driver.

Looing through the admin console these drivers don't appear to be available, thoughthey are in the /lib/modules/ directory.

I am looking for comments before I start swapping kernel drivers.

Many thanks for any and all help

Brian
Title: Marvell 88E8001 NIC - Update
Post by: bscally on September 12, 2007, 09:06:13 PM
So it appears that this is a problem with the NIC eeprom code being corrupt.  I will try to update the eeprom and post a solution.  This is also an issue in several motherboards such as the Asus K8V Deluxe that use this part.  I will post a fix when I have worked out how to fix it

Many thansk.
Title: Re: Marvell 88E8001 NIC - Update
Post by: smeusr on September 13, 2007, 03:11:50 PM
So it appears that this is a problem with the NIC eeprom code being corrupt.  I will try to update the eeprom and post a solution.  This is also an issue in several motherboards such as the Asus K8V Deluxe that use this part.  I will post a fix when I have worked out how to fix it

Many thansk.

I'm looking forward to seeing your fix as I have an Asus K8V board that I want to install SME on.

Many Thanks.

Title: Re: Marvell 88E8001 NIC
Post by: bscally on September 13, 2007, 10:10:24 PM
So there appear to be two solutions.

1) Correct the VPD checksum
2) Change to a driver that does not worry about the VPD checksum

With the help of Marvell I confirmed both fixes.

I furst dumped the VPD
then using a Marvell utility ( that is available on their website as a DOS app ( it ran under freedos ))  I corrected the checksum.

This worked with the existing driver

I then put the corrupt VPD back and tried changing the driver to th sky2.ko driver ( This did not find the NIC ) and the skge.ko.  Neither of these drives checks the checksum
The skge.ko driver worked on my system so I set it in the /etc/modprobe.conf file as the driver for ETH0
Ther appears to be no automated way of using this driver.
Some internet users report sucess with sky2 ( though I think this is intended for the dual ethernet Yukon2 )

Finally I corrected the VPD again.
I have left the skge.ko in system, and will report any side effects.
It is also possible that a bios upgrade may fix the problem as well


Brian