I realise this driver is now EOL so there’s likely to be very little interest, but I just wondered if anyone has had any luck getting 340.108 to work with kernel 5.6-rc1.
I’ve got it building having fixed the various issues thrown up by 5.6-rc1[1], but the drm_legacy_pci_init/drm_legacy_pci_exit functions are now hidden in 5.6-rc1 and a naiive replacement with pci_register_device/pci_unregister_device results in the following failure on a Revo3700 (ION2):
[ 16.321446] nvidia: loading out-of-tree module taints kernel.
[ 16.321484] nvidia: module license 'NVIDIA' taints kernel.
[ 16.321487] Disabling lock debugging due to kernel taint
[ 16.374053] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
[ 16.375356] Error: Driver 'nvidia' is already registered, aborting...
[ 16.375362] NVRM: DRM init failed
Full dmesg: http://ix.io/2bj
If I revert the kernel commit[2] and make the drm_legacy_pci_init/exit functions visible then the modified 340.108 driver loads, and is working perfectly. However this isn’t really a long-term solution, so I need a helping hand with the driver initialisation when using pci_register_driver/pci_unregister_driver…
In the same PR[1] there are 5.6-rc1 patches for 440.59 which is building, but I have no hardware to test the modified driver (see “xf86-video-nvidia: fix 5.6-rc1 build”) - mentioning it here in case it helps anyone else.
- linux (Generic): update to linux-5.6 by MilhouseVH · Pull Request #4199 · LibreELEC/LibreELEC.tv · GitHub (commit “xf86-video-nvidia-legacy: fix 5.6-rc1 build”)
- https://github.com/torvalds/linux/commit/1be9d5f069964108125592af92304da76c5865bf#diff-01a0fbd8037627d5d55b23bae3faca39