Comment 44 for bug 1737750

Revision history for this message
Max (m-gorodok) wrote :

With the attached patch nvidia-340.104 module may be build with both kernels linux-generic-hwe-16.04 4.15.0 and linux-generic 4.4.0

Tested on "VGA compatible controller: NVIDIA Corporation GT218 [GeForce 210] (rev a2) (prog-if 00 [VGA controller])" (GeForce 210 0x0A65)

It should fix nv_drm_init/exit issues

/var/lib/dkms/nvidia-340/340.104/build/nv-drm.c: In function ‘nv_drm_init’:
/var/lib/dkms/nvidia-340/340.104/build/nv-drm.c:176:11: error: implicit declaration of function ‘drm_pci_init’ [-Werror=implicit-function-declaration]
     ret = drm_pci_init(&nv_drm_driver, pci_driver);
           ^
/var/lib/dkms/nvidia-340/340.104/build/nv-drm.c: In function ‘nv_drm_exit’:
/var/lib/dkms/nvidia-340/340.104/build/nv-drm.c:186:5: error: implicit declaration of function ‘drm_pci_exit’ [-Werror=implicit-function-declaration]
     drm_pci_exit(&nv_drm_driver, pci_driver);

and compile errors related to timers

/var/lib/dkms/nvidia-340/340.104/build/nv.c: In function ‘nv_start_rc_timer’:
/var/lib/dkms/nvidia-340/340.104/build/nv.c:2407:5: error: implicit declaration of function ‘init_timer’ [-Werror=implicit-function-declaration]
     init_timer(&nvl->rc_timer);
     ^
/var/lib/dkms/nvidia-340/340.104/build/nv.c:2408:28: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
     nvl->rc_timer.function = nvidia_rc_timer;
                            ^
/var/lib/dkms/nvidia-340/340.104/build/nv.c:2409:18: error: ‘struct timer_list’ has no member named ‘data’
     nvl->rc_timer.data = (unsigned long) nvl;
                  ^