Lenovo ThinkPad W520

This article or section is a candidate for merging with
Laptop/Lenovo#W series
.
Notes:
Nothing worth keeping a dedicated page for. (Discuss in
Talk:Lenovo ThinkPad W520
)
This article or section does not follow the
Laptop page guidelines
.
Reason:
Notepad-like style (Discuss in
Talk:Lenovo ThinkPad W520
)
GPT / MBR Partition Table
I was unable to get the most recent version of the BIOS to boot from a GPT partition table. Everything worked fine once I tried an MBR ("msdos" in gparted) partition table.
Wi-Fi issues
Random Disconnection
The output from running
dmesg | grep wlan0
as root will include "wlan0: deauthenticating from MAC by local choice (reason=3)"
Disable power management of pci-express in BIOS
Nvidia Optimus Setup
Bumblebee
nVidia Optimus works nicely with a standard
bumblebee
setup, using the proprietary
NVIDIA
drivers. For further information refer to the
NVIDIA Optimus
article.
Multimonitor
The digital and analog video outputs are hardwired to the nVidia chip and are thus unvailable in a standard bumblebee setup, since the X Server is run by the Intel GPU. Unlike earlier Thinkpad W Models, the VGA-Output is not connected to the integrated chip. There are several workarounds available.
Using
intel-virtual-output
works really well with little tweaking necessary
$ intel-virtual-output -f
Note
-f prevents it from becoming a daemon (thus easier to stop)
Note
Starting with nvidia-360 the nvidia-modeset module will prevent bumblebee from unloading properly and has to be removed first.
It is needed to enable virtual outputs for intel graphic card
xorg.conf.d
.
20-intel.conf
Section "Device"
    Identifier "intelgpu0"
    Driver "intel"
    Option "VirtualHeads" "2"
EndSection
see also
Stackexchange
for troubleshooting with virtual outputs
multiscreen_enable.sh
#!/bin/bash
# Initializes Bumblebee for multi-screen functionality.

#modprobe bbswitch # probably not needed 
optirun true
intel-virtual-output
#following line needs to be adapted to the according sceanrio
xrandr --output LVDS1 --auto --pos 0x0 --output VIRTUAL8 --mode VIRTUAL8.740-1920x1200 --pos 1920x-60
multiscreen_term.sh
#!/bin/bash
# Initializes Bumblebee for multi-screen functionality.
xrandr --output VIRTUAL8 --off  
xorg_process=$(ps aux | grep 'Xorg :8' | awk '{print $2}')
kill -15 $xorg_process
sleep 1
rmmod nvidia_modeset
sleep 1
rmmod nvidia
multiscreen_reinit.sh
#!/bin/bash
# Restarts Bumblebee for multi-screen functionality.

tee /proc/acpi/bbswitch <<<ON
modprobe bbswitch
modprobe nvidia-modeset
optirun true
intel-virtual-output
xrandr --output LVDS1 --auto --pos 0x0 --output VIRTUAL8 --mode VIRTUAL8.740-1920x1200 --pos 1920x-60
For the nvidia card to recognize external monitors, some lines have to be commented out of the default config file at
/etc/bumblebee/xorg.conf.nvidia
.
xorg.conf.nvidia
...
 #   Option "UseEDID" "false"
 #   Option "UseDisplayDevice" "none"
...
see also:
Phoronix
Nvidia Forums
Ultranav - Trackpoint and Touchpad
This article or section is a candidate for merging with
TrackPoint
.
Notes:
Merge into the main article, then just link to it instead of duplicating content. (Discuss in
Talk:Lenovo ThinkPad W520
)
Trackpoint and Touchpad will work out of the box, but some tweaking is required for further configuration.
Set up trackpoint scrolling by adding a new config in
xorg.conf.d
.
20-trackpoint.conf
Section "InputClass"
         Identifier      "Trackpoint Wheel Emulation"
         MatchProduct    "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint"
         MatchDevicePath "/dev/input/event*"
         Option          "EmulateWheel"                "true"
         Option          "EmulateWheelButton"  "2"
         Option          "Emulate3Buttons"     "false"
         Option          "XAxisMapping"                "6 7"
         Option          "YAxisMapping"                "4 5"
EndSection
Trackpoint sensitivity and speed can be set up using an udev rule in
/etc/udev/rules.d/
(the add-rule will work around the configuration not being applied when the trackpoint hasn't been loaded, alternatively a wait-for can be used, which comes with the added drawback of added unresponsiveness of the trackpoint some time after boot)
82-trackpoint.rules
# Set the trackpoint speed and sensitivity
ACTION=="add",SUBSYSTEM=="input",ATTR{name}=="TPPS/2 IBM TrackPoint",ATTR{device/sensitivity}="240"
Touchpad can be used after
installing
xf86-input-synaptics
Other
Boot up issue with UDEV timeout
# dmesg | grep -i pci
udevd[169]: seq 1352 '/devices/pci0000:00/0000:00:1c.1/0000:03:00.0' killed
Similar issue at
FS#27938
.
System beep
See
PC speaker#Disabling the PC speaker
.
Screen brightness
video.use_native_backlight
is enabled by default, unfortunately this setting does not work well for the W520, disabling it should solve the issue:
video.use_native_backlight=0
The following
kernel parameters
may also be necessary to get backlight control working in X sessions with NVIDIA drivers:
acpi_backlight=video
and create the file:
/usr/share/X11/xorg.conf.d/10-nvidia-brightness.conf
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro 1000M"
    Option         "RegistryDwords" "EnableBrightnessControl=1"
EndSection
FAN Settings with Thinkfan
Default temperature management allows only a limited fan speed. This inherently leads to overheating since the laptop is designed to run with unregulated fan speed under full load.
Thinkfan.conf:
thinkfan.conf
Section
hwmon /sys/devices/virtual/thermal/thermal_zone0/temp
# Fan   Temp1   Temp2
(0,     0,      35)
(1,     30,     40)
(2,     35,     45)
(3,     40,     50)
(4,     45,     55)
(5,     50,     60)
(6,     55,     65)
(7,     60,     70)
(127,   65,     32767)
# last line is unregulated/max speed.  Like this the Laptop will be ~ at 60
EndSection