Subject: Re: Intel Dual Gigabit Adapter i82546GB not supported...
To: Jonathan Stone <jonathan@dsg.stanford.edu>
From: Christoph Kaegi <kgc@zhwin.ch>
List: tech-net
Date: 11/05/2004 09:54:21
On 04.11-08:52, Jonathan Stone wrote:
>
> I know for a fact that the i82546EB works fine with NetBSD. I've used
> several 82546 dual-port parts with the wm driver, both on-mohterboard
> (Intel server boards), and the PCI-X dual-port card.
Yes, there are two i82546EB on the motherboard which work ok.
That's an Supermicro X5DP8-G2 motherboard, btw.
> Last I looked at the wm(4) driver, it had logic to compute a MAC
> address for the 2nd chanel, by toggling the low-oder MAC address bit
> of the first channel. (I guess Intel didn't burn in two MAC
> addresses). I suspect that wm(4) needs a one-line change to also do
> that for the 82546GB.
When I run the Intel diags.exe, it seems like they actually do
have two different MAC addresses. The first one was
00:04:23:a7:b9:cc, the second 00:04:23:a7:b9:cd, as expected.
>
> If you're adventurous, try changing code just below the comment
>
> /*
> * Toggle the LSB of the MAC address on the second port
> * of the i82546.
> */
>
> so the `if()' also accepts sc->type == WM_T_82546_3. That should fix
> your dual-MAC-address problem. Please let me know if it does.
I tried this:
---------------------------------- 8< ----------------------------------
1052c1052
< if (sc->sc_type == WM_T_82546) {
---
> if (sc->sc_type == WM_T_82546 || sc->sc_type == WM_T_82546_3) {
---------------------------------- 8< ----------------------------------
but it didn't work as expected:
---------------------------------- 8< ----------------------------------
# dmesg |grep wm[23]
wm2 at pci5 dev 1 function 0: Intel i82546GB 1000BASE-T Ethernet, rev. 3
wm2: interrupting at irq 11
wm2: 64-bit 66MHz PCIX bus
wm2: 256 word (8 address bits) MicroWire EEPROM
wm2: Ethernet address 00:04:23:a7:b9:cc
makphy2 at wm2 phy 1: Marvell 88E1011 Gigabit PHY, rev. 5
wm3 at pci5 dev 1 function 1: Intel i82546GB 1000BASE-T Ethernet, rev. 3
wm3: interrupting at irq 11
wm3: 64-bit 66MHz PCIX bus
wm3: 256 word (8 address bits) MicroWire EEPROM
wm3: Ethernet address 00:04:23:a7:b9:cc
makphy3 at wm3 phy 1: Marvell 88E1011 Gigabit PHY, rev. 5
---------------------------------- 8< ----------------------------------
I gladly try out even more adventurous things to get this
working. :-)
Thanks in advance
Chris
--
----------------------------------------------------------------------
Christoph Kaegi kgc@zhwin.ch
----------------------------------------------------------------------