NVIDIA Ethernet & invalid MAC

From: Konstantin Kalin
Date: Tue Oct 16 2007 - 10:09:43 EST


Hello,

Recently we've got some computers with new motherboard having NVidia chipset. The motherboard has nforce12 & nforce13 Ethernet cards. I've noticed that MAC address is setup random each boot. I debugged the driver and found that these cards have right-byte order of MAC address but the driver is expecting incorrect byte-order for these models. I made hardcode the driver and MAC address became valid. Also I tried to understand that difference in this revision of the chipset. But I couldn't find anything interesting. I'm ready continue the investigation to do correct changes in the driver but I need an advice.

P.S. It's simple to add DEV_HAS_CORRECT_MACADDR to pci_device_tlb for these types of Ethernet. But I think it's not right decision because it would break older revisions of these models.

[root@tfm ~]# lspci -vvv
.....
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a1)
Subsystem: ASUSTeK Computer Inc. Unknown device 816a
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 (250ns min, 5000ns max)
Interrupt: pin A routed to IRQ 201
Region 0: Memory at fe02b000 (32-bit, non-prefetchable) [size=4K]
Region 1: I/O ports at c800 [size=8]
Capabilities: [44] Power Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable+ DSel=0 DScale=0 PME-
........
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/