My old notebook HP EliteBook 8560w is not suitable for Win10 and I have decided to use it for Linux tests. The first Linux OS, I have installed, was Ubuntu. It enabled graphic card NVIDIA GF106GLM [Quadro 2000M] without any problems in GNOME. As the second OS I wanted to use KALI Linux as dual boot on the notebook. I was surprised immediately after the installation. Xfce did not work and I have to start the Linux configuration via text console (CTRL+ALT+F1). The first link with NVIDIA drivers description I have found here. There is a description of NVIDIA cards identification and a procedure for driver installation. Here are details for NVIDIA graphic card in HP EliteBook 8560w:
# lspci|grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1)# lspci -s 01:00.0 -v
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1) (prog-if 00 [VGA controller])
DeviceName: 0
Subsystem: Hewlett-Packard Company GF106GLM [Quadro 2000M]
Flags: bus master, fast devsel, latency 0, IRQ 16, IOMMU group 1
Memory at d0000000 (32-bit, non-prefetchable) [size=32M]
Memory at c0000000 (64-bit, prefetchable) [size=128M]
Memory at c8000000 (64-bit, prefetchable) [size=64M]
I/O ports at 4000 [size=128]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [b4] Vendor Specific Information: Len=14 <?>
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nouveau
Kernel modules: nouveau
KALI Linux used “nouveau” driver (Ubuntu used same), but GUI did not run. I tried to install the driver according to procedure here, but driver version 430.xx was installed and it is not suitable for my card. I have found the supported driver on this page and it should be version 390.xx (legacy driver). Here is link for KALI Linux installation, but the procedure did not install the driver properly. The card was still using the “nouveau” driver and GUI did not start. After several reinstallations of the driver and even KALI Linux installation I have found following procedure. It describes installation of NVIDIA driver downloaded directly from NVIDIA pages. It compiles kernel modules during the installation and it makes the proper GUI configuration. I have found info that the max. driver version is 390.132, but it is not true. After several tries to install driver 390.132 and 390.144 I had to use the latest driver 390.147, because of the error “fatal error: asm/kmap_types.h: No such file or directory” during kernel modules compilation. The error above has been fixed in the latest driver 390.147 based on the Change log for Ubuntu. The procedure to install the latest driver is as following:
Search for all NVIDIA drivers installed in the system
# dpkg -l|grep -i nvidia
Deinstall them
# apt-get remove –purge nvidia-*
Deinstall even libraries to be sure
# apt-get remove –purge libnvidia-*
Prevent loading of “nouveau” driver
# sed ‘s/quiet/quiet nouveau.modeset=0/g’ -i /etc/default/grub
# update-grub
# reboot
Stop GUI
# service gdm3 stop
Download driver 390.147
# wget -c https://us.download.nvidia.com/XFree86/Linux-x86_64/390.147/NVIDIA-Linux-x86_64-390.147.run
Change the privileges
# chmod +x NVIDIA-Linux-x86_64-390.147.run
Install it. Register kernel modules with DKMS and refuse to install 32-bit drivers. There is an error reported during the installation about missing path to glvnd. It is possible to ignore it or fix by adding path parameter to the driver install command like below
# ./NVIDIA-Linux-x86_64-390.147.run –glvnd-egl-config-path=/etc/glvnd/egl_vendor.d
After reboot GUI starts without any problem
# reboot
The properly installed driver looks like this
# lspci|grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1)# lspci -s 01:00.0 -v
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1) (prog-if 00 [VGA controller])
DeviceName: 0
Subsystem: Hewlett-Packard Company GF106GLM [Quadro 2000M]
Flags: bus master, fast devsel, latency 0, IRQ 44, IOMMU group 1
Memory at d0000000 (32-bit, non-prefetchable) [size=32M]
Memory at c0000000 (64-bit, prefetchable) [size=128M]
Memory at c8000000 (64-bit, prefetchable) [size=64M]
I/O ports at 4000 [size=128]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [b4] Vendor Specific Information: Len=14 <?>
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia
# nvidia-smi
Wed Apr 6 14:46:36 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.147 Driver Version: 390.147 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Quadro 2000M Off | 00000000:01:00.0 N/A | N/A |
| N/A 28C P12 N/A / N/A | 123MiB / 1985MiB | N/A Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 Not Supported |
+-----------------------------------------------------------------------------+