Nvidia drivers

For drivers and kernel modules.
Post Reply
Message
Author
User avatar
shinobar
Posts: 2672
Joined: Thu 28 May 2009, 09:26
Location: Japan
Contact:

File server restarted

#106 Post by shinobar »

The file server is restarted at 2016-09-24 7:50 GMT.
http://shino.pos.to/party/bridge.cgi?puppy/opt/

Sorry for your inconvenience.
Downloads for Puppy Linux [url]http://shino.pos.to/linux/downloads.html[/url]

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

legacy71xx and tahr

#107 Post by foxpup »

Hi, anyone who succeeded in compiling legacy71xx driver (old old old!) on tahr6.0.2 (kernel 3.14.20). It certainly needs patches.
AND have it running (possibly will not run on newer Xorg?)?

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

304.132

#108 Post by peebee »

Legacy driver .run file 304.132

has been released.....

later - compiles under kernel 4.7.5 but does not load - looks like mtrr patch for kernels > 4.3 has not been applied!!

nvidia: Unknown symbol mtrr_del (err 0)
nvidia: Unknown symbol mtrr_add (err 0)

even later - I've managed to apply the mtrr patches to the 304.132.run but getnvidia then throws a wobbly and won't build the sfs - however installing the .run directly does create and install a working driver....
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#109 Post by peebee »

and even later

lessons learnt: there must not be a space in the path to the .run file otherwise getnvidia fails....

The following items in getnvidia-1.0.pet are now out of date:
/usr/bin/nvidia-installer (vintage 2013 - copied new version from 304.132 .run extract)
/usr/share/getnvidia/nvidia-glx.files (directory X11R7 no longer exists - change to /usr/lib/xorg/)

I've uploaded the patched .run to:
https://sourceforge.net/projects/lxpup/ ... n/download

The patch applied is:

Code: Select all

--- kernel/nv-linux.h
+++ kernel/nv-linux.h
@@ -256,6 +256,15 @@
 #include <linux/seq_file.h>
 #endif
 
+/*
+ * As of version 304.131, os-agp.c and os-mtrr.c still use deprecated
+ * kernel APIs for mtrr which are no longer exported since 4.3, causing
+ * the module to error out when loaded.
+ */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0)
+#undef CONFIG_MTRR
+#endif
+
 #if !defined(NV_VMWARE) && defined(CONFIG_MTRR)
 #include <asm/mtrr.h>
 #endif
Attachments
Screenshot.png
(130.51 KiB) Downloaded 1790 times
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#110 Post by peebee »

Drivers 304.134 (Xorg-1.19 compatible) have been released by nvidia

Also 340.101

mtrr patch is still needed to make a loadable driver for Puppy.....

Patched .run file (32-bit):
https://sourceforge.net/projects/lxpup/ ... n/download
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#111 Post by peebee »

A further patch is needed to build the 304.134 driver in kernel 4.9

A patched 32-bit .run file with all patches needed for k4.9 is available from:
NVIDIA-Linux-x86-304.134-patched-k4.9.run

The k4.9 patch is:

Code: Select all

--- kernel/nv-drm.c   2016-12-09 19:47:20.000000000 +0000
+++ kernel/nv-drm.c   2017-01-02 16:03:57.691298148 +0000
@@ -71,7 +71,11 @@
 };
 
 static struct drm_driver nv_drm_driver = {
-    .driver_features = 0,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+    .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,
+#else
+     .driver_features = DRIVER_GEM | DRIVER_PRIME,
+#endif
     .load = nv_drm_load,
     .unload = nv_drm_unload,
     .fops = &nv_drm_fops,
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#112 Post by smokey01 »

peebee wrote:Drivers 304.134 (Xorg-1.19 compatible) have been released by nvidia

Also 340.101

mtrr patch is still needed to make a loadable driver for Puppy.....

Patched .run file (32-bit):
https://sourceforge.net/projects/lxpup/ ... n/download
@peebee is there something available for Fatdog64-710 for k4.4.35?

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#113 Post by peebee »

smokey01 wrote:
peebee wrote:Drivers 304.134 (Xorg-1.19 compatible) have been released by nvidia

Also 340.101

mtrr patch is still needed to make a loadable driver for Puppy.....

Patched .run file (32-bit):
https://sourceforge.net/projects/lxpup/ ... n/download
@peebee is there something available for Fatdog64-710 for k4.4.35?
There is a 64-bit .run with the mtrr patch for the earlier 304.132 driver at:
https://sourceforge.net/projects/lxpup/ ... n/download

which should be sufficient for k4.4.35 as long as Fatdog has not moved to Xorg-1.19.....for which 304.134 is needed

Whether getnvidia works on Fatdog64 I've no idea....I suspect not - so you would have to permanently install it via the .run file directly - i.e. you wouldn't get a .pet or .sfs - but Fatdog doesn't use .pets anyway??

All a bit of a mystery to me I'm afraid....
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
prehistoric
Posts: 1744
Joined: Tue 23 Oct 2007, 17:34

#114 Post by prehistoric »

@peebee,

I have a patched NVIDIA-Linux-x86_64-304.134.run file that I've tested successfully on Fatdog 64 710 (kernel 4.4.35) with a machine that has the embedded Geforce 6150 video, requiring the legacy driver.

How do I get this to you?

I've attached the command line output from extracting the files, applying the patches, and running a modified makeself to recreate the self-extracting file. This was then run on a machine with plenty of RAM and the devx and kernel source sfs. You need to blacklist nouveau before you run this to avoid confusing the script, and again when you reboot. The problem is that the modified configuration files don't come into effect until after the initrd is used, which is likely to load nouveau. With Fatdog 710 the syntax at the end of the kernel line is simply "blacklist=nouveau". You also need to modify any bootloader like Grub to keep blacklisting the module, unless you want to rebuild the initrd.
Attachments
cli_IO.txt.gz
command line input and output needed to extract files from the NVIDIA-Linux-x86_64-304.134.run, apply your mtrr patch, recreate the self-extracting file, and run this to compile and install the custom nvidia kernel module.
(1.74 KiB) Downloaded 359 times

User avatar
bigpup
Posts: 13886
Joined: Sun 11 Oct 2009, 18:15
Location: S.C. USA

#115 Post by bigpup »

The things they do not tell you, are usually the clue to solving the problem.
When I was a kid I wanted to be older.... This is not what I expected :shock:
YaPI(any iso installer)

User avatar
prehistoric
Posts: 1744
Joined: Tue 23 Oct 2007, 17:34

#116 Post by prehistoric »

Okay, the patched nvidia file mentioned above (NVIDIA-Linux-x86_64-304.134-patched.run) has been uploaded to [url]http://www.smokey01,com/prehistoric[/url] along with an md5sum. Use the site search to find it, if this isn't obvious.

I've removed two files I had uploaded before, as they are so out-of-date as to be dangerous.

The .run script has been tested on two machines running Fatdog 710 which had sufficient memory for development. This requires the devx.sfs and the kernel source for 4.4.35 to be loaded. It should work on later kernels up to 4.9, but has not been tested.

To build this module in Fatdog you need to boot with "blacklist=nouveau" appended, and exit the GUI to run from the console, or the script gets upset. After it has built the nvidia kernel module and modified configuration files you can type xwin to go to a GUI desktop, but in fatdog 710 you will still need to blacklist nouveau on every boot to avoid having a conflict with the initrd loading nouveau. (Modify the kernel line in the bootloader menu.)

This is only for legacy Nvidia products requiring the 304.xxx driver. The test machines both had Geforce 6150/6150LE embedded graphics. At one time this was a popular type of video in consumer products like the HP media center PCs. By coincidence, we have just had an unrelated request for help with one. I have a machine I built myself, and was recently given an HP media center considered obsolete. Both run Puppy or Fatdog 710 nicely.

Those who are running Puppies built from binaries available for Ubuntu, for example, do not have to use this as they can probably find the corresponding binaries on-line. This has the advantage that it works with files directly downloaded from Nvidia, only patched to allow newer kernels.

User avatar
bigpup
Posts: 13886
Joined: Sun 11 Oct 2009, 18:15
Location: S.C. USA

#117 Post by bigpup »

After using Getnvidia 1.0.
Making and installing a Nvidia driver.
Now using the Nvidia driver.

I noticed this file in /root/startup

Code: Select all

nvidia
It says it does this:
watch and make the nvidia graphic driver ready.
This is a Puppy specific file made by Puppy people.

I deleted this file from /root/startup.

Still get normal operation of the Nvidia driver after fresh boot.

Does any one really know what this file is suppose to do and is it really needed in /root/startup?
Should it need to be deleted after getting the Nvidia driver installed?

Update:
Several Puppy versions were having booting issues.
Main problem was network connection not being completed at bootup.
I removed this nvidia file from /root/startup.
All the bootup issues were no longer happening.
So, removing this file fixed it.
The things they do not tell you, are usually the clue to solving the problem.
When I was a kid I wanted to be older.... This is not what I expected :shock:
YaPI(any iso installer)

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

304.135 driver

#118 Post by peebee »

304.135 driver has been released by nvidia....

No longer needs the mtrr patch - hooray :P

For kernels >=4.9 the k4.9 patch is still needed.

Patched 32-bit .run available from:
https://sourceforge.net/projects/lxpup/ ... n/download
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#119 Post by peebee »

32-bit 304.135 driver patched for kernel-4.10....

NVIDIA-Linux-x86-304.135-patched-k4.10.run

Patches from here
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#120 Post by peebee »

32-bit 304.135 driver patched for kernel-4.11....

NVIDIA-Linux-x86-304.135-patched-k4.11.run
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

User avatar
Hesse James
Posts: 106
Joined: Mon 08 Feb 2010, 18:41

Nvidia drivers

#121 Post by Hesse James »

Hello
Xenial64 is the distribution of choice for me. It brings along all drivers I need for my Z270 mainboard (due to kernel 4.9). One disadvantage: so far no Nvidia driver in sight.
Unfortunately getnvidia64-1.0 did not work for me. Only a few files were copied into the PET or SFS file during installation. :roll:

Xenial64 specifications: Xorg 1.18.4, kernel 4.9.15.
Target computer equipped with Nvidia 9300 chipset (means Nvidia drivers 304 or 340 are suitable)

Following steps:
1.) find a driver and a suitable patch (e.g. in this thread by Peebee or in Nvidia devtalk) and apply it
2.) install the patched driver
3.) manual copy of all necessary installed driver files into the driver SFS
4.) add some headers for vdpau and GL

I would like to share my results with you.

Driver 340.98, 64 bit
http://www.mediafire.com/file/93n007dib ... nial64.sfs

Driver 304.135, 64 bit
http://www.mediafire.com/file/sgtsj26do ... nial64.sfs

Installation recommendations: for first trials of you use a fresh, frugal installation, generate a backup of your xorg.conf-file. Add nvidia-sfs with the SFS-load.
Do not run NVIDIA-SETTINGS !!! It might ruin your installation.
Reboot, ready. In case a necessary file is not available please give me a feedback.
Good luck.
Christian
Attachments
nv_DRM_patch_304.135_k4.9.tar.gz
(408 Bytes) Downloaded 336 times
nv_patch_340.98_k4.9_final.tar.gz
(809 Bytes) Downloaded 382 times

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

optimus cards

#122 Post by foxpup »

Does anyone have experience with an nvidia Optimus card?
I have an nvidia 940MX.
It comes with an intel gc on the motherboard. That is the one that is found and used by puppylinux.
940MX needs driver 375.xx (or 381.xx). I did not succeed in compiling it yet.
But it probably needs also something like prime or bumblebee.
Any expertise with this kind of setup out there?
Help would be highly appreciated.

User avatar
bigpup
Posts: 13886
Joined: Sun 11 Oct 2009, 18:15
Location: S.C. USA

#123 Post by bigpup »

It comes with an intel gc on the motherboard. That is the one that is found and used by puppylinux.
If it has a Nvidia graphics hardware, that should be what Puppy is seeing.

Got a setting in the computers bios for what graphics hardware to use?

You will have to get Puppy to use the Nvidia hardware.
Most Puppies come with the nouveau driver, which is a generic driver for Nvidia.
Puppy should automatically use it.

This explains how to compile a driver.
http://www.murga-linux.com/puppy/viewtopic.php?t=110611

I am using the Nvidia 375.39 driver, so I know it can be compiled.
The things they do not tell you, are usually the clue to solving the problem.
When I was a kid I wanted to be older.... This is not what I expected :shock:
YaPI(any iso installer)

User avatar
Hesse James
Posts: 106
Joined: Mon 08 Feb 2010, 18:41

Nvidia drivers

#124 Post by Hesse James »

Good morning foxpup
If you are not familiar with driver compiling I would recommend you to use an available Nvidia driver package.
Shinobar made available one (375.39)... for Xenial32 only (k4.9.13) ->looks like 7.0.8.1.
http://shinobar.server-on.net/puppy/opt/pup5/xenialpup/

375.26 for Tahr32 is available too
http://shinobar.server-on.net/puppy/opt/pup5/tahrpup/

Prior to the installation, make sure that the nouveau-driver is blacklisted, despite you seem to use the Intel driver right now (your laptop seems to be equipped with Intel and Nvidia GPU ?). I cannot tell you how to switch to the Nvidia-driver. Good luck to find a solution.
Christian

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

#125 Post by foxpup »

Hello bigpup and Hesse James.
Thanks for your quick reactions!
If it has a Nvidia graphics hardware, that should be what Puppy is seeing.

Got a setting in the computers bios for what graphics hardware to use?
Puppy sees the intel driver and not the nvidia 940MX.
from the hardinfo report:
Display
Resolution 1920x1080 pixels
Vendor The X.Org Foundation
Version 1.18.4
Monitors
Monitor 0 1920x1080 pixels
Extensions
BIG-REQUESTS
Composite
DAMAGE
DOUBLE-BUFFER
DPMS
DRI2
GLX
Generic Event Extension
MIT-SCREEN-SAVER
MIT-SHM
Present
RANDR
RECORD
RENDER
SECURITY
SGI-GLX
SHAPE
SYNC
X-Resource
XC-MISC
XFIXES
XFree86-DGA
XFree86-VidModeExtension
XINERAMA
XInputExtension
XKEYBOARD
XTEST
XVideo
OpenGL
Vendor Intel Open Source Technology Center
Renderer Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2)
Version 3.0 Mesa 12.0.6
Direct Rendering Y_es
Nothing about an nvidia gc.
In the bios I can chose between both or just the intel driver. I choose 'both'.

I know how to compile, but nothing special, not on a new machine.
It is good to know it can be done, and that shinobar made pets for 375. (Did he need any patches to do it? I wonder. I don't think so: on the forums I only find about patches for 4.10 an 4.11 kernels.)
So I will try it on xenialpup64 too. I hope I can use shinobar's getnvidia64.

Trickiest thing is probably installation of the driver and have xorg use it.

@bigpup: Are you using the 375 driver on a machine with 2 graphic cards, or just one (1)?

Post Reply