Installing Slackware on a Thinkpad W520

From ThinkWiki
Revision as of 03:31, 3 July 2011 by Dimm0k (Talk | contribs)
Jump to: navigation, search


Slackware 13.37 64-bit installed like a breeze on a hot, humid day! For the most part all of the essentials to get the system up and running on the W520 was detected and put into play with little or no intervention or editing of files on my end.


Coming from a W510, the W520 introduced me to the concepts of discrete and integrated graphics, as well as NVIDIA's Optimus technology. Unfortunately because of NVIDIA's unwillingness to bring Optimus support to Linux, you have three choices. You can use the integrated Intel HD graphics, NVIDIA's discrete graphics, or look into the bumblebee project here. I went with the NVIDIA discrete graphics route with plans to try out the bumblebee project at a later time. Make sure to specifically set your graphics option in the BIOS to discrete, otherwise Slackware/Linux will select integrated.

Instead of the open source nouveau driver I went with NVIDIA's binary, version 275.09.07. With X.Org's X Server 1.9.5 in Slackware, xorg.conf is pretty bare these days as detection is done pretty smoothly at start. Using NVIDIA's installer to create a default xorg.conf, the only things I added to that were

Section "Device"

   Identifier     "Device0"
   Driver         "nvidia"
   VendorName     "NVIDIA Corporation"
   BoardName      "Quadro 2000M"
   Option         "RenderAccel"       "true"
   Option         "AddARGBGLXVisuals" "true"
   Option         "HWCursor"          "yes"
   Option         "CursorShadow"      "yes"
   Option         "RegistryDwords"    "EnableBrightnessControl=1"


The Option "RegistryDwords" "EnableBrightnessControl=1" line allows you to change the brightness of the notebook's LCD via the Fn-HOME and Fn-END key combinations.

Section "Screen"

   Identifier     "Screen0"
   Device         "Device0"
   Monitor        "Monitor0"
   DefaultDepth    24
   Option         "TwinView"                  "1"
   Option         "DynamicTwinView"           "True"
   Option         "TwinViewXineramaInfoOrder" "DFP-1"
   Option         "MetaModes" "DFP-1: 1920x1200_60 +0+0, DFP-0: NULL, CRT: NULL; DFP-0: 1920x1080_60 +0+0, DFP-1: NULL, CRT: NULL;"
   SubSection     "Display"
       Depth       24


Here I set up the 2 MetaModes:

  • notebook LCD off, external LCD on, VGA off
  • notebook LCD on, external LCD off, VGA off

By setting CRT-0: NULL, you can save some battery by turning off the VGA port.

The first decision is whether you want to use the NVidia discrete graphics (faster) or the Intel HD integrated graphics (more power-efficient). Both are more than fast enough for office graphics, the only noticeable speed difference is in 3D acceleration. You must set the graphics mode in the BIOS accordingly to discrete or integrated only. Do not leave it at the default "Optimus" as it is undocumented and unsupported.

If you want stable 3D acceleration out of the box you should use the Intel integrated graphics.

The following notes refer to the NVidia discrete graphics only. Fedora uses the reverse-engineered Nouveau driver in this case, which currently is restricted to 2D graphics. If you need 3D acceleration, you have to install the binary-only NVidia drivers. The easiest way is to configure teh RPM fusion repository and follow their NVidia HowTo. This amounts to running

# yum localinstall --nogpgcheck

# yum localinstall --nogpgcheck

# yum install kmod-nvidia

The backlight control does not work by default with the NVidia driver, to get it to work you have to add Option "RegistryDwords" "EnableBrightnessControl=1" to the Device section of your /etc/X11/xorg.conf.



I have the Intel Centrino Ultimate-N 6300 card and it works out of the box.


The e1000e driver in Fedora 14 is too old for the ethernet chip. To get it to work you have to download and compile the updated driver from Intel's web page. You don't have to recompile the whole kernel; Just unpack, make, and # insmod ./e1000e.ko