Marvell 88E8040 PCI-E Fast Ethernet Controller not working in karmic

Bug #384403 reported by Alex Muntada on 2009-06-06
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EasyPeasy Overview
High
mb74
Linux
New
Undecided
Unassigned
linux (Ubuntu)
Medium
Unassigned

Bug Description

Binary package hint: linux-image-2.6.30-8-generic

The ethernet controller worked fine on jaunty. Upgraded to karmic and now doesn't work anymore. However, if I boot karmic from the previous jaunty kernel, then it works fine.

02:00.0 Ethernet controller [0200]: Marvell Technology Group Ltd. 88E8040 PCI-E Fast Ethernet Controller [11ab:4354]

These are the messages regarding sky2 module on kernel 2.6.30-8:

sky2 driver version 1.22
sky2 0000:02:00.0: enabling device (0000 -> 0003)
sky2 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
sky2 0000:02:00.0: setting latency timer to 64
sky2 0000:02:00.0: Can't set VPD size
sky2 0000:02:00.0: unsupported chip type 0xff
sky2 0000:02:00.0: PCI INT A disabled
sky2: probe of 0000:02:00.0 failed with error -95

These are the messages on kernel 2.6.28-11:

sky2 driver version 1.22
sky2 0000:02:00.0: enabling device (0000 -> 0003)
sky2 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
sky2 0000:02:00.0: setting latency timer to 64
sky2 0000:02:00.0: Yukon-2 FE+ chip revision 0
sky2 0000:02:00.0: irq 2301 for MSI/MSI-X
sky2 eth0: addr 00:24:81:4e:c6:e6
sky2 eth1: enabling interface
sky2 eth1: Link is up at 100 Mbps, full duplex, flow control both

Alex Muntada (alex.muntada) wrote :
Alex Muntada (alex.muntada) wrote :
Changed in linux (Ubuntu):
importance: Undecided → Medium
status: New → Triaged
tags: added: regression-potential
Andy Whitcroft (apw) on 2009-06-09
Changed in linux (Ubuntu):
assignee: nobody → Andy Whitcroft (apw)
status: Triaged → In Progress
Andy Whitcroft (apw) wrote :

There are only a few changes in this driver from Jaunty to Karmic. Given the error message I am suspicious of one specific change. As a first test I have backed out this suspicious change and have build some 32bit test kernels. If you could test that kernel and let me know if that works for you. Please report back here. Kernels can be found at the url below:

    http://people.ubuntu.com/~apw/lp384403-karmic/

Changed in linux (Ubuntu):
status: In Progress → Incomplete
Alex Muntada (alex.muntada) wrote :

That new test kernel works fine:

$ dmesg | grep sky2
[ 2.310836] sky2 driver version 1.22
[ 2.310999] sky2 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 2.311040] sky2 0000:02:00.0: setting latency timer to 64
[ 2.311147] sky2 0000:02:00.0: Yukon-2 FE+ chip revision 0
[ 2.311894] sky2 0000:02:00.0: irq 26 for MSI/MSI-X
[ 2.314602] sky2 eth0: addr 00:24:81:4e:c6:e6
[ 19.982979] sky2 eth1: enabling interface
[ 22.791294] sky2 eth1: Link is up at 100 Mbps, full duplex, flow control both

Let me know if you need the whole kern.log.
Thanks!

Changed in linux (Ubuntu):
status: Incomplete → New
Andy Whitcroft (apw) on 2009-06-11
Changed in linux (Ubuntu):
status: New → In Progress
Andy Whitcroft (apw) wrote :

This bug seems to be triggered by the commit below, I have emailed the upstream:

  commit 3834507d0c5480a0f05486c2fb57ed18fd179a83
  Author: Stephen Hemminger <email address hidden>
  Date: Tue Feb 3 11:27:30 2009 +0000

    sky2: set VPD size

    Read configuration register during probe and use it to size the
    available VPD. Move existing code using same register slightly
    earlier in probe handling.

    Signed-off-by: Stephen Hemminger <email address hidden>
    Signed-off-by: David S. Miller <email address hidden>

Andy Whitcroft (apw) wrote :

Had a conversation with Stephen on this bug and he came back with an updated patch. I have applied this patch to the karmic kernel and build a new test kernel again at the URL below. If you could test this updated kernel for us and report back here that would be helpful.

    http://people.ubuntu.com/~apw/lp384403-karmic/

Changed in linux (Ubuntu):
status: In Progress → Incomplete
Alex Muntada (alex.muntada) wrote :

It works OK too:

[ 2.551240] sky2 driver version 1.22
[ 2.551323] sky2 0000:02:00.0: enabling device (0000 -> 0003)
[ 2.551348] sky2 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 2.551376] sky2 0000:02:00.0: setting latency timer to 64
[ 2.551429] sky2 0000:02:00.0: Yukon-2 FE+ chip revision 0
[ 2.551626] sky2 0000:02:00.0: irq 26 for MSI/MSI-X
[ 2.553698] sky2 eth0: addr 00:24:81:4e:c6:e6
[ 20.357667] sky2 eth1: enabling interface
[ 23.184510] sky2 eth1: Link is up at 100 Mbps, full duplex, flow control both

However, the sky2 module reports an error when booting on batteries after shutdown, but this is related to bug 297263, not this one AFAICS:

[ 2.581071] sky2 driver version 1.22
[ 2.581169] sky2 0000:02:00.0: enabling device (0000 -> 0003)
[ 2.581195] sky2 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 2.581223] sky2 0000:02:00.0: setting latency timer to 64
[ 2.581264] sky2 0000:02:00.0: unsupported chip type 0xff
[ 2.581293] sky2 0000:02:00.0: PCI INT A disabled
[ 2.581311] sky2: probe of 0000:02:00.0 failed with error -95

Changed in linux (Ubuntu):
status: Incomplete → New
Changed in linux (Ubuntu):
status: New → Triaged
Andy Whitcroft (apw) wrote :

Thanks for the prompt feedback. Passed that back to upstream and will track that patch so it gets into our tree.

Andy Whitcroft (apw) wrote :

Ok this has been accepted upstream and hit the mainline kernel, should hit our kernels in the 2.6.31-rc1 resync.

commit 6cc90a5a6061428358d0f726a53fb44af5254111
Author: Stephen Hemminger <email address hidden>
Date: Thu Jun 11 07:03:47 2009 +0000

    sky2: don't look for VPD size

    The code to compute VPD size didn't handle some systems that use
    chip without VPD. Also some of the newer chips use some additional
    registers to store the actual size, and wasn't worth putting the
    additional complexity in, so just remove the code.

    No big loss since the code to set the VPD size was only a
    convenience so that utilities would not read the extra space past
    the end of the available VPD.

    Move the first PCI config read earlier to detect bad hardware
    where it returns all ones and refuse loading driver before furthur
    damage.

    Signed-off-by: Stephen Hemminger <email address hidden>
    Tested-by: Andy Whitcroft <email address hidden>
    Signed-off-by: David S. Miller <email address hidden>

Changed in linux (Ubuntu):
status: Triaged → In Progress
Steve Langasek (vorlon) wrote :

We appear to have 2.6.31-rc1 in karmic; should this bug be closed?

Alex Muntada (alex.muntada) wrote :

linux-image-2.6.31-2 works fine on karmic, so the upstream fix was already included.

Changed in linux (Ubuntu):
status: In Progress → Fix Released
BullCreek (jeff-openenergy) wrote :

Running karmic alpha6 (2.6.31-10-generic), this my 88E8001 based sky2 adapter works fine at 100Mb/s, but won't work at 1000Mb/s despite various ethtool hacks I've tried. It worked fine in Gutsy thru Jaunty. It seems there is another patch that may be relevant that hopefully we can get included in Karmic in time:

http://patchwork.ozlabs.org/patch/31410/

I haven't tried it but it looks like it would probably fix the problem.

BullCreek (jeff-openenergy) wrote :

Oops - I was looking at the wrong screen when I typed the chipset in my last post - should have been:

02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 20)

and the relevant kernel snippet:

[ 4586.187722] sky2 eth0: Link is up at 100 Mbps, full duplex, flow control both

Jon Ramvi (ramvi) on 2009-12-13
Changed in easypeasy-project:
assignee: nobody → mb74 (mrb74)
importance: Undecided → High
status: New → Confirmed
milestone: none → 1.6
Changed in linux (Ubuntu):
assignee: Andy Whitcroft (apw) → gary winegar (winegar1943)
assignee: gary winegar (winegar1943) → nobody
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers