[opensuse-factory] Hardware Support: Marvell 88E8056
Hi, Can anyone help me activate the Marvel 88E8056 gigabit Ethernet controller on my system? It does not seem to be recognized: Here are two pertinent entries of "lspci" output: % lspci -vv ... 02:00.0 Ethernet controller: Marvell Technology Group Ltd. Unknown device 4364 (rev 12) Subsystem: SysKonnect Unknown device 4340 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0, Cache Line Size 08 Interrupt: pin A routed to IRQ 10 Region 0: Memory at fe0fc000 (64-bit, non-prefetchable) [size=16K] Region 2: I/O ports at 9800 [size=256] Expansion ROM at fe0c0000 [disabled] [size=128K] Capabilities: [48] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=1 PME- Capabilities: [50] Vital Product Data Capabilities: [5c] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable- Address: 0000000000000000 Data: 0000 Capabilities: [e0] Express Legacy Endpoint IRQ 0 Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag- Device: Latency L0s unlimited, L1 unlimited Device: AtnBtn- AtnInd- PwrInd- Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported- Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- Device: MaxPayload 128 bytes, MaxReadReq 512 bytes Link: Supported Speed 2.5Gb/s, Width x1, ASPM L0s L1, Port 0 Link: Latency L0s <256ns, L1 unlimited Link: ASPM Disabled RCB 128 bytes CommClk+ ExtSynch- Link: Speed 2.5Gb/s, Width x1 ... 05:04.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 14) Subsystem: ASUSTeK Computer Inc. Marvell 88E8001 Gigabit Ethernet Controller (Asus) 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: 64 (5750ns min, 7750ns max), Cache Line Size 08 Interrupt: pin A routed to IRQ 225 Region 0: Memory at feab4000 (32-bit, non-prefetchable) [size=16K] Region 1: I/O ports at b400 [size=256] Expansion ROM at 88400000 [disabled] [size=128K] Capabilities: [48] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=1 PME- Capabilities: [50] Vital Product Data ... The first Ethernet device shown is the 88E8056. The second device, the 88E8001 works, though the system configures the wrong module (a blacklisted one at that!) to drive it. What can I do to activate this device? Thanks. Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Hello again, A follow-up to this: On Sunday 15 October 2006 08:08, Randall R Schulz wrote:
Hi,
Can anyone help me activate the Marvel 88E8056 gigabit Ethernet controller on my system? It does not seem to be recognized:
Here are two pertinent entries of "lspci" output:
% lspci |egrep -i ethernet 02:00.0 Ethernet controller: Marvell Technology Group Ltd. Unknown device 4364 (rev 12) 05:04.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 14) By poking around <http://www.kernel.org/> I discovered a very simple change to sky2.c in Linux kernel 2.6.19 (-rc2) that enables support for the 88E8056 as it is identified in current Asus P5B mainboards (and, probably, others, as well): <http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blobdiff;h=8f8799c3f9d16704d07e050e6032f5fc49ba035f;hp=de91609ca11230deb09a772268727c41a9f21aff;hb=5f5d83fdbfb50ffb6f5fbf5fd69bc791d9d5cd20;f=drivers/net/sky2.c> The diff from this page is: --- drivers/net/sky2.c +++ drivers/net/sky2.c @@ -121,6 +121,7 @@ static const struct pci_device_id sky2_i { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4361) }, { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4362) }, { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4363) }, + { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4364) }, { 0 } }; It seems this change will allow this Ethernet controller to be activated. I'm uncertain about how openSUSE works. Should I file a bug report to get this change back-ported to the kernel being used by openSUSE for 10.2? Or is kernel 2.6.19 the ultimate version for 10.2? And if so, will this change be present no later than the final release of 10.2? Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
* Randall R Schulz <rschulz@sonic.net> [Oct 15. 2006 18:18]: [...]
By poking around <http://www.kernel.org/> I discovered a very simple change to sky2.c in Linux kernel 2.6.19 (-rc2) that enables support for the 88E8056 as it is identified in current Asus P5B mainboards (and, probably, others, as well):
[...]
+ { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4364) },
If its just an additional PCI id, this can be passed to the driver at runtime. IIRC, there is even a YaST dialog for this. Klaus --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Klaus, On Monday 16 October 2006 00:06, Klaus Kaempf wrote:
* Randall R Schulz <rschulz@sonic.net> [Oct 15. 2006 18:18]: [...]
By poking around <http://www.kernel.org/> I discovered a very simple change to sky2.c in Linux kernel 2.6.19 (-rc2) that enables support for the 88E8056 as it is identified in current Asus P5B mainboards (and, probably, others, as well):
[...]
+ { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4364) },
If its just an additional PCI id, ...
Yes, clearly.
this can be passed to the driver at runtime.
How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running?
IIRC, there is even a YaST dialog for this.
Really? Do you know how or where this is done? I thought I'd been through the whole thing (at least everything relevant to networking), but I must have overlooked that one.
Klaus
Thanks for the information. Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
* Randall R Schulz <rschulz@sonic.net> [2006-10-16 15:18]:
this can be passed to the driver at runtime.
How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running?
If the driver isn't specially prepared (i.e. module paremeters), it cannot. Even if it is, the driver needs to be loaded manually.
IIRC, there is even a YaST dialog for this.
Really? Do you know how or where this is done? I thought I'd been through the whole thing (at least everything relevant to networking), but I must have overlooked that one.
I think there's no YaST dialog. It would be a driver specific issue. Bernhard -- "Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." -- Isaac Newton
Bernhard Walle wrote:
* Randall R Schulz <rschulz@sonic.net> [2006-10-16 15:18]:
this can be passed to the driver at runtime. How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running?
If the driver isn't specially prepared (i.e. module paremeters), it cannot.
No. See new_id in sysfs once the driver is loaded.
Even if it is, the driver needs to be loaded manually.
Yes. Regards, Carl-Daniel -- http://www.hailfinger.org/ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Hello, * Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> [2006-10-16 16:33]:
Bernhard Walle wrote:
* Randall R Schulz <rschulz@sonic.net> [2006-10-16 15:18]:
this can be passed to the driver at runtime. How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running?
If the driver isn't specially prepared (i.e. module paremeters), it cannot.
No. See new_id in sysfs once the driver is loaded.
Which kerenl introduced this? On 2.6.16 it's not present. Bernhard -- "Bei der Eroberung des Weltraums sind zwei Probleme zu lösen: die Schwerkraft und der Papierkrieg. Mit der Schwerkraft wären wir fertig geworden." -- Wernher von Braun
Bernhard Walle wrote:
Hello,
* Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> [2006-10-16 16:33]:
Bernhard Walle wrote:
* Randall R Schulz <rschulz@sonic.net> [2006-10-16 15:18]:
this can be passed to the driver at runtime. How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running? If the driver isn't specially prepared (i.e. module paremeters), it cannot. No. See new_id in sysfs once the driver is loaded.
Which kerenl introduced this? On 2.6.16 it's not present.
For your enlightenment: # find /sys/ -name new_id The feature is in all kernels since at least 2.6.8 (SUSE Linux 9.2), maybe even before that. Regards, Carl-Daniel -- http://www.hailfinger.org/ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
* Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> [2006-10-16 17:03]:
Bernhard Walle wrote:
Hello,
* Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> [2006-10-16 16:33]:
Bernhard Walle wrote:
* Randall R Schulz <rschulz@sonic.net> [2006-10-16 15:18]:
this can be passed to the driver at runtime. How is that done? I haven't been able to find a comprehensive specification or list of kernel command-line options. Or do you mean it can be done even after the system is running? If the driver isn't specially prepared (i.e. module paremeters), it cannot. No. See new_id in sysfs once the driver is loaded.
Which kerenl introduced this? On 2.6.16 it's not present.
For your enlightenment: # find /sys/ -name new_id
Oh, sorry, I only searched in the /sys/devices tree.
The feature is in all kernels since at least 2.6.8 (SUSE Linux 9.2), maybe even before that.
Thanks. Bernhard -- F: Wie viele Microsoft-Leute braucht man um eine Glühbirne zu wechseln? A: Vier. Der erste ersetzt die Birne, der zweite ändert die Fassung, so dass Netscape-Glübirnen nicht reinpassen. Der dritte baut eine Kurzschlussautomatik ein, die ausgelöst wird, wenn jemand eine Glühbirne von Sun einsetzen will. Und der vierte überzeugt das amerikanische Justizministerium, dass das alles fairer Wettbewerb ist.
You has the Ethernet controller enabled in the bios? I have: lspci -vv 00:09.0 Ethernet controller: 3Com Corporation 3c940 10/100/1000Base-T [Marvell] (rev 12) Subsystem: ASUSTeK Computer Inc. A7V600/P4P800/K8V motherboard 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 (5750ns min, 7750ns max), Cache Line Size 08 Interrupt: pin A routed to IRQ 177 Region 0: Memory at e3800000 (32-bit, non-prefetchable) [size=16K] Region 1: I/O ports at d800 [size=256] Capabilities: [48] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=1 PME- Capabilities: [50] Vital Product Data
With lspci |egrep -i ethernet 00:09.0 Ethernet controller: 3Com Corporation 3c940 10/100/1000Base-T [Marvell] (rev 12) 2006/10/15, Randall R Schulz <rschulz@sonic.net>:
Hi,
Can anyone help me activate the Marvel 88E8056 gigabit Ethernet controller on my system? It does not seem to be recognized:
Here are two pertinent entries of "lspci" output:
% lspci -vv ... 02:00.0 Ethernet controller: Marvell Technology Group Ltd. Unknown device 4364 (rev 12) Subsystem: SysKonnect Unknown device 4340 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0, Cache Line Size 08 Interrupt: pin A routed to IRQ 10 Region 0: Memory at fe0fc000 (64-bit, non-prefetchable) [size=16K] Region 2: I/O ports at 9800 [size=256] Expansion ROM at fe0c0000 [disabled] [size=128K] Capabilities: [48] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=1 PME- Capabilities: [50] Vital Product Data Capabilities: [5c] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable- Address: 0000000000000000 Data: 0000 Capabilities: [e0] Express Legacy Endpoint IRQ 0 Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag- Device: Latency L0s unlimited, L1 unlimited Device: AtnBtn- AtnInd- PwrInd- Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported- Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- Device: MaxPayload 128 bytes, MaxReadReq 512 bytes Link: Supported Speed 2.5Gb/s, Width x1, ASPM L0s L1, Port 0 Link: Latency L0s <256ns, L1 unlimited Link: ASPM Disabled RCB 128 bytes CommClk+ ExtSynch- Link: Speed 2.5Gb/s, Width x1 ... 05:04.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 14) Subsystem: ASUSTeK Computer Inc. Marvell 88E8001 Gigabit Ethernet Controller (Asus) 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: 64 (5750ns min, 7750ns max), Cache Line Size 08 Interrupt: pin A routed to IRQ 225 Region 0: Memory at feab4000 (32-bit, non-prefetchable) [size=16K] Region 1: I/O ports at b400 [size=256] Expansion ROM at 88400000 [disabled] [size=128K] Capabilities: [48] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=1 PME- Capabilities: [50] Vital Product Data ...
The first Ethernet device shown is the 88E8056.
The second device, the 88E8001 works, though the system configures the wrong module (a blacklisted one at that!) to drive it.
What can I do to activate this device?
Thanks.
Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
--------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Juan, On Monday 16 October 2006 10:09, Juan Erbes wrote:
You has the Ethernet controller enabled in the bios? ...
I have much more than that... Now. I just applied the patch to the sky2.c driver code and rebuilt my kernel modules. Now I have two active Ethernet controllers, one for the wild Internet and one for my internal network. However, I have not been able to find the details of how to use the new_id files in /sys/bus/... If anyone can point me to that, I'd like to possess the knowledge. Randall Schulz --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
2006/10/16, Randall R Schulz <rschulz@sonic.net>:
Juan,
On Monday 16 October 2006 10:09, Juan Erbes wrote:
You has the Ethernet controller enabled in the bios? ...
I have much more than that... Now.
I just applied the patch to the sky2.c driver code and rebuilt my kernel modules. Now I have two active Ethernet controllers, one for the wild Internet and one for my internal network.
However, I have not been able to find the details of how to use the new_id files in /sys/bus/... If anyone can point me to that, I'd like to possess the knowledge.
My ethernet module driver is sk98lin. My ethernet chip is 3com3C940 It appears that You has other chip. --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Monday 16 October 2006 10:27, Juan Erbes wrote:
2006/10/16, Randall R Schulz <rschulz@sonic.net>:
Juan,
On Monday 16 October 2006 10:09, Juan Erbes wrote:
You has the Ethernet controller enabled in the bios? ...
I have much more than that... Now.
I just applied the patch to the sky2.c driver code and rebuilt my kernel modules. Now I have two active Ethernet controllers, one for the wild Internet and one for my internal network.
...
My ethernet module driver is sk98lin. My ethernet chip is 3com3C940
sk98lin is blacklisted! Check in "/etc/modprobe.d/blacklist". But upon initial installation, that's the driver that was selected for my other Ethernet controller, a Marvell 88E8001, which rendered it inoperable.
It appears that You has other chip.
Yes. The subject of this thread does make it explicit... RRS --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
participants (5)
-
Bernhard Walle
-
Carl-Daniel Hailfinger
-
Juan Erbes
-
Klaus Kaempf
-
Randall R Schulz