Difference between revisions of "Intel Graphics Media Accelerator 950"

From ThinkWiki
Jump to: navigation, search
(update for KMS)
Line 13: Line 13:
 
|}
 
|}
  
== Intel video driver ==
+
= Intel video driver =
 
The Intel opensource videodriver is maintained by Intel at [http://intellinuxgraphics.org/ intellinuxgraphics.org].
 
The Intel opensource videodriver is maintained by Intel at [http://intellinuxgraphics.org/ intellinuxgraphics.org].
Intel releases a new driver once per quarter. The latest stable release is 2.7 and a 2.8 release is available as beta.
+
Intel releases a new driver once per quarter. The latest stable release is 2.8.
 +
 
 +
== Kernel mode setting (KMS) ==
 +
KMS (Kernel Mode Setting) as the name suggests moves some video setup functions to the kernel. This should have the following benefits over legacy mode setting
 +
* increased stability, because it removes the current contention between the X server and the kernel
 +
* ability to show kernel dump screens even when the X server was running
 +
* rapid mode switching
 +
* in theory should not allow the X video driver to hang the system
 +
* early graphical boot display with seamless login
 +
* should in the future allow for the X server to run without root privileges
 +
* larger virtual display size (4096x4096) allowing extended desktop configs (2048x2048 without KMS)
 +
=== Status===
 +
Right now KMS is still in heavy development, and officially requires at least kernel 2.6.30 with version 2.7 of the Intel driver. But in reality you should really be running the very latest 2.6.31 kernel and version 2.8 of the Intel driver.
 +
 
 +
=== Configuration===
 +
In this mode, ideally you do not configure any settings through xorg.conf but by using xrandr, or a graphical front-end to xrandr such as gnome-display-settings.
 +
 
 +
=== Disabling KMS ===
 +
If KMS causes you problems, you can disable it and return to legacy mode setting by booting with the {{bootparm|nomodeset|}} kernel boot option.
 +
 
 +
== Legacy mode setting ==
 +
Legacy mode setting means the Intel Xorg driver does the mode setting.
  
 
There are two ways to configure the driver, either the 'old fashion' way through xorg.conf, or using xrandr (either from the cmd line or through a display utility such as gnome-display-properties).
 
There are two ways to configure the driver, either the 'old fashion' way through xorg.conf, or using xrandr (either from the cmd line or through a display utility such as gnome-display-properties).
Line 93: Line 114:
 
</pre>
 
</pre>
 
More info can be found at http://www.intellinuxgraphics.org/dualhead.html
 
More info can be found at http://www.intellinuxgraphics.org/dualhead.html
----
+
=== VESA (console) resolution ===
== KMS ==
 
KMS (Kernel Mode Setting) as the name suggests moves some video setup functions to the kernel. This should allow for increased stability (kernel panics can be drawn to the screen now when in a graphical mode, and in theory the X server should not be able to hang the system any more), security (X server in the future can go from running as root to running as a regular user) and it allows a more seamless boot process with a graphical bootup without mode switches when the display manager starts.
 
 
 
Right now KMS is still in heavy development, and requires at least kernel 2.6.30 with version 2.7 of the Intel driver.
 
 
 
Fedora 11 by default ships with KMS enabled, which causes some problems with external display support, or switching to lower resolutions on the internal LCD (LVDS). This can be worked around for now by booting with the nomodeset kernel boot option.
 
 
 
== VESA (console) resolution ==
 
 
Largest video resolution, supported by VESA for T60 is 1280x1024. You can set that for console in grub or lilo by adding vga=794 option.
 
Largest video resolution, supported by VESA for T60 is 1280x1024. You can set that for console in grub or lilo by adding vga=794 option.
  
== SVideo port ==
+
=== SVideo port ===
 
The SVideo Port can be activated using xrandr.
 
The SVideo Port can be activated using xrandr.
 
run
 
run
Line 127: Line 140:
  
  
== DVI port ==
+
=== DVI port ===
 
DVI passthrough is only supported on the T60 in combination with a docking station. Maximum resolution is 2048x1536
 
DVI passthrough is only supported on the T60 in combination with a docking station. Maximum resolution is 2048x1536
  
== Suspend behaviour ==
+
=== Suspend behaviour ===
 
* Required kernel parameters for suspend to ram: none
 
* Required kernel parameters for suspend to ram: none
 
* Additional notes:  
 
* Additional notes:  

Revision as of 15:48, 5 August 2009

Intel video driver

The Intel opensource videodriver is maintained by Intel at intellinuxgraphics.org. Intel releases a new driver once per quarter. The latest stable release is 2.8.

Kernel mode setting (KMS)

KMS (Kernel Mode Setting) as the name suggests moves some video setup functions to the kernel. This should have the following benefits over legacy mode setting

  • increased stability, because it removes the current contention between the X server and the kernel
  • ability to show kernel dump screens even when the X server was running
  • rapid mode switching
  • in theory should not allow the X video driver to hang the system
  • early graphical boot display with seamless login
  • should in the future allow for the X server to run without root privileges
  • larger virtual display size (4096x4096) allowing extended desktop configs (2048x2048 without KMS)

Status

Right now KMS is still in heavy development, and officially requires at least kernel 2.6.30 with version 2.7 of the Intel driver. But in reality you should really be running the very latest 2.6.31 kernel and version 2.8 of the Intel driver.

Configuration

In this mode, ideally you do not configure any settings through xorg.conf but by using xrandr, or a graphical front-end to xrandr such as gnome-display-settings.

Disabling KMS

If KMS causes you problems, you can disable it and return to legacy mode setting by booting with the nomodeset kernel boot option.

Legacy mode setting

Legacy mode setting means the Intel Xorg driver does the mode setting.

There are two ways to configure the driver, either the 'old fashion' way through xorg.conf, or using xrandr (either from the cmd line or through a display utility such as gnome-display-properties).

xorg.conf

The basic working starting point for the sections relevant to graphics (excluding any manually loaded modules) is:

Section "Device"
        Identifier "Intel Graphics Adapter"
        Driver     "intel"
EndSection

Section "Screen"
        Identifier "Default Screen"
        Device "Intel Graphics Adapter"
EndSection

But with modern distributions even the above is not necessarily needed as the video chipset, resolution, refresh rate, etc will be auto-detected. If you don't like the auto-detected settings, you can use the XRandR command line utility to adjust them dynamically without having to restart the X server! You can always of course get more sophisticated with the xorg.conf file. Just type man intel or read Intel's documentation for more info.

External display with XRandR

Unfortunately, given all the radical changes to the Intel driver, and especially now with KMS, external display support has been rather in flux.

One of the issues encountered is that the maximum virtual screensize depending on driver version (or in the case of KMS, the kernel). This is important if you want to have an extended desktop (dual-display), but not for Mirror mode. If your using KMS, depending on what patches made it into the kernel the maximum virtual screensize is either 2048x2048 or 4096x4096. If your not using KMS, depending on the Intel driver version it will be either 1280x1280 or 2048x2048. 4096x4096 is not possible without KMS, and even then you might have to add this patch http://lists.freedesktop.org/archives/intel-gfx/2009-July/003353.html to your kernel to enable it.

To see what your virtual screensize is, simply run xrandr from a cmdline and look for something like this

Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 4096 x 4096

As you can see in the above example the maximum virtual screensize is 4096x4096 which is ideal, and again, only possible in combination with KMS. If your getting 1280x1280 instead, your running an older Intel driver and have to add the Virtual line as shown below to your xorg.conf

Section "Screen"
     Identifier      "Default Screen"
     Device          "Intel Graphics Adapter"
     SubSection "Display"
            Virtual         2048 2048
     EndSubSection
EndSection

Once you have started X, you should find that your multiple monitors are automatically activated and mirror each other to the extent allowed by their potentially different geometries. If you want them to appear as a "large desktop", you need to adjust their relative position with the XRandR utility. You can get an idea of what you're working with by typing

xrandr -q

This will give you a list of outputs and tell you which ones are connected. The external display port should be called "VGA" or "DVI" (or "VGA1" or "DVI1" in case of KMS) while the builtin LCD should be called "LVDS". (or "LVDS1" in case of KMS). If, for example you want to stack your desktops vertically, you might do something like

xrandr --output LVDS --below VGA

or

xrandr --output VGA --below LVDS

your window manager may treat the two cases differently in terms of where it decides to put things like the toolbar. Ideally, you probably want to put the desired xrandr command someplace that it might get executed before your window manager starts. For example in your ~/.xsession or ~/.xinitrc file.

External VGA port with xorg.conf

While XRandR eliminates the need to deal with xorg.conf in posititioning your screens, you may just want them to be laid out correctly from the outset. In this case, you can specify the default orientation of the displays in the xorg.conf file (which you can still change later with XRandR). This involves adding a "Monitor" section for each physical display output specifying its position. You must also tell the driver which "Monitor" belongs to which output (VGA,LVDS,etc) with the associated "monitor-..." option.

Section "Device"
        Identifier "Intel 945GM"
        Driver     "intel"
	Option     "monitor-VGA"  "External VGA"
	Option     "monitor-LVDS" "Builtin LCD"
EndSection

Section "Monitor"
     Identifier "Builtin LCD"
     Option "Below" "External VGA"
EndSection

Section "Monitor"
     Identifier "External VGA"
     Option "Above" "Builtin LCD"
EndSection

Section "Screen"
        Identifier "Screen Dual"
        Device "Intel 945GM"
	SubSection "Display"
                Virtual 2048 2048
	EndSubSection
EndSection

More info can be found at http://www.intellinuxgraphics.org/dualhead.html

VESA (console) resolution

Largest video resolution, supported by VESA for T60 is 1280x1024. You can set that for console in grub or lilo by adding vga=794 option.

SVideo port

The SVideo Port can be activated using xrandr. run

xrandr --verbose

to see if there is a TV section. The supported TV_FORMATs and other options are listed. The parameters TOP, RIGHT, BOTTOM ans LEFT are used to control the TV-overscan.

#set the TV format
xrandr --output TV --set TV_FORMAT PAL
#set the overscan (adjust fitting your TV)
xrandr --output TV --set TOP 20
xrandr --output TV --set RIGHT 20
xrandr --output TV --set BOTTOM 0
xrandr --output TV --set LEFT 40
#turn on the TV output
xrandr --output TV --auto
#turn off...
xrandr --output TV --off

This works for my Thinkpad R60, running Debian Lenny


DVI port

DVI passthrough is only supported on the T60 in combination with a docking station. Maximum resolution is 2048x1536

Suspend behaviour

  • Required kernel parameters for suspend to ram: none
  • Additional notes:
    • switch to/from X11 to reinitialize display properly (stays black)
    • DO NOT use vbetool to save/restore the video mode, this breakes resume!

ThinkPads this chip may be found in