View Single Post
Old 08-24-06, 01:58 PM   #18
Registered User
Join Date: Jan 2005
Posts: 135
Default Re: Nvidia has open source drivers at

Originally Posted by netllama
I'll try, as best as I can, to respond to all the recent questions regarding the 'new' open source driver (1.11) package. Please see my sticky post for additional details:

All that you need for any NVIDIA NIC is the forcedeth driver. There is nothing special about the driver package on NVIDIA's website which restricts it exclusively to MCP55. The driver package in the above URL includes pre-compiled RPMs and driver disks (which can be used for adding hardware support when installing the associated Linux distribution). Additionally, it provides the source for the forcedeth, sata_nv and amd74xx.c drivers. One thing to note is that the source is only included (under the corresponding distribution subdirectory) for distributions which do not already ship with the latest version of the corresponding driver.

In the case of SuSE-10.1, there isn't currently an explicit driver package, however you can build the new forcedeth for your SuSE-10.1 kernel fairly easily. Create a new Makefile the line:

obj-m := forcedeth.o

Then, type the command "make -C /usr/src/<kernel> SUBDIRS=$PWD modules" to build the forcedeth module for the kernel you specified. SuSE-10.1 already ships with the same version of sata_nv & amd74xx which is included in the 1.11 driver package.

Thank you.
I'll confess to not applying the sticky info to my knowledge base. The date on it is July, but 1.11 was relased this week so I did not expect it to be applicable.

Thanks for the make & compile info, as well as letting me know that " same version of sata_nv & amd74xx " are already being used.

I had a bit of confusion trying to figure out which forcedeth.c to use
This kernel,, has forcedeth.c version 0.49
#> grep \#define.FORCEDETH.VERSION \" /usr/src/linux-

/usr/src/linux- FORCEDETH_VERSION         "0.49"
After looking at some of the code, it really is, apparently, version 0.49.
However, ALL of the 1.11 included source files are shown as version 0.56:
#> grepr \#define.FORCEDETH.VERSION \" *

Fedora4/source/forcedeth.c:123:#define FORCEDETH_VERSION                "0.56"
Fedora5/source/forcedeth.c:123:#define FORCEDETH_VERSION                "0.56"
RHEL3_U4/source/forcedeth.c:122:#define FORCEDETH_VERSION               "0.56"
RHEL3_U5/source/forcedeth.c:122:#define FORCEDETH_VERSION               "0.56"
RHEL3_U6/source/forcedeth.c:122:#define FORCEDETH_VERSION               "0.56"
RHEL3_U7/source/forcedeth.c:122:#define FORCEDETH_VERSION               "0.56"
RHEL4_U1/source/forcedeth.c:123:#define FORCEDETH_VERSION               "0.56"
RHEL4_U2/source/forcedeth.c:123:#define FORCEDETH_VERSION               "0.56"
RHEL4_U3/source/forcedeth.c:123:#define FORCEDETH_VERSION               "0.56"
SLES9_SP1/source/forcedeth.c:123:#define FORCEDETH_VERSION              "0.56"
SLES9_SP2/source/forcedeth.c:123:#define FORCEDETH_VERSION              "0.56"
SLES9_SP3/source/forcedeth.c:123:#define FORCEDETH_VERSION              "0.56"
SuSE10/source/forcedeth.c:123:#define FORCEDETH_VERSION         "0.56"
Considering that some of the files are different sizes, that made me even more confused.
diff Fedora4/source/forcedeth.c RHEL3_U7/source/forcedeth.c
to compare a couple that have different sizes brings up the next issue.
The files are different(no surprise) but they are the same version number(huge surprise). You just cannot do that.
It looks like 0.56 got hacked to work with some of the older distros but whoever hacked it did not either revert to 0.51 ('cause apparently 0.52 got whacked out completely) or annotate the version.
Two files with same name but different code absolutely cannot have the same version number. Of course maybe I missed something but if the above is true, please get somebody to fix it. ...

Besides, version 0.56 should build and run on the older distros with proper config options ... but if a mod' is mandatory and nVidia *nicely* fixed 0.56 so it will, then the "fixed" 0.56 needs to be #define'd as 0.56-reversion or, perhaps, just rename it to forcedeth_nv.c so we all know it is forcedeth but is nVidia's *special* version of it.

AND, while on that subject, someone should look at the sata_nv.c, & etc too since some of those are apparently different also:
#> lloc sata_nv.c`
-rw-rw-rw- 1 19K 2006-03-23 14:16 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/Fedora4/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-05-01 14:38 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL3_U4/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-04-05 13:56 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL3_U5/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-04-05 13:56 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL3_U6/source/sata_nv.c
-rw-rw-rw- 1 20K 2006-05-19 21:37 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL3_U7/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-03-23 14:16 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL4_U1/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-03-23 14:16 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL4_U2/source/sata_nv.c
-rw-rw-rw- 1 20K 2006-05-19 21:38 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/RHEL4_U3/source/sata_nv.c
-rw-rw-rw- 1 21K 2006-05-23 06:43 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/SLES9_SP1/source/sata_nv.c
-rw-rw-rw- 1 19K 2006-05-19 21:42 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/SLES9_SP2/source/sata_nv.c
-rw-rw-rw- 1 20K 2006-05-19 16:23 /NFORCE-Linux-x86-1.11/NV_MCP55_Linux_DRV_PKG_v1.11/SLES9_SP3/source/sata_nv.c
-rw-r--r-- 1 18K 2006-03-19 23:53 /usr/src/linux-
It's 13:23:22 CDT (UTC-0500) on Thu Aug 24, week 34 in 2006.
Different sizes and different code too ... which does not matter as long as version jives but it does not:

#> grepr \#define.DRV_VERSION \" *

Fedora4/source/sata_nv.c:51:#define DRV_VERSION                           "0.6"
RHEL3_U4/source/sata_nv.c:47:#define DRV_VERSION                        "0.03"
RHEL3_U5/source/sata_nv.c:51:#define DRV_VERSION                        "0.6"
RHEL3_U6/source/sata_nv.c:51:#define DRV_VERSION                        "0.6"
RHEL3_U7/source/sata_nv.c:51:#define DRV_VERSION                        "0.10"
RHEL4_U1/source/sata_nv.c:51:#define DRV_VERSION                        "0.6"
RHEL4_U2/source/sata_nv.c:51:#define DRV_VERSION                        "0.6"
RHEL4_U3/source/sata_nv.c:51:#define DRV_VERSION                        "0.10"
SLES9_SP1/source/sata_nv.c:51:#define DRV_VERSION                       "0.10"
SLES9_SP2/source/sata_nv.c:51:#define DRV_VERSION                       "0.10"
SLES9_SP3/source/sata_nv.c:51:#define DRV_VERSION                       "0.10"
TO compound the(my) problem, the openSUSE kernel source sata_nv.c code is claiming 0.8 revision but it contains 0.10 changelog info ...
I don't know what it really is yet.

I did not look at others...
I wish I had never looked at any of this stuff. Ignorance is bliss...

Thanks again for taking the time to be here & respond and special thanks to nVidia for the years of linux support. I still have not bought any of that other major brand because of it(for either Linux or MS OS systems).

When two people meet and exchange gifts, each has one object.
When two people meet and exchange ideas, each has two ideas.
... Open Source. Just do it.

System: BFG GTX260^2 graphics but has ** TERRIBLE BLINKING OS **
SuperMicro H8DCi+AMI BIOS;dual Opt'285;8GB;LSI 320-2x w/ 6xU320 Fuji' MAXs in RAID 10; 4xSATAII on LSI 3041E for backup. Multi-boot Mandriva Linux, openSUSE, WinXPx64 & Win2k-AS; Creative Audigy2-Digital audio.
Gigabyte GA-2CEWH & NVRAID are GONE ... Finally!!
fhj52 is offline   Reply With Quote