Blog 31.5.2018

Lenovo Thinkpad P51 with Linux

Good to see you here! We have no doubt this post has good information, but please keep in mind that it is over 6 years old.

It was time for me to update my laptop and I got this nice and powerful Thinkpad P51. Ditched Windows 10 and installed Kubuntu 18.04. Unfortunately, that was not enough to start using it and continue working. There were weird problems at the boot, and when I docked the laptop for the first time, I got no picture to the external monitors. After searching for solutions, I found some concerning posts as well as hints how it might be possible to get everything working. After some time of trial and experiment without success, I got frustrated. Should I have gotten a Mac this time?
But, I have used Linux for work since the kernel 1.0 was released in 1994 and don’t feel like changing to something else quite yet. Linux is still simply the best tool for most development tasks, even now almost a quarter of a century later.
Based on the certification https://certification.ubuntu.com/hardware/201702-25426/, the hardware should be fine. And it is. The basic problem is with the two graphics cards in the laptop and a working solution is to use the Nvidia card only.

Steps to make it work

First, go to BIOS setup and change Hybrid Graphics to Discrete Graphics
Linux on a Thinkpad
And disable Secure Boot
Linux on a Thinkpad
Boot up Linux and add acpi=force to your linux default parameters

sudo nano /etc/default/grub

Edit the line
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash nomodeset acpi=force

sudo update-grub

Add the following to /etc/modprobe.d/blacklist.conf

blacklist amd76x_edac
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

Update the initramfs disk

sudo update-initramfs -u

Remove open source nvidia drivers

sudo apt-get remove --purge nvidia* ; sudo apt autoremove

Download the proprietary Nvidia driver from http://www.nvidia.com/object/unix.html and install it. X needs to be stopped before installing the driver. Go to one of the virtual terminals and stop X before installing.

Note that on this computer, you actually need Fn-Ctrl-Alt-F[n] to get to the TTYs. I had problems getting to TTYs before realizing that the function keys need the Fn button.
sudo service sddm stop
sudo sh Downloads/NVIDIA-Linux-x86_64-390.59.run

Reboot and this should be it. Hope I remembered all steps. (smile)
Now after a couple of days of working, everything works fluently.
Linux on a Thinkpad
The downside to this solution is that the internal graphics card is not used in any situation and thus the power consumption is higher. This is probably not a big issue, but if you have a solution for this, please let me know.

Back to top