Difference between revisions of "Intel Graphics Media Accelerator 900"
| Ordonnateur (Talk | contribs) m (→Setting up two screens:   Xinerama) |  (Added how to set up PAL support (tested here!)) | ||
| Line 79: | Line 79: | ||
| This will only use the TV. At least on a T43 clone mode doesn't work with TV so you should setup a special Server Layout for TV. | This will only use the TV. At least on a T43 clone mode doesn't work with TV so you should setup a special Server Layout for TV. | ||
| − | Switching to PAL mode is [https://bugs.freedesktop.org/show_bug.cgi?id=2782 not yet supported]. | + | <s>Switching to PAL mode is [https://bugs.freedesktop.org/show_bug.cgi?id=2782 not yet supported].</s> | 
| + | |||
| + | === PAL Mode === | ||
| + | |||
| + | PAL mode is now possible. First set the svideo as shown above. Once you get a visual output from the television. It should be in [http://wilmer.gaast.net/blog/archives/33-Intel-X.org-driver,-PAL-TV-Out,-colours-please!.html black and white]. add the following lines to the end of your xorg.conf file: | ||
| + | |||
| + |   Section "Monitor" | ||
| + |           Identifier      "TV" | ||
| + |           Option          "TV Format" "PAL" | ||
| + |   EndSection | ||
| + | |||
| Example setup: | Example setup: | ||
Revision as of 21:03, 10 February 2008
| Intel Graphics Media Accelerator 900This is an Intel video adapter Features
 | 
Linux X.Org driver
This chip is supported by the 'i810' driver as part of the X.Org distribution
For DRI-Support, you may have to install the latest Drivers from DRI Snapshot you need following files:
common-<CurrentVersion>-linux.i386.tar.bz2
i915-<CurrentVersion>-linux.tar.bz2
Extract both in the same Directory and run install.sh
After that restart your X-Server and enjoy OpenGL-Support ;-)
At least on a T43, you also want to add acpi_sleep=s3_bios to the kernel command line (edit your LILO or GRUB configuration file to do that), in order to make sure that Xorg continues to work after a suspend/resume cycle.
For those who is using Gentoo with xorg-x11-6.8.2 and can't get i810 driver working: you can emerge xorg-x11-6.9.0 (unmask it first) and everything will work out of the box (tested with kernel 2.6.15-gentoo-r1).
Warning: Debian users, do not install the DRI Snapshot, it will overwrite several files in several packages and cause you all manner of grief. (not if you build whole Xorg release, for example 6.9.0 which includes DRI and then install it to '/usr/local' - which is the default location if you install with 'make install') If you're using Stable with xorg from sarge-backports (at backports.org), you can install all the required files from that repository, Etch (Testing/Unstable) users can install from the Testing/Unstable repositories at debian.org
Debian success story:It is wise to choose relatively fresh kernel version (2.6.17.13 works for sure). It will contain driver module i915. For DRI to work there should be 4 kernel modules: agpgart, intel_agp, drm and i915. There also must be fresh xorg graphic driver (i810). Xorg 6.9.0 is fresh enough (in older version, namely XFree 4.3 everything compiles with no problems, but after starting X enviroment screen gets black although you can hear sounds). While building Xorg don't 'make install', use checkinstall instead: 'checkinstall --showinstall=yes -D "make install"'. Detailed instructions for setting up and troubleshooting DRI can be found at: http://dri.freedesktop.org/wiki/DriTroubleshooting and http://dri.sourceforge.net/doc/DRIuserguide.html. Remember to set bus mastering. To check whether DRI is running use 'glxinfo'.
Linux Intel driver
You can find Linux drivers for this card on Intel's site. The site offers much information about how to install this card on many distributions, mainly Red Hat and SuSe. The "Intel" driver above is just a snapshot of the Xorg/XFree86 driver.
The display now (Fedora Core 5 - xorg-x11-server-Xorg-1.0.1-9.fc5.1.1) works perfectly using X.Org driver. All you need to do is change xorg.conf frequencies in the monitor section like this:
       HorizSync    31.5-90
       VertRefresh  50-90
ThinkPad LCD
Display on the internal LCD works as long as you set the monitor settings correct.
External VGA port
Works well in clone mode at least. Dualhead is supported.
/etc/X11/xorg.conf
       Section "Device"
           Identifier      "Intel Corporation Intel Default Card"
           Driver          "i810"
           BusID           "PCI:0:2:0"
           Option          "MonitorLayout" "CRT,LFP"
           Option          "Clone" "true"
       EndSection
Now you can enable|disable vga out with i810switch crt on|off
Now you can turn on/off the TV-Out by executing the commands
- # echo "crt_enable" > /proc/acpi/ibm/video
or
- # echo "crt_disable" > /proc/acpi/ibm/video
Or toggle between them with
- # echo "video_switch" > /proc/acpi/ibm/video
SVideo port
See above, but use
Option "MonitorLayout" "TV"
This will only use the TV. At least on a T43 clone mode doesn't work with TV so you should setup a special Server Layout for TV.
Switching to PAL mode is not yet supported.
PAL Mode
PAL mode is now possible. First set the svideo as shown above. Once you get a visual output from the television. It should be in black and white. add the following lines to the end of your xorg.conf file:
 Section "Monitor"
         Identifier      "TV"
         Option          "TV Format" "PAL"
 EndSection
Example setup:
       Section "Device"
               Identifier      "IGM 900 TVout"
               Driver          "i810"
               BusID           "PCI:0:2:0"
               Option          "MonitorLayout" "TV
       EndSection
       Section "Monitor"
               Identifier   "PAL TV"
               HorizSync    30-68
               VertRefresh  50-120
               Mode "720x576"
                       DotClock 42.601
                       HTimings 720 760 832 944
                       VTimings 576 577 580 602
                       Flags    "-HSync" "-VSync"
               EndMode
       EndSection
       Section "Screen"
               Identifier  "TV Screen"
               Device      "IGM 900 TVout"
               Monitor     "PAL TV"
               DefaultDepth 24
               DefaultFbbpp 32
               Subsection "Display"
                       Depth   24
                       FbBpp   32
                       Modes   "720x576"
               EndSubsection
       EndSection
Put the next Section below all other Layouts, else it will become the default!
       Section "ServerLayout"
               Identifier      "TV"
               Screen          "TV Screen"
               InputDevice     "Generic Keyboard" # edit these lines to your needs
               InputDevice     "IBM Trackpoint"
               InputDevice     "Synaptics Touchpad"
       EndSection
You can now use the TV on tty8 by executing
- # startx :1 -- -layout TV
Problems with high resolution video playback
If you get this error, because you eg try to play HDTV on 1024x768
X11 error: BadAlloc (insufficient resources for operation)
try the following option:
Option "LinearAlloc" "6144"
Setting up two screens
If you have an external monitor, and you want to use both your internal LCD display and your external monitor, you'll have to make some changes in the default /etc/X11/xorg.conf. With the changes below, your X uses both monitors, and you can move your mouse pointer from one screen to the other, let some of your applications run on one screen, and the other applications run on the other. Unfortunately, you can't move the application from one screen to the other. If someone knows how to achieve that, I would appreciate a posting here. To move applications between screen you need Xinerama see Installing_Ubuntu_on_a_ThinkPad_R60e#Xorg.config_for_two_screens.
Step 1: Define two devices.
       Section "Device"
               Identifier      "Intel Corporation Intel Default Card"
               Driver          "i810"
               BusID           "PCI:0:2:0"
               Option          "MonitorLayout" "CRT,LFP"
               Screen          0
       EndSection
       Section "Device"
               Identifier      "Intel Corporation Intel Default Card External"
               Driver          "i810"
               BusID           "PCI:0:2:0"
               Option          "Display"       "CRT"
               Option          "MonitorLayout" "CRT,LFP"
               Screen          1
       EndSection
Step 2: Define two monitors. The first one is your external monitor and the second one is your internal LCD. You must adapt the values for HorizSync, VertRefresh and the Display Size for your external monitor! The examples below work for a Samsung Samtron 94B.
       Section "Monitor"
               Identifier      "External Monitor"
               HorizSync       30-81
               VertRefresh     56-75
               DisplaySize     372 301
               Option          "DPMS"
       EndSection
       Section "Monitor"
               Identifier      "Generic Monitor"
               HorizSync       31.5-90
               VertRefresh     50-90
               Option          "DPMS"
       EndSection
Step 3: Define two screens. Again, check the values for the second screen, they must fit to your external monitor!
       Section "Screen"
               Identifier      "Default Screen"
               Device          "Intel Corporation Intel Default Card"
               Monitor         "Generic Monitor"
               DefaultDepth    24
               SubSection "Display"
                       Depth           1
                       Modes           "800x600" "640x480"
               EndSubSection
               SubSection "Display"
                       Depth           4
                       Modes           "800x600" "640x480"
               EndSubSection
               SubSection "Display"
                       Depth           8
                       Modes           "800x600" "640x480"
               EndSubSection
               SubSection "Display"
                       Depth           15
                       Modes           "800x600" "640x480"
               EndSubSection
               SubSection "Display"
                       Depth           16
                       Modes           "1024x768" "800x600" "640x480"
               EndSubSection
               SubSection "Display"
                       Depth           24
                       Modes           "1024x768" "800x600" "640x480"
               EndSubSection
       EndSection
       Section "Screen"
               Identifier      "External Screen"
               Device          "Intel Corporation Intel Default Card External"
               Monitor         "External Monitor"
               DefaultDepth    24
               SubSection "Display"
                       Depth           24
                       Modes           "1280x1024" "1024x768" "800x600" "640x480"
               EndSubSection
       EndSection
Step 4: Define the server layout. Define the position of your internal LCD screen (my X41 is LeftOf my external screen)
       Section "ServerLayout"
               Identifier      "Default Layout"
               Screen          0 "External Screen"
               Screen          1 "Default Screen" LeftOf "External Screen"
               InputDevice     "Generic Keyboard"
               InputDevice     "Configured Mouse"
               InputDevice     "Generic Mouse"
       EndSection
DVI port
DVI could theoretically be supported if a TMDS transmitter where hooked up to one of the pipes, which is NOT the case on any ThinkPad.
Linux kernel Framebuffer driver
This chip will work with either the 'vesa' or 'intelfb' driver as part of any recent 2.4 or 2.6 kernel.
