GPL'ed Drivers For NVIDIA nForce Ethernet Devices
An anonymous reader writes "Manfred Spraul has released a GPLed driver for the ethernet device found in motherboards based on the Nvidia Nforce/Nforce2/Nforce3 chipsets. Drivers provided by Nvidia on the other hand, are closed. Andrew Morton has integrated this driver in the 2.6.9-mm2 release of his mm tree. And if you are using a 2.4x kernel, you may want to check out this post."
Its great that drivers are available for this new chipset, but is this really worth being a /. topic???
Wow, I didn't know the kernel left -test status and increased 9 versions since yesterday. Andrew Morton must be on top of things to get a -mm patch out that quick, too.
;)
Good job editors.
This is great - now I just need to get the XFree86 nv driver to play nice with my nForce2 w/ integrated video, and I'll be able to run a non-tainted kernel.
:(
Has anybody else had problems with X on such a board? There's apparantly a bug somewhere in the rendering code that crops up because the nv driver doesn't use hardware acceleration as much as the nvidia driver. I filed bug #811 on bugzilla, but no resolution yet
I always thought most modern ethernet cards were compatible with some generic brands.. like ne2000.
If I understand correctly, the Ethernet is built right onto the mainboard, with the chipset.
Audio processing went down this route a while back. Old soundcards aren't needed when the functionality was built into the chipset.
For high speed networking (like GigE), avoiding the PCI bus can potentially be faster.
"Provided by the management for your protection."
A good analogy would be there are 5 people all trying to call one guy, and Mr. Ethernet is one of the people. By being in the chipset and not on the bus, he doesn't have to keep trying to call and getting a busy signal, he can just say his message. This is because Mr. CPU could talk to 3 or 4 people at a time (he's that fast), but the phone (PCI bus) only has one line. He just skipps the problem.
OK, that's a bit simplified, but the fact is that not waiting on bus contention is good. The ethernet doesn't have to wait for/fight against the sound card, the tv tuner, and the add in raid controller.
On a side note, while NE2000 is a standard, it's for ISA, and as far as I know the NE2000 PCI standard never got big. I could be wrong. And even then, that's like using VESA to controll your GeForce FX video card. You can do it, but you could lose alot of the performance and features that you paid for because VESA doesn't know about 'em.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
The transactions occur across a much faster interconnect (which can go by different names according to the chipset design), but it's still linear and you still access resources in a PCI-like manner. Just faster.
The only bus that was different was ISA.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
All true, however in the context of the story. Having GPL drivers means that people with ethernet connections to the internet i.e. Cable or DSL can connect and get the drivers they need from Nvidia's site. The VESA standard and the 'nv' drivers allows one to have the basic functionality to at least get the OS installed and get 'something' done.
When NVDIA's binary drivers are with every distribution, then the GPL driver will be of less concern.
I know integrated sound cards sap a much larger portion of CPU time then PCI cards, making them a poor choice for gamers. I've avoided using integrated Ethernet on the same principle. Should I reconsider?
> Should I reconsider?
No.
You will see no practical benefits from onboard ethernet, beyond the obvious one that you won't have to buy a seperate ethernet card. The poster to whom you were replying knows nothing and is talking out of his arse.
How much I care on the Y, title index on the X.
____
/ |
/ |
1.0| / |
| / |
0.5| / |
| _________________/ |
0.0|/_ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _
GPL'ed Drivers for NVIDIA nForce...
Way to get my hopes up, Slashdot. I guess my kernel will continue to be tainted.
Under 2.6.0-test9-mm2 this driver works good for me. I am managing to download from the net at full speeds (120kb/sec), and transfer large files over my lan at 11mb/sec (which is as good as I got with the nvidia binary driver).
For an alpha driver, I think thats pretty impressive. I wasn't even expecting it to work.
However, I did read someone saying that under heavy network load, the driver did not perform as well as the nvidia binary one (he was running a FTP server or something).
Apart from the non-GPL'd status, I'm not aware of big problems with ethernet drivers for nForce boards - as noted elsewhere in this thread they seem to be functionally supported out of the box.
But getting the sound components of the nForce board to work is altogether more challenging - the nVidia drivers are very basic and don't always work. Various patches exist (e.g. this entry from the Gentoo Discussion Forum) and some people report installing SBLive type cards to get around the problem.
Apparently one problem that is preventing GPL'd audio drivers is that nVidia won't release the technical specifications of the nForce audio components...
Reverse engineering the binary driver for the ethernet chip and making a GPL'd source tree for anyone to review is great. :-)
However, I don't think that it offers much except for hypothetical multiplatform portability. Without any specs it would be extremely hard to modify the driver and it's even harder to add new features.
Now I just hope someone has the time and skills to reverse engineer the NVidia video driver and GL libraries so that my 2.6.0-test9-mm2 kernel wouldn't give me pages of tracebacks every time I launch X using the nvidia driver.
No, you shouldn't.
The reason for this is that the vast majority of 'integrated sound cards' are not really dsp's, but are mere codecs. Thus they hog the CPU for many, if not all sound processing tasks.
On the other hand, integrated ethernet devices aren't codecs - they're just those ethernet chips planted onto the main motherboard PCB instead of a separate card. They can have a slight performance benefit because of a high-speed interconnection with the chipset, too.
So you're saying that instead of going from the processor through an interconnect to the device via the PCI bus, they instead go from the processor through an interconnect to a device directly without going through the PCI bus, but this is somehow not "skipping" the PCI bus?
God, you suck.
but it isn't really a PCI bus since it's probably hooked up directly to the northbridge and nothing else, maybe through an chip that emulates an "empty" PCI bus.
The reason they do it that way is because the chip itself has pins that are designed to be wired directly to a PCI bus. They would use the same chip, and provide it the interface it needed, but it wouldn't be on the PCI bus that your add-on cards resides. And there'd be little to no overhead since it would always be the bus master.
OK?
Well according to this guy OSS driver writers are incapable of writing one (look through his posting history first, then look at who's on the Xfree86 team).
I think some people simply have blind-spots that no amount of debate will fix.
The best would be if the OSS community came up with their own card in line with our principles.
Irony would be us doing that, and soon after all those "secrets we can't release" getting released.