Difference between revisions of "NVIDIA Quadro NVS 140M"

From ThinkWiki
Jump to: navigation, search
(LCD Backlight Brightness Control on T61/R61)
(changed category)
 
(16 intermediate revisions by 8 users not shown)
Line 3: Line 3:
 
|style="vertical-align:top" |
 
|style="vertical-align:top" |
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
=== NVIDIA Quadro NVS 140M ===
+
=== nVIDIA Quadro NVS 140M ===
  
The NVIDIA Quadro NVS 140M is a mobile video card with a G86 core and either 128 MB or 256 MB graphics memory.
+
The nVIDIA Quadro NVS 140M is a mobile video card with a G86 core and 128MB dedicated graphics memory (512MB shared).
  
 
=== Features ===
 
=== Features ===
  
* Chipset: nVidia Quadro NVS 140M
+
* Chipset: nVIDIA Quadro NVS 140M
 
* PCI ID:
 
* PCI ID:
 
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])
 
** 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])
Line 25: Line 25:
 
*** Capabilities: [600] Unknown (11)
 
*** Capabilities: [600] Unknown (11)
 
* PCI Express 16&times;
 
* PCI Express 16&times;
* 128 or 256 MB video memory
+
* 128MB dedicated (512MB shared) video memory
  
 
=== Linux X.Org driver ===
 
=== Linux X.Org driver ===
  
 
Default X.Org NVidia driver, called "nv" works.
 
Default X.Org NVidia driver, called "nv" works.
 +
 +
:''On an R61 running OpenSUSE 10.3, the nv driver locks up the machine hard.'' --[[User:Nettings|Nettings]] 14:39, 26 March 2008 (CET)
 +
 +
:''On an R61 running Fedora Core 9, the nv driver fails to turn the backlight on after resuming from a suspend to RAM.  I fixed this by using the proprietary NVIDIA Linux drivers (v177.82)''
  
 
=== NVIDIA proprietary driver ===
 
=== NVIDIA proprietary driver ===
Line 41: Line 45:
 
=== LCD Backlight Brightness Control on T61/R61 ===
 
=== LCD Backlight Brightness Control on T61/R61 ===
  
To the best of my knowledge, no one has been able to get LCD backlight brightness control to work with this video card on the {{T61}}/{{R61}} when using the proprietary driver. However, brightness control works fine when using the vesa driver, so it seems that the problem lies with the Nvidia driver itself.  
+
There has been an issue with Brightness Control on T61/R61s. This seems to be fixed with the 169.04 BETA drivers from Nvidia. You can find them i.e. here [http://www.nvidia.com/object/linux_display_ia32_169.04.html 169.04 BETA Driver]. You might also need the latest BIOS ([[BIOS_Upgrade_Downloads]] 1.26) as well as the latest version of [[thinkpad-acpi]] (thinkpad-acpi, V0.18).
 +
 
 +
If the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.
 +
 
 +
=== Disabling automatic power saving ===
 +
 
 +
The nVidia Quadro NVS 140m, as well as some other newer cards, automatically clock down to save power and stay cool. This can be a nuisance when running a compositing window manager, such as Compiz Fusion - animations will appear to start jerkily, and smoothen out after a second or so once the GPU clocks up. One workaround is to disable automatic power management of the GPU. To do so, add the line
 +
 
 +
'''options nvidia NVreg_RegistryDwords="PerfLevelSrc=0x2222"'''
 +
 
 +
to either /etc/modprobe.conf or a (new) file in /etc/modprobe.d
 +
 
 +
Be warned, that this might cause excessive heat generation and/or premature death of the GPU. It should be safer than overclocking, though.
 +
 
 +
=== Making Compiz work well ===
 +
 
 +
Compiz requires a few options to be passed to it, in order to run quickly and reliably. Not using these options can result in anything ranging from general slowness to graphics corruption, depending on the driver version. At the time of writing, the 180.18 beta drivers were used. Below are the relevant parts of a working Compiz startup script:
  
{{QUOTE|Mike Kershaw|linux-thinkpad@linux-thinkpad.org|This problem was solved (for me) with the latest IBM bios release,
+
'''export LIBGL_ALWAYS_INDIRECT=1'''
October 18, bios 1.26, 7KET56WW.  In-X brightness works now via the hw
 
keys and acpi/ibm/brightness.}}
 
  
*  On T61-6459CTO, with bios 1.26, and kernel 2.6.22 patched with thinkpad-acpi-0.18, the hw-keys do not work in X. In fact, the file '''/proc/acpi/ibm/brightness''' is missing (probably due to the new thinkpad-acpi), however there is a new file in '''/sys/class/backlight/acpi_video{0,1}/brightness'''. I believe it must be a newer kernel (2.6.24?) with a patched acpi video kernel driver which achieves the ability to change brightness in X. Changing brightness from a virtual console (CTRL-ALT-F1) works as usual.
+
'''nice --adjustment=-5 compiz ccp --indirect-rendering --loose-binding --sm-disable --replace'''
  
Strangely, if the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a {{T61}}, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an {{R61}} with {{OpenSUSE}} 10.2.
+
With these options and the above RegistryDwords, Compiz, videos and OpenGL apps run without any noticable delays or glitches. Note, though, that because of the way X, Compiz, GTK and QT handle memory allocation, window resizing using the 'normal' mode is nigh-on unusable.
  
 +
== Resources ==
 +
* [http://jacobandreas.net/2008/nvidia-multihead-guide-for-linux-laptops/ NVIDIA multihead guide]
  
[[Category:Components]]
+
[[Category:Video Controllers]]

Latest revision as of 13:59, 22 January 2021

nVIDIA Quadro NVS 140M

The nVIDIA Quadro NVS 140M is a mobile video card with a G86 core and 128MB dedicated graphics memory (512MB shared).

Features

  • Chipset: nVIDIA Quadro NVS 140M
  • PCI ID:
    • 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0429 (rev a1) (prog-if 00 [VGA])
      • Subsystem: Lenovo Unknown device 20d8
      • Flags: bus master, fast devsel, latency 0, IRQ 169
      • Memory at d6000000 (32-bit, non-prefetchable) [size=16M]
      • Memory at e0000000 (64-bit, prefetchable) [size=256M]
      • Memory at d4000000 (64-bit, non-prefetchable) [size=32M]
      • I/O ports at 2000 [size=128]
      • Capabilities: [60] Power Management version 2
      • Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
      • Capabilities: [78] Express Endpoint IRQ 0
      • Capabilities: [100] Virtual Channel
      • Capabilities: [128] Power Budgeting
      • Capabilities: [600] Unknown (11)
  • PCI Express 16×
  • 128MB dedicated (512MB shared) video memory

Linux X.Org driver

Default X.Org NVidia driver, called "nv" works.

On an R61 running OpenSUSE 10.3, the nv driver locks up the machine hard. --Nettings 14:39, 26 March 2008 (CET)
On an R61 running Fedora Core 9, the nv driver fails to turn the backlight on after resuming from a suspend to RAM. I fixed this by using the proprietary NVIDIA Linux drivers (v177.82)

NVIDIA proprietary driver

Support for Quadro NVS 140M has been introduced in the NVIDIA Linux unified driver version 100.14.09 (released on 8 June 2007). For the latest drivers go to the NVIDIA Unix Drivers page. Note that NVIDIA proprietary drivers do not work with a Xen virtualized kernel.

CUDA

Since it has a G86 core, NVidia CUDA works on this video card, even though not being listed in the CUDA manuals. Running very large problems (like the SDK examples) however might fail by running out of the relatively small graphics memory.

LCD Backlight Brightness Control on T61/R61

There has been an issue with Brightness Control on T61/R61s. This seems to be fixed with the 169.04 BETA drivers from Nvidia. You can find them i.e. here 169.04 BETA Driver. You might also need the latest BIOS (BIOS_Upgrade_Downloads 1.26) as well as the latest version of thinkpad-acpi (thinkpad-acpi, V0.18).

If the nvidia module is loaded with the argument NVreg_EnableBrightnessControl=1, one can switch to a virtual console, change the lcd brightness level there, and have that level preserved after switching back to the X session. On a T61, this was tested with the acpi video driver included in the vanilla Linux 2.6.21-6 kernel and on an R61 with OpenSUSE 10.2.

Disabling automatic power saving

The nVidia Quadro NVS 140m, as well as some other newer cards, automatically clock down to save power and stay cool. This can be a nuisance when running a compositing window manager, such as Compiz Fusion - animations will appear to start jerkily, and smoothen out after a second or so once the GPU clocks up. One workaround is to disable automatic power management of the GPU. To do so, add the line

options nvidia NVreg_RegistryDwords="PerfLevelSrc=0x2222"

to either /etc/modprobe.conf or a (new) file in /etc/modprobe.d

Be warned, that this might cause excessive heat generation and/or premature death of the GPU. It should be safer than overclocking, though.

Making Compiz work well

Compiz requires a few options to be passed to it, in order to run quickly and reliably. Not using these options can result in anything ranging from general slowness to graphics corruption, depending on the driver version. At the time of writing, the 180.18 beta drivers were used. Below are the relevant parts of a working Compiz startup script:

export LIBGL_ALWAYS_INDIRECT=1

nice --adjustment=-5 compiz ccp --indirect-rendering --loose-binding --sm-disable --replace

With these options and the above RegistryDwords, Compiz, videos and OpenGL apps run without any noticable delays or glitches. Note, though, that because of the way X, Compiz, GTK and QT handle memory allocation, window resizing using the 'normal' mode is nigh-on unusable.

Resources