<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Warriorness</id>
	<title>ThinkWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.thinkwiki.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Warriorness"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Warriorness"/>
	<updated>2026-04-03T19:57:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34087</id>
		<title>Problems with fglrx</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34087"/>
		<updated>2007-10-23T14:24:27Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page discusses issues with the ATI proprietary [[fglrx]] display driver.&lt;br /&gt;
&lt;br /&gt;
== Known Troubles and Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== X-specific issues ===&lt;br /&gt;
&lt;br /&gt;
==== upgrading xserver-xorg ====&lt;br /&gt;
ATI proprietary drivers version 8.21.7 and later work with x.org 6.9.&lt;br /&gt;
&lt;br /&gt;
If you are running an older version (8.20.8) under Debian sid and you upgrade your xserver-xorg, apt will force you to remove any debian-packaged fglrx drivers (package fglrx-driver depends on x.org &amp;lt;&amp;lt; 6.8.99).  You can just download the driver from the ATI site and install after modifying the Debian packager script to allow dependencies to be satisfied by x.org 6.9, or just download 8.21.7 and install manually.  See talk page for step-by-step commands.&lt;br /&gt;
&lt;br /&gt;
After installing the fglrx driver, you can use module-assist to build the appropriate kernel module.&lt;br /&gt;
&lt;br /&gt;
==== new Xorg ID Scheme ====&lt;br /&gt;
ATI proprietary drivers &amp;lt;=8.36.5 with xorg &amp;gt;=7.1.0-18 (==1.3.0.0) in Debian Sid and Fedora ([http://www.sidux.com/PNphpBB2-viewtopic-t-3162-postdays-0-postorder-asc.html Debian] and [http://www.phoronix.net/forums/showthread.php?t=2382 Fedora] Forum Entries)&lt;br /&gt;
&lt;br /&gt;
Ubuntu feisty made their own xorg with the standard id of 7.2, to work around this issue.&lt;br /&gt;
&lt;br /&gt;
Xorg has changed its ID Scheme in newer Versions, and fglrx cannot cope with that (Error message saying &amp;quot;[...] X version mismatch - detected X.org 1.3.-1.905, required X.org 7.1.0.0 [...]&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
A binary hack solves the Problem [http://rage3d.com/board/showthread.php?s=4638d94143536f6acacbccd8f0443472&amp;amp;t=33889029 (rage3d.com Forum Entry)]. This is a very '''dirty''' solution, and is probably violating the ATI driver license. &lt;br /&gt;
&lt;br /&gt;
Simply using the open source ati driver (or holding back the xorg upgrades) until a new driver is released, is suggested.&lt;br /&gt;
&lt;br /&gt;
As of version 8.37.6, this issue is solved. No more binary hacking needed.&lt;br /&gt;
&lt;br /&gt;
=== Kernel-specific troubles ===&lt;br /&gt;
&lt;br /&gt;
Using ATI drivers &amp;lt;=8.21.7 with kernel &amp;gt;=2.6.15 needs a [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch].  (see table below for detail.) If you can't compile the driver modules with 2.6.15 or later, you should apply this [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch patch] instead. &lt;br /&gt;
&lt;br /&gt;
If you do not use one of these patches, you may experience peculiar lockups of X.  Try {{cmduser|fglrxinfo}} - if your shell hangs at the end of this command, you may have an issue and should try the patch or upgrade.&lt;br /&gt;
&lt;br /&gt;
Although unproven, there is a substantial amount of user / developer concern that the above patches prevent hard lockups but do not provide full reliability with 2.6.15 and there are larger / redisgn issues preventing compatibility.  These issues have been fixed with later ATI drivers (&amp;gt; 8.21.7) so you can simply upgrade if you are running a more modern kernel.&lt;br /&gt;
&lt;br /&gt;
==== 2.6.23 ====&lt;br /&gt;
In 2.6.23 release cycle, config option CONFIG_SUSPEND_SMP got renamed to CONFIG_PM_SLEEP_SMP. fglrx uses this variable for disabling power management on older kernels. As a result, SMP users running 2.6.23 weren't able to resume properly (almost instant lockup in that rare case fglrx managed to show a few usable pixels. A [http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-10/msg03437.html quick patch] is available.&lt;br /&gt;
&lt;br /&gt;
=== No hardware acceleration ===&lt;br /&gt;
&lt;br /&gt;
====Acceleration lost after driver update====&lt;br /&gt;
If you lose hardware acceleration after a driver update this can be caused by an old fglrx kernel module being loaded.&lt;br /&gt;
&lt;br /&gt;
Check out {{path|1=/var/log/Xorg.0.log}} for a message like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(WW) fglrx(0): Kernel Module version does *not* match driver.&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can verify this yourself by looking at the version message some lines above. It should read something not matching the installed version like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0): Kernel Module Version Information:&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Name: fglrx&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Version: 8.10.19&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The cause for this trouble might be that there resist multiple versions of the fglrx module within the kernel module search path.&amp;lt;br&amp;gt;&lt;br /&gt;
Go to {{path|1=/lib/modules/&amp;lt;your linux kernel version&amp;gt;/}} and type {{cmdroot|1=grep fglrx modules.dep}}.&amp;lt;br&amp;gt;&lt;br /&gt;
If grep finds multiple lines you nailed down the problem. All you have to do now is to delete any versions of the module (look at the filedate) but the most current one. Then run {{cmdroot|1=depmod}} and you are done.&lt;br /&gt;
&lt;br /&gt;
{{HINT|Newer versions (8.21.7) of the fglrx module seem to be installed in the &amp;lt;code&amp;gt;extra/&amp;lt;/code&amp;gt; subdirectory.&amp;lt;br&amp;gt;&lt;br /&gt;
Older versions (8.19.10) used to be located in the &amp;lt;code&amp;gt;kernel/drivers/char/drm/&amp;lt;/code&amp;gt; subdirectory.}}&lt;br /&gt;
&lt;br /&gt;
====GCC 3.4====&lt;br /&gt;
If the ATI driver works only without the hardware acceleration, take into consideration that {{path|fglrx_dri.so}} was linked against libstdc++.so.5 which may not be present if your system uses gcc-3.4.&lt;br /&gt;
&lt;br /&gt;
To fix this, compile gcc-3.3.5 and copy &amp;lt;tt&amp;gt;libstdc++.so.5*&amp;lt;/tt&amp;gt; to {{path|/usr/lib}} and update the dynamic linker cache via {{cmdroot|ldconfig}}.&lt;br /&gt;
&lt;br /&gt;
Or install a compat package for your favorite distro. FC4 users can do:&lt;br /&gt;
:{{cmdroot|yum install libstdc++.so.5}}&lt;br /&gt;
&lt;br /&gt;
====radeonfb framebuffer====&lt;br /&gt;
Another possible cause for broken hardware acceleration (2D and 3D) is the radeonfb framebuffer: Switching to vesafb or vesafb-tng is reported to solve the problem on some systems. Also it has proven helpful to not perform {{cmdroot|modprobe fglrx}} after boot but to have the module loaded via {{path|/etc/modules.autoload/kernel2.x}} at boottime instead.&lt;br /&gt;
&lt;br /&gt;
====Perpetual Mesa GLX Indirect on Debian====&lt;br /&gt;
If you've done everything right and you're still seeing:&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|fglrxinfo}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.1)}}&lt;br /&gt;
&lt;br /&gt;
try this:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|mkdir -p /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
&lt;br /&gt;
Thanks to Maciej Matysiak for the clear debug [http://lists.debian.org/debian-amd64/2006/02/msg00217.html here] and solution [http://lists.debian.org/debian-amd64/2006/02/msg00311.html here].&lt;br /&gt;
&lt;br /&gt;
More generally, use LIBGL_DEBUG=verbose fglrxinfo, to see what's happening, and whether you get this:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/X11R6/lib/modules/dri/fglrx_dri.so failed (/usr/X11R6/lib/modules/dri/fglrx_dri.so: cannot open shared object file: No such file or directory)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.2)}}&lt;br /&gt;
&lt;br /&gt;
instead of that:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: busid is PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: minor is 0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: node name is /dev/dri/card0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: open result is 4, (OK)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmOpenMinor returns 4}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmGetBusid reports PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|Can't open configuration file /home/merlin/.drirc: No such file or directory.}}&lt;br /&gt;
:{{cmdresult|fglrx: DPD supported.}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: ATI Technologies Inc.}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: MOBILITY FIREGL T2 Pentium 4 (SSE2) (FireGL) (GNU_ICD)}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 2.0.5879 (8.26.18)}}&lt;br /&gt;
&lt;br /&gt;
I have contacted ATI to add that info by default, the mesa guys to do that in glxinfo too, as well as the debian packager to fix the debian packaging bug (2006/07/22), so hopefully the situation will improve soon&lt;br /&gt;
&lt;br /&gt;
You may have to run fglrxinfo as root to get this detail rather than a useless message.&lt;br /&gt;
&lt;br /&gt;
==== Where to look for fglrx_dri.so (gentoo and general)====&lt;br /&gt;
After installing a new kernel (linux-2.6.20-gentoo-r7) with gentoo I again was not able to get the ATI driver working&lt;br /&gt;
correctly. But now I found out what the problem was:&lt;br /&gt;
&lt;br /&gt;
I tried &lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.35.5 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/lib32/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/lib32/dri/fglrx_dri.so failed (/usr/lib32/dri/fglrx_dri.so: wrong ELF class: ELFCLASS32)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
&lt;br /&gt;
The error itself makes sense, because I am running a 64-Bit linux on AMD. The question was, why libGL tries to look&lt;br /&gt;
in /usr/lib32 only...&lt;br /&gt;
&lt;br /&gt;
After some digging around I found out, that apparently 8.35.5 version of the driver uses the environment variable&lt;br /&gt;
'''LIBGL_DRIVERS_PATH''' to find out where it should look for the &amp;quot;fglrx_dri.so&amp;quot; driver.&lt;br /&gt;
&lt;br /&gt;
Now in my case this environment variable pointed to &amp;quot;/usr/lib32/dri&amp;quot; and that was what caused the problem.&lt;br /&gt;
So doing&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;export LIBGL_DRIVERS_PATH='/usr/lib64/dri:/usr/lib32/dri'&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
solved the problem in my case.&lt;br /&gt;
&lt;br /&gt;
As mentioned I use gentoo. After some more digging around I found out, that it is apparently necessary to call&lt;br /&gt;
:{{cmduser|env-update}}&lt;br /&gt;
after a re-install of the ATI driver. To be more specific, it seems that &amp;quot;eselect opengl set ati&amp;quot; sometimes&lt;br /&gt;
does something wrong. &amp;quot;env-update&amp;quot; seems to repair the problem so that afterwards the '''LIBGL_DRIVERS_PATH'''&lt;br /&gt;
environment variable is set correctly when you log in.&lt;br /&gt;
&lt;br /&gt;
If you want to check, look in &amp;lt;code&amp;gt;/etc/profile.env&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/etc/profile.csh&amp;lt;/code&amp;gt;. This is the&lt;br /&gt;
place where the '''LIBGL_DRIVERS_PATH''' environment variable gets set.&lt;br /&gt;
&lt;br /&gt;
=== Softlink hell ===&lt;br /&gt;
The [[fglrx]] installer replaces the standard X.org OpenGL implementation (Mesa) with its own files, potentially causing collisions with the distribution's file and package management. It is best to install the driver via a package built for your distribution, which will typically include the necessary kludges to make things work. See the [[fglrx]] page for pointers.&lt;br /&gt;
&lt;br /&gt;
====Discussion====&lt;br /&gt;
If using {{cmduser|fglrxinfo}} after installing [[fglrx]] indicates that you are still using the mesa indirect software GL renderer, you likely have some misplaced softlinks.  It seems like it has to do with an apt-get upgrade that sometimes replaces these links.  Anyway, go to&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
and list your GL libraries and links&lt;br /&gt;
:{{cmdroot|ls -la *GL*}}&lt;br /&gt;
You should see something like the following two lines amoung others:&lt;br /&gt;
:{{cmdresult|libGL.so -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
:{{cmdresult|libGL.so.1 -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
If you see a link to a mesa library (something like {{cmdresult|... -&amp;gt; libGL.mesa.1.2}}), then that's your problem!  Restore the softlink like this (use your actual library version, though):&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
&lt;br /&gt;
For some reason, this link might &amp;quot;break&amp;quot; later, giving you the software rendering once more.  Even after renaming the mesa library to something like &amp;lt;tt&amp;gt;mesa.bkup&amp;lt;/tt&amp;gt;, the system might still find it and link to it despite the name change.  If you have to do this a lot, you could write a restoreGL script.&lt;br /&gt;
&lt;br /&gt;
=====Gentoo=====&lt;br /&gt;
{{Gentoo}} has built in tools for managing the OpenGL symlinks.  &lt;br /&gt;
:{{cmdroot|eselect opengl set ati}}&lt;br /&gt;
If &amp;lt;tt&amp;gt;eselect opengl ati&amp;lt;/tt&amp;gt; doesn't fix it for you, you should probably tell [http://bugs.gentoo.org Gentoo Bugzilla] (assuming they don't know yet).&lt;br /&gt;
&lt;br /&gt;
If {{cmdroot|ldd /usr/X11R6/bin/glxinfo}} shows that your system still uses the xorg-x11 mesa libs after trying one of the above commands, i.e. a line like this:&lt;br /&gt;
:{{cmdresult|1=libGL.so.1 =&amp;gt; /usr/lib/opengl/xorg-x11/lib/libGL.so.1 (0x400a8000)}}&lt;br /&gt;
you will also need to relink {{path|libGl.so.1.2}}:&lt;br /&gt;
:{{cmdroot|cd /usr/lib/opengl/xorg-x11/lib/}}&lt;br /&gt;
:{{cmdroot|mv libGL.so.1.2 libGL.so.1.2_backup}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/libGL.so.1.2 libGL.so.1.2}}&lt;br /&gt;
After another restart of X {{cmduser|fglrxinfo}} should show that it's using the right libs now.&lt;br /&gt;
&lt;br /&gt;
=====Debian=====&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|rm /usr/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|rm /usr/X11R6/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
:{{cmdroot|cp /usr/lib/fglrx/diversions/lib/libGL.so.1.2 .}}&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
:{{cmdroot|ldconfig}}&lt;br /&gt;
&lt;br /&gt;
=== Troubles using software suspend ===&lt;br /&gt;
When the computer resumes from suspend, X only displays a garbled image and the computer is frozen.&lt;br /&gt;
The problem is acknowledged in ATI's release notes and in knowledge base entry &amp;lt;strike&amp;gt;[https://support.ati.com/ics/support/KBResult.asp?searchFor=Search+Words&amp;amp;search.x=0&amp;amp;search.y=0&amp;amp;searchOption=id&amp;amp;questionID=737-218+&amp;amp;task=knowledge&amp;amp;searchTime=-1&amp;amp;productID=&amp;amp;folderID=-1&amp;amp;resultLimit=50 737-218]&amp;lt;/strike&amp;gt; [https://support.ati.com/ics/support/KBAnswer.asp?questionID=218 737-218]. Driver version 8.19.10 has &amp;quot;initial support for Suspend and Resume&amp;quot; but is working very nicely for most people (verified on T43, T43p and T42) without vbetool.&lt;br /&gt;
&lt;br /&gt;
If you are using an older version of fglrx, using [http://www.srcf.ucam.org/~mjg59/vbetool/ vbetool] to save/restore the video card state before/after suspend worked for some people. If you use [[Software Suspend 2|Software Suspend 2 (suspend2)]] scripts, you can simply uncomment &amp;lt;tt&amp;gt;EnableVbetool yes&amp;lt;/tt&amp;gt; in {{path|/etc/hibernate/hibernate.conf}}. Be aware though that it breaks suspend/resume for drivers beginning with version 8.19.10, so remember to disable it again when upgrading.&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ tested with the following configurations&lt;br /&gt;
!model!!distro||kernel!!fglrx!!PM!!success!!comments&lt;br /&gt;
|-&lt;br /&gt;
|{{T42}}||SUSE 9.3||2.6.11||8.14.13||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T41p}}||???||2.6.14||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T42p}}||Debian||2.6.10||Debian packaged||suspend2||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian sid||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 (but not earlier versions!)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian etch||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 and without vbetool&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Ubuntu Breezy||2.6.12-10||8.19.10||swsusp||yes||Perfect.  (Finally.)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.1||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch], requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.2||8.19.10||suspend2 2.2-rc11||yes||requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.19.10||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.20.8||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||FC6||2.6.20-1.2933||8.34.8||swsusp, STR||yes||DRI enabled, occasionally fails, reason unknown.&lt;br /&gt;
|-&lt;br /&gt;
|{{R50p}}||???||???||8.19.10||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14||8.19.10||Suspend to RAM||yes||without vbetool or UseDummyXServer, those two ''break'' the resume process here, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14.3||8.20.8||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{R52}}||Debian sid||2.6.15-rc5||8.20.8||swsup||yes||both vbetool and UseDummyXServer disabled, DRI enabled, needs [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled - console is garbled until switching back from X&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||suspend2 2.2||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||swsusp||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T60}}||Gentoo 2006.1||2.6.19-suspend2||8.31.5||Suspend2||yes||Everything works: 3D, suspend-to-disk, suspend-to-ram, suspend in X.org, switching to VT's at any moment. Never needed to unload any modules manually, worked immediately. Fglrx driver 8.32.5 totally broke suspend for me, so i'm sticking with 8.31.5. T60 2008-B62 model.&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06||2.6.15||8.25.18||swsusp||no||Switching to VT to suspend: no resume, X restarts; Not switching: suspend works, garbled X display on resume, later X restarts&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06 Text Mode||2.6.15||---||swsusp||yes||suspend works in textmode after rmmod fglrx. &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Debian/unstable/experimental||2.6.18||8.31.5-1 (from debian experimental)||susptoram hibernate debian packages||yes||suspend and resume works with X, 3D acc., Xv overlay... &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Fedora Core 6 x86_64||2.6.20-1.2962_1.fc6.cubbi_suspend2|| 8.38.6||suspend2 hibernate||yes||suspend2 hibernate and resume working with libata driver (ahci not tested). Xv still broken since 8.35.5.  Have not needed to set extra_pages_allowance thus far.&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to RAM||yes||works without any problems, justs needs the usual acpi_sleep hacks&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to Disk (Software Suspend)||yes||works without any problems&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.21||8.35.5-1||Suspend to RAM||yes||fglrx module must not be loaded into the kernel, or it won't resume&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||openSUSE 10.2||2.6.21.5||8.37.6||suspend2 2.2.10||yes||/sys/power/suspend2/extra_pages_allowance must be set to 20000&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61p}}||ARCH Linux||2.6.20||8.35.5-1||Suspend to RAM||yes||works with KDE suspend&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Gentoo||2.6.22-r8 gentoo-sources||8.39.4||Suspend to RAM,swsusp||yes||swsusp works without hibernate-script installed (installing breaks it), s-to-RAM works only with CONFIG_FB ''disabled'' in kernel. No acpi_sleep=... parameter, no special script, no vbetool.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Troubles with large RAM ===&lt;br /&gt;
Version 8.14.13 (and probably earlier versions) of the driver does not seem to be able to cope with large amounts of RAM: with 512 MB it works, with 1.5 GB it crashes the machine as soon as X is started. The problem is present only if the &amp;lt;tt&amp;gt;fglrx&amp;lt;/tt&amp;gt; kernel module is loaded, but independently of whether {{kernelconf|CONFIG_HIGHMEM||||||}} is enabled. A workaround is to limit RAM by adding the {{bootparm|mem|864m}} kernel parameter.&lt;br /&gt;
&lt;br /&gt;
Version 8.16.20 fixes the problem.&lt;br /&gt;
&lt;br /&gt;
===Display switching ===&lt;br /&gt;
The switching between internal and external display doesn't work with fglrx versions &amp;lt;= 8.24.8, because the driver blocks messing around with the chipset via ACPI. If you want to use this feature (i.e. during presentations), you should use the &amp;lt;tt&amp;gt;vesa&amp;lt;/tt&amp;gt; server instead (experienced with a R52, Kernel 2.6.11, xorg 6.8.2, fglrx 8.16.20). Or boot notebook with CRT connected, it will automatically detect it and display on both.&lt;br /&gt;
&lt;br /&gt;
===Composite Support===&lt;br /&gt;
ATI has not officially supported composite windowing (alpha channel) enabling hardware accelerated translucent windows (primarily for 'eye candy.')  Enabling Composite in KDE and the fglrx driver results in a very pretty desktop but unacceptably slow performance on a T43p with ATI's FireGL T2.  It is still unusable in its current state (as of driver 8.25.18).&lt;br /&gt;
&lt;br /&gt;
ATI promises support in the future when composite is officially supported by Xorg.  Discussion of current status of drivers can be found in the Rage3d forums' (http://rage3d.com/board) Linux area.&lt;br /&gt;
&lt;br /&gt;
Composite support is, however, supported with recent Mesa and Xorg &amp;gt; 7 with the open source 3d radeon drivers as found in the linux kernel or debian's driver repository.  It works with the [[R300]] / FireGL T2 series as found on the T43p extremely well.  This has made rapid progress in speed with the latest few releases, and as of kernel 2.6.23 runs perfectly well with an R300 based card.&lt;br /&gt;
&lt;br /&gt;
===Hardlock on X logout===&lt;br /&gt;
Up from driver version 8.19.10 you will experience a system hard lock when logging out from X, if the session manager (kdm/gdm) is not properly configured. You have to tell the session manager to restart X.&lt;br /&gt;
&lt;br /&gt;
In the kdm config file (gentoo: {{path|/usr/kde/&amp;lt;VERSION&amp;gt;/share/config/kdm/kdmrc}}) you have to add following to the section &amp;lt;code&amp;gt;[X-:*-Core]&amp;lt;/code&amp;gt;: &lt;br /&gt;
 TerminateServer=true&lt;br /&gt;
&lt;br /&gt;
In the gdm config (/etc/gdm/gdm.conf) file add the following to the daemon-section:&lt;br /&gt;
 AlwaysRestartServer=true&lt;br /&gt;
&lt;br /&gt;
Information from the ATI bugtracker: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another reason of hardlock my be using the wrong AGP driver. Make sure that you have proper drivers for your motherboard loaded before fglrx: (gentoo: {{path|/etc/modules.autoload.d/kernel-2.6}}):&lt;br /&gt;
 intel-agp&lt;br /&gt;
 fglrx&lt;br /&gt;
&lt;br /&gt;
A common problem seems to be mistakenly using ATI Chipset drivers instead of Intel.&lt;br /&gt;
&lt;br /&gt;
Information from gentoo bugtracker: &amp;lt;s&amp;gt;[http://bugs.gentoo.org/show_bug.cgi?id=113685 113685]&amp;lt;/s&amp;gt;. Fixed in 8.25.18&lt;br /&gt;
&lt;br /&gt;
===Cannot switch to VT===&lt;br /&gt;
&lt;br /&gt;
With usplash boot enabled, it may not be possible to switch to a VT from X (Using Alt+Fn). Tested on T60p (Mobility Fire GLV5200) on Ubuntu 6.06 / 6.10 and fglrx 8.25.18 / 8.28.8.  Display may become garbled and system might freeze. Solution (testet on Ubuntu 6.10) is to either remove the &amp;quot;splash&amp;quot; kernel boot parameter or add &amp;quot;vga=791&amp;quot; parameter (&amp;quot;vga=794&amp;quot; can be used on 1400x1050 panel).&lt;br /&gt;
&lt;br /&gt;
http://ati.cchtml.com/show_bug.cgi?id=37 &amp;lt;br&amp;gt;&lt;br /&gt;
https://launchpad.net/distros/ubuntu/+source/usplash/+bug/63558&lt;br /&gt;
&lt;br /&gt;
===Flickering Display===&lt;br /&gt;
&lt;br /&gt;
Some people have reported problems with their display flickering when using ati-drivers newer than 8.14.13. The problem is unclear&lt;br /&gt;
(possibly associated with an incorrect modeline setting) and no known solution exists except to use the open source radeon drivers.&lt;br /&gt;
You can follow this problem here: http://ati.cchtml.com/show_bug.cgi?id=248&lt;br /&gt;
&lt;br /&gt;
===Error messages in system log===&lt;br /&gt;
&lt;br /&gt;
If you find something like the following in {{path|/var/log/messages}}:&lt;br /&gt;
&lt;br /&gt;
:{{cmdresult|kernel: mtrr: base(0xc0000000) is not aligned on a size(0x7ff0000) boundary}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_unlock] *ERROR* Process 5132 using kernel context 0}}&lt;br /&gt;
&lt;br /&gt;
try to execute the following line and reload the fglrx module:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|1=echo &amp;quot;base=0xd0000000 size=0x8000000 type=write-combining&amp;quot; &amp;gt; /proc/mtrr}}&lt;br /&gt;
&lt;br /&gt;
More detailed instructions can be found [http://ubuntuforums.org/showthread.php?t=115104 here].&lt;br /&gt;
&lt;br /&gt;
===Hang when logging out===&lt;br /&gt;
&lt;br /&gt;
A common problem is that when logging out from X, instead of gettign the KDM or GDM prompt, the system hangs.&lt;br /&gt;
&lt;br /&gt;
This is discussed, including workarounds here: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
===No power saving when CRT in use===&lt;br /&gt;
&lt;br /&gt;
When both CRT and LCD are in use, power saving cannot be enabled.&lt;br /&gt;
&lt;br /&gt;
This is reported here: http://ati.cchtml.com/show_bug.cgi?id=304&lt;br /&gt;
&lt;br /&gt;
===WineX / Cedega Installs Software But Errors on Loading Games===&lt;br /&gt;
&lt;br /&gt;
Some users may experience problems with certain FIREGL cards (in my case an ibm t43p laptop with a v3200 ati firegl) whereby projects such as cedega and wine refuse to work with 3d graphics, but native binaries (e.g. quake 4) work fine. A possible workaround is to add the following line in the drivers section of your /etc/X11/xorg.conf &lt;br /&gt;
&lt;br /&gt;
 Option &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This option used to be configured with the older ati drivers when you ran &amp;quot;fglrxconfig&amp;quot;. I have not yet found a way to get it to appear with &amp;quot;aticonfig&amp;quot;, hence the manual insertion. This option is good for several linux distros I have tried, fedora core 5, ubuntu dapper and suse 10.1. It does not appear to effect performance on natively run programs.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|This may cause problems on machines with a Linux kernel version of 2.6.20 or higher (observed choppy video and video color inversion on T60p with both 2.6.20 and 2.6.21).}}&lt;br /&gt;
&lt;br /&gt;
===Line Appears Below Mouse Cursor===&lt;br /&gt;
&lt;br /&gt;
Some users have reported seeing a line approximately 1 mouse height below the bottom edge of the cursor, which follows the mouse and appears to change color based on the image below the cursor.  This has been seen to happen using fglrx without the kernel module installed (in 2D mode) and additionally on external displays or multiple X servers.  To work around the problem, try disabling the DGA extension by making the following changes to your XFree86.conf or xorg.conf file.  Replace (or comment-out)&lt;br /&gt;
 Load &amp;quot;extmod&amp;quot;&lt;br /&gt;
with&lt;br /&gt;
 SubSection  &amp;quot;extmod&amp;quot;&lt;br /&gt;
  Option  &amp;quot;omit xfree86-dga&amp;quot;&lt;br /&gt;
 EndSubSection&lt;br /&gt;
&lt;br /&gt;
===Freeze while using OpenGL Apps===&lt;br /&gt;
&lt;br /&gt;
Some OpenGL applications such as screensavers or games (SecondLife) cause freezes.  The cursor still moves, but otherwise the machine is unresponsive.  This is the case with Xorg 7.1 and fglrx 8.29.6 using an x1400 and other cards.  The solution is to add the following options to the video Device section in xorg.conf:&lt;br /&gt;
 Option &amp;quot;Capabilities&amp;quot; &amp;quot;0x00000800&amp;quot;&lt;br /&gt;
 Option &amp;quot;KernelModuleParm&amp;quot; &amp;quot;locked-userpages=0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Xv doesn't work correctly with drivers &amp;gt;= 8.36 and Xyyyy-cards===&lt;br /&gt;
&lt;br /&gt;
See [http://ati.cchtml.com/show_bug.cgi?id=677] for further information. It seems as if only Xyyyy-cards are affected. Problem: graphical glitches with mplayer, programs like xine and totem might not start up at all. 8.35 doesn't seem to be affected&lt;br /&gt;
&lt;br /&gt;
===Floating Point Exception with various X apps===&lt;br /&gt;
&lt;br /&gt;
When the X server is left to autodetect the DPI, the fglrx driver may fail to supply the monitor dimensions.  Video output switching may contribute to this bug.&lt;br /&gt;
&lt;br /&gt;
Problems were experienced on T42p with Ubuntu 7.04, xorg-driver-fglrx 7.1.0-8.34.8+2.6.20.5-16.29.&lt;br /&gt;
&lt;br /&gt;
This can be observed with xdpyinfo&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|xdpyinfo | grep dimensions}}&lt;br /&gt;
:{{cmdresult|dimensions:    1280x1024 pixels (0x0 millimeters)}}&lt;br /&gt;
&lt;br /&gt;
Many applications will use the screen size and attempt to calculate DPI, resulting in a divide by zero operation and a SIGFPE.&lt;br /&gt;
&lt;br /&gt;
A work around is to supply the dimensions in /etc/X11/xorg.conf.  Use the DisplaySize parameter within your monitor's configuration.  For example:&lt;br /&gt;
&lt;br /&gt;
  Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
          Identifier   &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
          HorizSync    28.0 - 64.0&lt;br /&gt;
          VertRefresh  43.0 - 60.0&lt;br /&gt;
          Option      &amp;quot;DPMS&amp;quot;&lt;br /&gt;
          DisplaySize 433 351&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
== Patches ==&lt;br /&gt;
The following patches might be needed for certain versions of fglrx. Before you apply any of these, make sure that you really need them, as some distributions include all the necessary patches with the appropriate package (e.g. ati-drivers in gentoo).&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.37.6===&lt;br /&gt;
* For kernel 2.6.22 you need this patch from a [http://www.phoronix.com/forums/showthread.php?t=2849 Phoronix thread].&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.35.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.35.5-for-2.6.20.patch For kernel 2.6.20], part of the Fedora packaging scripts in the ATI installer&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.34.8===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.34.8-for-2.6.20.patch For kernel 2.6.20]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.32.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.19/fglrx-8.32.5-for-2.6.19.patch For kernel 2.6.19]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.23.7===&lt;br /&gt;
* For kernel 2.6.16: [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.22.5-intermodule.patch &amp;lt;tt&amp;gt;intermodule&amp;lt;/tt&amp;gt; patch] and [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.23.7-noiommu.patch &amp;lt;tt&amp;gt;noiommu&amp;lt;/tt&amp;gt; patch]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.21.7===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.20.8===&lt;br /&gt;
&lt;br /&gt;
* [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 for kernel 2.6.15]&lt;br /&gt;
or&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx (problem met at least with version 8.18.8)===&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/22/183 for kernel &amp;gt;= 2.6.13 ]  Missing verify_area bug&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.8.25 ===&lt;br /&gt;
* [http://www.rage3d.com/board/showthread.php?t=33798874 for kernels &amp;gt;= 2.6.10]&lt;br /&gt;
* [http://www.gehirn.org.uk/wiki/images/8.8.25-kernel-2.6.11+.patch For kernels &amp;gt;= 2.6.11-rc1]&lt;br /&gt;
&lt;br /&gt;
===Links ===&lt;br /&gt;
* [http://gentoo-wiki.com/HOWTO_ATI_Drivers Gentoo HOWTO ATI]&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34075</id>
		<title>Problems with fglrx</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34075"/>
		<updated>2007-10-22T22:27:08Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page discusses issues with the ATI proprietary [[fglrx]] display driver.&lt;br /&gt;
&lt;br /&gt;
== Known Troubles and Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== X-specific issues ===&lt;br /&gt;
&lt;br /&gt;
==== upgrading xserver-xorg ====&lt;br /&gt;
ATI proprietary drivers version 8.21.7 and later work with x.org 6.9.&lt;br /&gt;
&lt;br /&gt;
If you are running an older version (8.20.8) under Debian sid and you upgrade your xserver-xorg, apt will force you to remove any debian-packaged fglrx drivers (package fglrx-driver depends on x.org &amp;lt;&amp;lt; 6.8.99).  You can just download the driver from the ATI site and install after modifying the Debian packager script to allow dependencies to be satisfied by x.org 6.9, or just download 8.21.7 and install manually.  See talk page for step-by-step commands.&lt;br /&gt;
&lt;br /&gt;
After installing the fglrx driver, you can use module-assist to build the appropriate kernel module.&lt;br /&gt;
&lt;br /&gt;
==== new Xorg ID Scheme ====&lt;br /&gt;
ATI proprietary drivers &amp;lt;=8.36.5 with xorg &amp;gt;=7.1.0-18 (==1.3.0.0) in Debian Sid and Fedora ([http://www.sidux.com/PNphpBB2-viewtopic-t-3162-postdays-0-postorder-asc.html Debian] and [http://www.phoronix.net/forums/showthread.php?t=2382 Fedora] Forum Entries)&lt;br /&gt;
&lt;br /&gt;
Ubuntu feisty made their own xorg with the standard id of 7.2, to work around this issue.&lt;br /&gt;
&lt;br /&gt;
Xorg has changed its ID Scheme in newer Versions, and fglrx cannot cope with that (Error message saying &amp;quot;[...] X version mismatch - detected X.org 1.3.-1.905, required X.org 7.1.0.0 [...]&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
A binary hack solves the Problem [http://rage3d.com/board/showthread.php?s=4638d94143536f6acacbccd8f0443472&amp;amp;t=33889029 (rage3d.com Forum Entry)]. This is a very '''dirty''' solution, and is probably violating the ATI driver license. &lt;br /&gt;
&lt;br /&gt;
Simply using the open source ati driver (or holding back the xorg upgrades) until a new driver is released, is suggested.&lt;br /&gt;
&lt;br /&gt;
As of version 8.37.6, this issue is solved. No more binary hacking needed.&lt;br /&gt;
&lt;br /&gt;
=== Kernel-specific troubles ===&lt;br /&gt;
&lt;br /&gt;
Using ATI drivers &amp;lt;=8.21.7 with kernel &amp;gt;=2.6.15 needs a [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch].  (see table below for detail.) If you can't compile the driver modules with 2.6.15 or later, you should apply this [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch patch] instead. &lt;br /&gt;
&lt;br /&gt;
If you do not use one of these patches, you may experience peculiar lockups of X.  Try {{cmduser|fglrxinfo}} - if your shell hangs at the end of this command, you may have an issue and should try the patch or upgrade.&lt;br /&gt;
&lt;br /&gt;
Although unproven, there is a substantial amount of user / developer concern that the above patches prevent hard lockups but do not provide full reliability with 2.6.15 and there are larger / redisgn issues preventing compatibility.  These issues have been fixed with later ATI drivers (&amp;gt; 8.21.7) so you can simply upgrade if you are running a more modern kernel.&lt;br /&gt;
&lt;br /&gt;
==== 2.6.23 ====&lt;br /&gt;
In 2.6.23 release cycle, config option CONFIG_SUSPEND_SMP got renamed to CONFIG_PM_SLEEP_SMP. fglrx uses this variable for disabling power management on older kernels. As a result, SMP users running 2.6.23 weren't able to resume properly (almost instant lockup in that rare case fglrx managed to show a few usable pixels. A [http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-10/msg03437.html quick patch] is available.&lt;br /&gt;
&lt;br /&gt;
=== No hardware acceleration ===&lt;br /&gt;
&lt;br /&gt;
====Acceleration lost after driver update====&lt;br /&gt;
If you lose hardware acceleration after a driver update this can be caused by an old fglrx kernel module being loaded.&lt;br /&gt;
&lt;br /&gt;
Check out {{path|1=/var/log/Xorg.0.log}} for a message like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(WW) fglrx(0): Kernel Module version does *not* match driver.&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can verify this yourself by looking at the version message some lines above. It should read something not matching the installed version like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0): Kernel Module Version Information:&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Name: fglrx&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Version: 8.10.19&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The cause for this trouble might be that there resist multiple versions of the fglrx module within the kernel module search path.&amp;lt;br&amp;gt;&lt;br /&gt;
Go to {{path|1=/lib/modules/&amp;lt;your linux kernel version&amp;gt;/}} and type {{cmdroot|1=grep fglrx modules.dep}}.&amp;lt;br&amp;gt;&lt;br /&gt;
If grep finds multiple lines you nailed down the problem. All you have to do now is to delete any versions of the module (look at the filedate) but the most current one. Then run {{cmdroot|1=depmod}} and you are done.&lt;br /&gt;
&lt;br /&gt;
{{HINT|Newer versions (8.21.7) of the fglrx module seem to be installed in the &amp;lt;code&amp;gt;extra/&amp;lt;/code&amp;gt; subdirectory.&amp;lt;br&amp;gt;&lt;br /&gt;
Older versions (8.19.10) used to be located in the &amp;lt;code&amp;gt;kernel/drivers/char/drm/&amp;lt;/code&amp;gt; subdirectory.}}&lt;br /&gt;
&lt;br /&gt;
====GCC 3.4====&lt;br /&gt;
If the ATI driver works only without the hardware acceleration, take into consideration that {{path|fglrx_dri.so}} was linked against libstdc++.so.5 which may not be present if your system uses gcc-3.4.&lt;br /&gt;
&lt;br /&gt;
To fix this, compile gcc-3.3.5 and copy &amp;lt;tt&amp;gt;libstdc++.so.5*&amp;lt;/tt&amp;gt; to {{path|/usr/lib}} and update the dynamic linker cache via {{cmdroot|ldconfig}}.&lt;br /&gt;
&lt;br /&gt;
Or install a compat package for your favorite distro. FC4 users can do:&lt;br /&gt;
:{{cmdroot|yum install libstdc++.so.5}}&lt;br /&gt;
&lt;br /&gt;
====radeonfb framebuffer====&lt;br /&gt;
Another possible cause for broken hardware acceleration (2D and 3D) is the radeonfb framebuffer: Switching to vesafb or vesafb-tng is reported to solve the problem on some systems. Also it has proven helpful to not perform {{cmdroot|modprobe fglrx}} after boot but to have the module loaded via {{path|/etc/modules.autoload/kernel2.x}} at boottime instead.&lt;br /&gt;
&lt;br /&gt;
====Perpetual Mesa GLX Indirect on Debian====&lt;br /&gt;
If you've done everything right and you're still seeing:&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|fglrxinfo}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.1)}}&lt;br /&gt;
&lt;br /&gt;
try this:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|mkdir -p /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
&lt;br /&gt;
Thanks to Maciej Matysiak for the clear debug [http://lists.debian.org/debian-amd64/2006/02/msg00217.html here] and solution [http://lists.debian.org/debian-amd64/2006/02/msg00311.html here].&lt;br /&gt;
&lt;br /&gt;
More generally, use LIBGL_DEBUG=verbose fglrxinfo, to see what's happening, and whether you get this:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/X11R6/lib/modules/dri/fglrx_dri.so failed (/usr/X11R6/lib/modules/dri/fglrx_dri.so: cannot open shared object file: No such file or directory)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.2)}}&lt;br /&gt;
&lt;br /&gt;
instead of that:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: busid is PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: minor is 0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: node name is /dev/dri/card0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: open result is 4, (OK)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmOpenMinor returns 4}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmGetBusid reports PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|Can't open configuration file /home/merlin/.drirc: No such file or directory.}}&lt;br /&gt;
:{{cmdresult|fglrx: DPD supported.}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: ATI Technologies Inc.}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: MOBILITY FIREGL T2 Pentium 4 (SSE2) (FireGL) (GNU_ICD)}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 2.0.5879 (8.26.18)}}&lt;br /&gt;
&lt;br /&gt;
I have contacted ATI to add that info by default, the mesa guys to do that in glxinfo too, as well as the debian packager to fix the debian packaging bug (2006/07/22), so hopefully the situation will improve soon&lt;br /&gt;
&lt;br /&gt;
You may have to run fglrxinfo as root to get this detail rather than a useless message.&lt;br /&gt;
&lt;br /&gt;
==== Where to look for fglrx_dri.so (gentoo and general)====&lt;br /&gt;
After installing a new kernel (linux-2.6.20-gentoo-r7) with gentoo I again was not able to get the ATI driver working&lt;br /&gt;
correctly. But now I found out what the problem was:&lt;br /&gt;
&lt;br /&gt;
I tried &lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.35.5 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/lib32/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/lib32/dri/fglrx_dri.so failed (/usr/lib32/dri/fglrx_dri.so: wrong ELF class: ELFCLASS32)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
&lt;br /&gt;
The error itself makes sense, because I am running a 64-Bit linux on AMD. The question was, why libGL tries to look&lt;br /&gt;
in /usr/lib32 only...&lt;br /&gt;
&lt;br /&gt;
After some digging around I found out, that apparently 8.35.5 version of the driver uses the environment variable&lt;br /&gt;
'''LIBGL_DRIVERS_PATH''' to find out where it should look for the &amp;quot;fglrx_dri.so&amp;quot; driver.&lt;br /&gt;
&lt;br /&gt;
Now in my case this environment variable pointed to &amp;quot;/usr/lib32/dri&amp;quot; and that was what caused the problem.&lt;br /&gt;
So doing&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;export LIBGL_DRIVERS_PATH='/usr/lib64/dri:/usr/lib32/dri'&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
solved the problem in my case.&lt;br /&gt;
&lt;br /&gt;
As mentioned I use gentoo. After some more digging around I found out, that it is apparently necessary to call&lt;br /&gt;
:{{cmduser|env-update}}&lt;br /&gt;
after a re-install of the ATI driver. To be more specific, it seems that &amp;quot;eselect opengl set ati&amp;quot; sometimes&lt;br /&gt;
does something wrong. &amp;quot;env-update&amp;quot; seems to repair the problem so that afterwards the '''LIBGL_DRIVERS_PATH'''&lt;br /&gt;
environment variable is set correctly when you log in.&lt;br /&gt;
&lt;br /&gt;
If you want to check, look in &amp;lt;code&amp;gt;/etc/profile.env&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/etc/profile.csh&amp;lt;/code&amp;gt;. This is the&lt;br /&gt;
place where the '''LIBGL_DRIVERS_PATH''' environment variable gets set.&lt;br /&gt;
&lt;br /&gt;
=== Softlink hell ===&lt;br /&gt;
The [[fglrx]] installer replaces the standard X.org OpenGL implementation (Mesa) with its own files, potentially causing collisions with the distribution's file and package management. It is best to install the driver via a package built for your distribution, which will typically include the necessary kludges to make things work. See the [[fglrx]] page for pointers.&lt;br /&gt;
&lt;br /&gt;
====Discussion====&lt;br /&gt;
If using {{cmduser|fglrxinfo}} after installing [[fglrx]] indicates that you are still using the mesa indirect software GL renderer, you likely have some misplaced softlinks.  It seems like it has to do with an apt-get upgrade that sometimes replaces these links.  Anyway, go to&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
and list your GL libraries and links&lt;br /&gt;
:{{cmdroot|ls -la *GL*}}&lt;br /&gt;
You should see something like the following two lines amoung others:&lt;br /&gt;
:{{cmdresult|libGL.so -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
:{{cmdresult|libGL.so.1 -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
If you see a link to a mesa library (something like {{cmdresult|... -&amp;gt; libGL.mesa.1.2}}), then that's your problem!  Restore the softlink like this (use your actual library version, though):&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
&lt;br /&gt;
For some reason, this link might &amp;quot;break&amp;quot; later, giving you the software rendering once more.  Even after renaming the mesa library to something like &amp;lt;tt&amp;gt;mesa.bkup&amp;lt;/tt&amp;gt;, the system might still find it and link to it despite the name change.  If you have to do this a lot, you could write a restoreGL script.&lt;br /&gt;
&lt;br /&gt;
=====Gentoo=====&lt;br /&gt;
{{Gentoo}} has built in tools for managing the OpenGL symlinks.  &lt;br /&gt;
:{{cmdroot|eselect opengl set ati}}&lt;br /&gt;
If &amp;lt;tt&amp;gt;eselect opengl ati&amp;lt;/tt&amp;gt; doesn't fix it for you, you should probably tell [http://bugs.gentoo.org Gentoo Bugzilla] (assuming they don't know yet).&lt;br /&gt;
&lt;br /&gt;
If {{cmdroot|ldd /usr/X11R6/bin/glxinfo}} shows that your system still uses the xorg-x11 mesa libs after trying one of the above commands, i.e. a line like this:&lt;br /&gt;
:{{cmdresult|1=libGL.so.1 =&amp;gt; /usr/lib/opengl/xorg-x11/lib/libGL.so.1 (0x400a8000)}}&lt;br /&gt;
you will also need to relink {{path|libGl.so.1.2}}:&lt;br /&gt;
:{{cmdroot|cd /usr/lib/opengl/xorg-x11/lib/}}&lt;br /&gt;
:{{cmdroot|mv libGL.so.1.2 libGL.so.1.2_backup}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/libGL.so.1.2 libGL.so.1.2}}&lt;br /&gt;
After another restart of X {{cmduser|fglrxinfo}} should show that it's using the right libs now.&lt;br /&gt;
&lt;br /&gt;
=====Debian=====&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|rm /usr/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|rm /usr/X11R6/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
:{{cmdroot|cp /usr/lib/fglrx/diversions/lib/libGL.so.1.2 .}}&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
:{{cmdroot|ldconfig}}&lt;br /&gt;
&lt;br /&gt;
=== Troubles using software suspend ===&lt;br /&gt;
When the computer resumes from suspend, X only displays a garbled image and the computer is frozen.&lt;br /&gt;
The problem is acknowledged in ATI's release notes and in knowledge base entry &amp;lt;strike&amp;gt;[https://support.ati.com/ics/support/KBResult.asp?searchFor=Search+Words&amp;amp;search.x=0&amp;amp;search.y=0&amp;amp;searchOption=id&amp;amp;questionID=737-218+&amp;amp;task=knowledge&amp;amp;searchTime=-1&amp;amp;productID=&amp;amp;folderID=-1&amp;amp;resultLimit=50 737-218]&amp;lt;/strike&amp;gt; [https://support.ati.com/ics/support/KBAnswer.asp?questionID=218 737-218]. Driver version 8.19.10 has &amp;quot;initial support for Suspend and Resume&amp;quot; but is working very nicely for most people (verified on T43, T43p and T42) without vbetool.&lt;br /&gt;
&lt;br /&gt;
If you are using an older version of fglrx, using [http://www.srcf.ucam.org/~mjg59/vbetool/ vbetool] to save/restore the video card state before/after suspend worked for some people. If you use [[Software Suspend 2|Software Suspend 2 (suspend2)]] scripts, you can simply uncomment &amp;lt;tt&amp;gt;EnableVbetool yes&amp;lt;/tt&amp;gt; in {{path|/etc/hibernate/hibernate.conf}}. Be aware though that it breaks suspend/resume for drivers beginning with version 8.19.10, so remember to disable it again when upgrading.&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ tested with the following configurations&lt;br /&gt;
!model!!distro||kernel!!fglrx!!PM!!success!!comments&lt;br /&gt;
|-&lt;br /&gt;
|{{T42}}||SUSE 9.3||2.6.11||8.14.13||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T41p}}||???||2.6.14||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T42p}}||Debian||2.6.10||Debian packaged||suspend2||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian sid||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 (but not earlier versions!)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian etch||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 and without vbetool&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Ubuntu Breezy||2.6.12-10||8.19.10||swsusp||yes||Perfect.  (Finally.)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.1||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch], requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.2||8.19.10||suspend2 2.2-rc11||yes||requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.19.10||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.20.8||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||FC6||2.6.20-1.2933||8.34.8||swsusp, STR||yes||DRI enabled, occasionally fails, reason unknown.&lt;br /&gt;
|-&lt;br /&gt;
|{{R50p}}||???||???||8.19.10||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14||8.19.10||Suspend to RAM||yes||without vbetool or UseDummyXServer, those two ''break'' the resume process here, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14.3||8.20.8||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{R52}}||Debian sid||2.6.15-rc5||8.20.8||swsup||yes||both vbetool and UseDummyXServer disabled, DRI enabled, needs [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled - console is garbled until switching back from X&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||suspend2 2.2||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||swsusp||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T60}}||Gentoo 2006.1||2.6.19-suspend2||8.31.5||Suspend2||yes||Everything works: 3D, suspend-to-disk, suspend-to-ram, suspend in X.org, switching to VT's at any moment. Never needed to unload any modules manually, worked immediately. Fglrx driver 8.32.5 totally broke suspend for me, so i'm sticking with 8.31.5. T60 2008-B62 model.&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06||2.6.15||8.25.18||swsusp||no||Switching to VT to suspend: no resume, X restarts; Not switching: suspend works, garbled X display on resume, later X restarts&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06 Text Mode||2.6.15||---||swsusp||yes||suspend works in textmode after rmmod fglrx. &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Debian/unstable/experimental||2.6.18||8.31.5-1 (from debian experimental)||susptoram hibernate debian packages||yes||suspend and resume works with X, 3D acc., Xv overlay... &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Fedora Core 6 x86_64||2.6.20-1.2962_1.fc6.cubbi_suspend2|| 8.38.6||suspend2 hibernate||yes||suspend2 hibernate and resume working with libata driver (ahci not tested). Xv still broken since 8.35.5.  Have not needed to set extra_pages_allowance thus far.&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to RAM||yes||works without any problems, justs needs the usual acpi_sleep hacks&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to Disk (Software Suspend)||yes||works without any problems&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.21||8.35.5-1||Suspend to RAM||yes||fglrx module must not be loaded into the kernel, or it won't resume&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||openSUSE 10.2||2.6.21.5||8.37.6||suspend2 2.2.10||yes||/sys/power/suspend2/extra_pages_allowance must be set to 20000&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61p}}||ARCH Linux||2.6.20||8.35.5-1||Suspend to RAM||yes||works with KDE suspend&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Gentoo||2.6.22-r8 gentoo-sources||8.39.4||Suspend to RAM,swsusp||yes||swsusp works without hibernate-script installed (installing breaks it), s-to-RAM works only with CONFIG_FB ''disabled'' in kernel.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Troubles with large RAM ===&lt;br /&gt;
Version 8.14.13 (and probably earlier versions) of the driver does not seem to be able to cope with large amounts of RAM: with 512 MB it works, with 1.5 GB it crashes the machine as soon as X is started. The problem is present only if the &amp;lt;tt&amp;gt;fglrx&amp;lt;/tt&amp;gt; kernel module is loaded, but independently of whether {{kernelconf|CONFIG_HIGHMEM||||||}} is enabled. A workaround is to limit RAM by adding the {{bootparm|mem|864m}} kernel parameter.&lt;br /&gt;
&lt;br /&gt;
Version 8.16.20 fixes the problem.&lt;br /&gt;
&lt;br /&gt;
===Display switching ===&lt;br /&gt;
The switching between internal and external display doesn't work with fglrx versions &amp;lt;= 8.24.8, because the driver blocks messing around with the chipset via ACPI. If you want to use this feature (i.e. during presentations), you should use the &amp;lt;tt&amp;gt;vesa&amp;lt;/tt&amp;gt; server instead (experienced with a R52, Kernel 2.6.11, xorg 6.8.2, fglrx 8.16.20). Or boot notebook with CRT connected, it will automatically detect it and display on both.&lt;br /&gt;
&lt;br /&gt;
===Composite Support===&lt;br /&gt;
ATI has not officially supported composite windowing (alpha channel) enabling hardware accelerated translucent windows (primarily for 'eye candy.')  Enabling Composite in KDE and the fglrx driver results in a very pretty desktop but unacceptably slow performance on a T43p with ATI's FireGL T2.  It is still unusable in its current state (as of driver 8.25.18).&lt;br /&gt;
&lt;br /&gt;
ATI promises support in the future when composite is officially supported by Xorg.  Discussion of current status of drivers can be found in the Rage3d forums' (http://rage3d.com/board) Linux area.&lt;br /&gt;
&lt;br /&gt;
Composite support is, however, supported with recent Mesa and Xorg &amp;gt; 7 with the open source 3d radeon drivers as found in the linux kernel or debian's driver repository.  It works with the [[R300]] / FireGL T2 series as found on the T43p extremely well.  This has made rapid progress in speed with the latest few releases, and as of kernel 2.6.23 runs perfectly well with an R300 based card.&lt;br /&gt;
&lt;br /&gt;
===Hardlock on X logout===&lt;br /&gt;
Up from driver version 8.19.10 you will experience a system hard lock when logging out from X, if the session manager (kdm/gdm) is not properly configured. You have to tell the session manager to restart X.&lt;br /&gt;
&lt;br /&gt;
In the kdm config file (gentoo: {{path|/usr/kde/&amp;lt;VERSION&amp;gt;/share/config/kdm/kdmrc}}) you have to add following to the section &amp;lt;code&amp;gt;[X-:*-Core]&amp;lt;/code&amp;gt;: &lt;br /&gt;
 TerminateServer=true&lt;br /&gt;
&lt;br /&gt;
In the gdm config (/etc/gdm/gdm.conf) file add the following to the daemon-section:&lt;br /&gt;
 AlwaysRestartServer=true&lt;br /&gt;
&lt;br /&gt;
Information from the ATI bugtracker: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another reason of hardlock my be using the wrong AGP driver. Make sure that you have proper drivers for your motherboard loaded before fglrx: (gentoo: {{path|/etc/modules.autoload.d/kernel-2.6}}):&lt;br /&gt;
 intel-agp&lt;br /&gt;
 fglrx&lt;br /&gt;
&lt;br /&gt;
A common problem seems to be mistakenly using ATI Chipset drivers instead of Intel.&lt;br /&gt;
&lt;br /&gt;
Information from gentoo bugtracker: &amp;lt;s&amp;gt;[http://bugs.gentoo.org/show_bug.cgi?id=113685 113685]&amp;lt;/s&amp;gt;. Fixed in 8.25.18&lt;br /&gt;
&lt;br /&gt;
===Cannot switch to VT===&lt;br /&gt;
&lt;br /&gt;
With usplash boot enabled, it may not be possible to switch to a VT from X (Using Alt+Fn). Tested on T60p (Mobility Fire GLV5200) on Ubuntu 6.06 / 6.10 and fglrx 8.25.18 / 8.28.8.  Display may become garbled and system might freeze. Solution (testet on Ubuntu 6.10) is to either remove the &amp;quot;splash&amp;quot; kernel boot parameter or add &amp;quot;vga=791&amp;quot; parameter (&amp;quot;vga=794&amp;quot; can be used on 1400x1050 panel).&lt;br /&gt;
&lt;br /&gt;
http://ati.cchtml.com/show_bug.cgi?id=37 &amp;lt;br&amp;gt;&lt;br /&gt;
https://launchpad.net/distros/ubuntu/+source/usplash/+bug/63558&lt;br /&gt;
&lt;br /&gt;
===Flickering Display===&lt;br /&gt;
&lt;br /&gt;
Some people have reported problems with their display flickering when using ati-drivers newer than 8.14.13. The problem is unclear&lt;br /&gt;
(possibly associated with an incorrect modeline setting) and no known solution exists except to use the open source radeon drivers.&lt;br /&gt;
You can follow this problem here: http://ati.cchtml.com/show_bug.cgi?id=248&lt;br /&gt;
&lt;br /&gt;
===Error messages in system log===&lt;br /&gt;
&lt;br /&gt;
If you find something like the following in {{path|/var/log/messages}}:&lt;br /&gt;
&lt;br /&gt;
:{{cmdresult|kernel: mtrr: base(0xc0000000) is not aligned on a size(0x7ff0000) boundary}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_unlock] *ERROR* Process 5132 using kernel context 0}}&lt;br /&gt;
&lt;br /&gt;
try to execute the following line and reload the fglrx module:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|1=echo &amp;quot;base=0xd0000000 size=0x8000000 type=write-combining&amp;quot; &amp;gt; /proc/mtrr}}&lt;br /&gt;
&lt;br /&gt;
More detailed instructions can be found [http://ubuntuforums.org/showthread.php?t=115104 here].&lt;br /&gt;
&lt;br /&gt;
===Hang when logging out===&lt;br /&gt;
&lt;br /&gt;
A common problem is that when logging out from X, instead of gettign the KDM or GDM prompt, the system hangs.&lt;br /&gt;
&lt;br /&gt;
This is discussed, including workarounds here: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
===No power saving when CRT in use===&lt;br /&gt;
&lt;br /&gt;
When both CRT and LCD are in use, power saving cannot be enabled.&lt;br /&gt;
&lt;br /&gt;
This is reported here: http://ati.cchtml.com/show_bug.cgi?id=304&lt;br /&gt;
&lt;br /&gt;
===WineX / Cedega Installs Software But Errors on Loading Games===&lt;br /&gt;
&lt;br /&gt;
Some users may experience problems with certain FIREGL cards (in my case an ibm t43p laptop with a v3200 ati firegl) whereby projects such as cedega and wine refuse to work with 3d graphics, but native binaries (e.g. quake 4) work fine. A possible workaround is to add the following line in the drivers section of your /etc/X11/xorg.conf &lt;br /&gt;
&lt;br /&gt;
 Option &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This option used to be configured with the older ati drivers when you ran &amp;quot;fglrxconfig&amp;quot;. I have not yet found a way to get it to appear with &amp;quot;aticonfig&amp;quot;, hence the manual insertion. This option is good for several linux distros I have tried, fedora core 5, ubuntu dapper and suse 10.1. It does not appear to effect performance on natively run programs.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|This may cause problems on machines with a Linux kernel version of 2.6.20 or higher (observed choppy video and video color inversion on T60p with both 2.6.20 and 2.6.21).}}&lt;br /&gt;
&lt;br /&gt;
===Line Appears Below Mouse Cursor===&lt;br /&gt;
&lt;br /&gt;
Some users have reported seeing a line approximately 1 mouse height below the bottom edge of the cursor, which follows the mouse and appears to change color based on the image below the cursor.  This has been seen to happen using fglrx without the kernel module installed (in 2D mode) and additionally on external displays or multiple X servers.  To work around the problem, try disabling the DGA extension by making the following changes to your XFree86.conf or xorg.conf file.  Replace (or comment-out)&lt;br /&gt;
 Load &amp;quot;extmod&amp;quot;&lt;br /&gt;
with&lt;br /&gt;
 SubSection  &amp;quot;extmod&amp;quot;&lt;br /&gt;
  Option  &amp;quot;omit xfree86-dga&amp;quot;&lt;br /&gt;
 EndSubSection&lt;br /&gt;
&lt;br /&gt;
===Freeze while using OpenGL Apps===&lt;br /&gt;
&lt;br /&gt;
Some OpenGL applications such as screensavers or games (SecondLife) cause freezes.  The cursor still moves, but otherwise the machine is unresponsive.  This is the case with Xorg 7.1 and fglrx 8.29.6 using an x1400 and other cards.  The solution is to add the following options to the video Device section in xorg.conf:&lt;br /&gt;
 Option &amp;quot;Capabilities&amp;quot; &amp;quot;0x00000800&amp;quot;&lt;br /&gt;
 Option &amp;quot;KernelModuleParm&amp;quot; &amp;quot;locked-userpages=0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Xv doesn't work correctly with drivers &amp;gt;= 8.36 and Xyyyy-cards===&lt;br /&gt;
&lt;br /&gt;
See [http://ati.cchtml.com/show_bug.cgi?id=677] for further information. It seems as if only Xyyyy-cards are affected. Problem: graphical glitches with mplayer, programs like xine and totem might not start up at all. 8.35 doesn't seem to be affected&lt;br /&gt;
&lt;br /&gt;
===Floating Point Exception with various X apps===&lt;br /&gt;
&lt;br /&gt;
When the X server is left to autodetect the DPI, the fglrx driver may fail to supply the monitor dimensions.  Video output switching may contribute to this bug.&lt;br /&gt;
&lt;br /&gt;
Problems were experienced on T42p with Ubuntu 7.04, xorg-driver-fglrx 7.1.0-8.34.8+2.6.20.5-16.29.&lt;br /&gt;
&lt;br /&gt;
This can be observed with xdpyinfo&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|xdpyinfo | grep dimensions}}&lt;br /&gt;
:{{cmdresult|dimensions:    1280x1024 pixels (0x0 millimeters)}}&lt;br /&gt;
&lt;br /&gt;
Many applications will use the screen size and attempt to calculate DPI, resulting in a divide by zero operation and a SIGFPE.&lt;br /&gt;
&lt;br /&gt;
A work around is to supply the dimensions in /etc/X11/xorg.conf.  Use the DisplaySize parameter within your monitor's configuration.  For example:&lt;br /&gt;
&lt;br /&gt;
  Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
          Identifier   &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
          HorizSync    28.0 - 64.0&lt;br /&gt;
          VertRefresh  43.0 - 60.0&lt;br /&gt;
          Option      &amp;quot;DPMS&amp;quot;&lt;br /&gt;
          DisplaySize 433 351&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
== Patches ==&lt;br /&gt;
The following patches might be needed for certain versions of fglrx. Before you apply any of these, make sure that you really need them, as some distributions include all the necessary patches with the appropriate package (e.g. ati-drivers in gentoo).&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.37.6===&lt;br /&gt;
* For kernel 2.6.22 you need this patch from a [http://www.phoronix.com/forums/showthread.php?t=2849 Phoronix thread].&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.35.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.35.5-for-2.6.20.patch For kernel 2.6.20], part of the Fedora packaging scripts in the ATI installer&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.34.8===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.34.8-for-2.6.20.patch For kernel 2.6.20]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.32.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.19/fglrx-8.32.5-for-2.6.19.patch For kernel 2.6.19]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.23.7===&lt;br /&gt;
* For kernel 2.6.16: [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.22.5-intermodule.patch &amp;lt;tt&amp;gt;intermodule&amp;lt;/tt&amp;gt; patch] and [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.23.7-noiommu.patch &amp;lt;tt&amp;gt;noiommu&amp;lt;/tt&amp;gt; patch]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.21.7===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.20.8===&lt;br /&gt;
&lt;br /&gt;
* [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 for kernel 2.6.15]&lt;br /&gt;
or&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx (problem met at least with version 8.18.8)===&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/22/183 for kernel &amp;gt;= 2.6.13 ]  Missing verify_area bug&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.8.25 ===&lt;br /&gt;
* [http://www.rage3d.com/board/showthread.php?t=33798874 for kernels &amp;gt;= 2.6.10]&lt;br /&gt;
* [http://www.gehirn.org.uk/wiki/images/8.8.25-kernel-2.6.11+.patch For kernels &amp;gt;= 2.6.11-rc1]&lt;br /&gt;
&lt;br /&gt;
===Links ===&lt;br /&gt;
* [http://gentoo-wiki.com/HOWTO_ATI_Drivers Gentoo HOWTO ATI]&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34073</id>
		<title>Problems with fglrx</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=34073"/>
		<updated>2007-10-22T22:25:12Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: Added entry for 8.39.4 in suspend to ram&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page discusses issues with the ATI proprietary [[fglrx]] display driver.&lt;br /&gt;
&lt;br /&gt;
== Known Troubles and Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== X-specific issues ===&lt;br /&gt;
&lt;br /&gt;
==== upgrading xserver-xorg ====&lt;br /&gt;
ATI proprietary drivers version 8.21.7 and later work with x.org 6.9.&lt;br /&gt;
&lt;br /&gt;
If you are running an older version (8.20.8) under Debian sid and you upgrade your xserver-xorg, apt will force you to remove any debian-packaged fglrx drivers (package fglrx-driver depends on x.org &amp;lt;&amp;lt; 6.8.99).  You can just download the driver from the ATI site and install after modifying the Debian packager script to allow dependencies to be satisfied by x.org 6.9, or just download 8.21.7 and install manually.  See talk page for step-by-step commands.&lt;br /&gt;
&lt;br /&gt;
After installing the fglrx driver, you can use module-assist to build the appropriate kernel module.&lt;br /&gt;
&lt;br /&gt;
==== new Xorg ID Scheme ====&lt;br /&gt;
ATI proprietary drivers &amp;lt;=8.36.5 with xorg &amp;gt;=7.1.0-18 (==1.3.0.0) in Debian Sid and Fedora ([http://www.sidux.com/PNphpBB2-viewtopic-t-3162-postdays-0-postorder-asc.html Debian] and [http://www.phoronix.net/forums/showthread.php?t=2382 Fedora] Forum Entries)&lt;br /&gt;
&lt;br /&gt;
Ubuntu feisty made their own xorg with the standard id of 7.2, to work around this issue.&lt;br /&gt;
&lt;br /&gt;
Xorg has changed its ID Scheme in newer Versions, and fglrx cannot cope with that (Error message saying &amp;quot;[...] X version mismatch - detected X.org 1.3.-1.905, required X.org 7.1.0.0 [...]&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
A binary hack solves the Problem [http://rage3d.com/board/showthread.php?s=4638d94143536f6acacbccd8f0443472&amp;amp;t=33889029 (rage3d.com Forum Entry)]. This is a very '''dirty''' solution, and is probably violating the ATI driver license. &lt;br /&gt;
&lt;br /&gt;
Simply using the open source ati driver (or holding back the xorg upgrades) until a new driver is released, is suggested.&lt;br /&gt;
&lt;br /&gt;
As of version 8.37.6, this issue is solved. No more binary hacking needed.&lt;br /&gt;
&lt;br /&gt;
=== Kernel-specific troubles ===&lt;br /&gt;
&lt;br /&gt;
Using ATI drivers &amp;lt;=8.21.7 with kernel &amp;gt;=2.6.15 needs a [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch].  (see table below for detail.) If you can't compile the driver modules with 2.6.15 or later, you should apply this [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch patch] instead. &lt;br /&gt;
&lt;br /&gt;
If you do not use one of these patches, you may experience peculiar lockups of X.  Try {{cmduser|fglrxinfo}} - if your shell hangs at the end of this command, you may have an issue and should try the patch or upgrade.&lt;br /&gt;
&lt;br /&gt;
Although unproven, there is a substantial amount of user / developer concern that the above patches prevent hard lockups but do not provide full reliability with 2.6.15 and there are larger / redisgn issues preventing compatibility.  These issues have been fixed with later ATI drivers (&amp;gt; 8.21.7) so you can simply upgrade if you are running a more modern kernel.&lt;br /&gt;
&lt;br /&gt;
==== 2.6.23 ====&lt;br /&gt;
In 2.6.23 release cycle, config option CONFIG_SUSPEND_SMP got renamed to CONFIG_PM_SLEEP_SMP. fglrx uses this variable for disabling power management on older kernels. As a result, SMP users running 2.6.23 weren't able to resume properly (almost instant lockup in that rare case fglrx managed to show a few usable pixels. A [http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-10/msg03437.html quick patch] is available.&lt;br /&gt;
&lt;br /&gt;
=== No hardware acceleration ===&lt;br /&gt;
&lt;br /&gt;
====Acceleration lost after driver update====&lt;br /&gt;
If you lose hardware acceleration after a driver update this can be caused by an old fglrx kernel module being loaded.&lt;br /&gt;
&lt;br /&gt;
Check out {{path|1=/var/log/Xorg.0.log}} for a message like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(WW) fglrx(0): Kernel Module version does *not* match driver.&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can verify this yourself by looking at the version message some lines above. It should read something not matching the installed version like:&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0): Kernel Module Version Information:&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Name: fglrx&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;(II) fglrx(0):     Version: 8.10.19&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The cause for this trouble might be that there resist multiple versions of the fglrx module within the kernel module search path.&amp;lt;br&amp;gt;&lt;br /&gt;
Go to {{path|1=/lib/modules/&amp;lt;your linux kernel version&amp;gt;/}} and type {{cmdroot|1=grep fglrx modules.dep}}.&amp;lt;br&amp;gt;&lt;br /&gt;
If grep finds multiple lines you nailed down the problem. All you have to do now is to delete any versions of the module (look at the filedate) but the most current one. Then run {{cmdroot|1=depmod}} and you are done.&lt;br /&gt;
&lt;br /&gt;
{{HINT|Newer versions (8.21.7) of the fglrx module seem to be installed in the &amp;lt;code&amp;gt;extra/&amp;lt;/code&amp;gt; subdirectory.&amp;lt;br&amp;gt;&lt;br /&gt;
Older versions (8.19.10) used to be located in the &amp;lt;code&amp;gt;kernel/drivers/char/drm/&amp;lt;/code&amp;gt; subdirectory.}}&lt;br /&gt;
&lt;br /&gt;
====GCC 3.4====&lt;br /&gt;
If the ATI driver works only without the hardware acceleration, take into consideration that {{path|fglrx_dri.so}} was linked against libstdc++.so.5 which may not be present if your system uses gcc-3.4.&lt;br /&gt;
&lt;br /&gt;
To fix this, compile gcc-3.3.5 and copy &amp;lt;tt&amp;gt;libstdc++.so.5*&amp;lt;/tt&amp;gt; to {{path|/usr/lib}} and update the dynamic linker cache via {{cmdroot|ldconfig}}.&lt;br /&gt;
&lt;br /&gt;
Or install a compat package for your favorite distro. FC4 users can do:&lt;br /&gt;
:{{cmdroot|yum install libstdc++.so.5}}&lt;br /&gt;
&lt;br /&gt;
====radeonfb framebuffer====&lt;br /&gt;
Another possible cause for broken hardware acceleration (2D and 3D) is the radeonfb framebuffer: Switching to vesafb or vesafb-tng is reported to solve the problem on some systems. Also it has proven helpful to not perform {{cmdroot|modprobe fglrx}} after boot but to have the module loaded via {{path|/etc/modules.autoload/kernel2.x}} at boottime instead.&lt;br /&gt;
&lt;br /&gt;
====Perpetual Mesa GLX Indirect on Debian====&lt;br /&gt;
If you've done everything right and you're still seeing:&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|fglrxinfo}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.1)}}&lt;br /&gt;
&lt;br /&gt;
try this:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|mkdir -p /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri}}&lt;br /&gt;
&lt;br /&gt;
Thanks to Maciej Matysiak for the clear debug [http://lists.debian.org/debian-amd64/2006/02/msg00217.html here] and solution [http://lists.debian.org/debian-amd64/2006/02/msg00311.html here].&lt;br /&gt;
&lt;br /&gt;
More generally, use LIBGL_DEBUG=verbose fglrxinfo, to see what's happening, and whether you get this:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/X11R6/lib/modules/dri/fglrx_dri.so failed (/usr/X11R6/lib/modules/dri/fglrx_dri.so: cannot open shared object file: No such file or directory)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: Mesa project: www.mesa3d.org}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: Mesa GLX Indirect}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 1.2 (1.5 Mesa 6.4.2)}}&lt;br /&gt;
&lt;br /&gt;
instead of that:&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.26.18 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: busid is PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: minor is 0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: node name is /dev/dri/card0}}&lt;br /&gt;
:{{cmdresult|drmOpenDevice: open result is 4, (OK)}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmOpenMinor returns 4}}&lt;br /&gt;
:{{cmdresult|drmOpenByBusid: drmGetBusid reports PCI:1:0:0}}&lt;br /&gt;
:{{cmdresult|Can't open configuration file /home/merlin/.drirc: No such file or directory.}}&lt;br /&gt;
:{{cmdresult|fglrx: DPD supported.}}&lt;br /&gt;
:{{cmdresult|display: :0.0  screen: 0}}&lt;br /&gt;
:{{cmdresult|OpenGL vendor string: ATI Technologies Inc.}}&lt;br /&gt;
:{{cmdresult|OpenGL renderer string: MOBILITY FIREGL T2 Pentium 4 (SSE2) (FireGL) (GNU_ICD)}}&lt;br /&gt;
:{{cmdresult|OpenGL version string: 2.0.5879 (8.26.18)}}&lt;br /&gt;
&lt;br /&gt;
I have contacted ATI to add that info by default, the mesa guys to do that in glxinfo too, as well as the debian packager to fix the debian packaging bug (2006/07/22), so hopefully the situation will improve soon&lt;br /&gt;
&lt;br /&gt;
You may have to run fglrxinfo as root to get this detail rather than a useless message.&lt;br /&gt;
&lt;br /&gt;
==== Where to look for fglrx_dri.so (gentoo and general)====&lt;br /&gt;
After installing a new kernel (linux-2.6.20-gentoo-r7) with gentoo I again was not able to get the ATI driver working&lt;br /&gt;
correctly. But now I found out what the problem was:&lt;br /&gt;
&lt;br /&gt;
I tried &lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;LIBGL_DEBUG=verbose&amp;lt;/nowiki&amp;gt; fglrxinfo}}&lt;br /&gt;
:{{cmdresult|libGL: XF86DRIGetClientDriverName: 8.35.5 fglrx (screen 0)}}&lt;br /&gt;
:{{cmdresult|libGL: OpenDriver: trying /usr/lib32/dri/fglrx_dri.so}}&lt;br /&gt;
:{{cmdresult|libGL error: dlopen /usr/lib32/dri/fglrx_dri.so failed (/usr/lib32/dri/fglrx_dri.so: wrong ELF class: ELFCLASS32)}}&lt;br /&gt;
:{{cmdresult|libGL error: unable to find driver: fglrx_dri.so}}&lt;br /&gt;
&lt;br /&gt;
The error itself makes sense, because I am running a 64-Bit linux on AMD. The question was, why libGL tries to look&lt;br /&gt;
in /usr/lib32 only...&lt;br /&gt;
&lt;br /&gt;
After some digging around I found out, that apparently 8.35.5 version of the driver uses the environment variable&lt;br /&gt;
'''LIBGL_DRIVERS_PATH''' to find out where it should look for the &amp;quot;fglrx_dri.so&amp;quot; driver.&lt;br /&gt;
&lt;br /&gt;
Now in my case this environment variable pointed to &amp;quot;/usr/lib32/dri&amp;quot; and that was what caused the problem.&lt;br /&gt;
So doing&lt;br /&gt;
:{{cmduser|&amp;lt;nowiki&amp;gt;export LIBGL_DRIVERS_PATH='/usr/lib64/dri:/usr/lib32/dri'&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
solved the problem in my case.&lt;br /&gt;
&lt;br /&gt;
As mentioned I use gentoo. After some more digging around I found out, that it is apparently necessary to call&lt;br /&gt;
:{{cmduser|env-update}}&lt;br /&gt;
after a re-install of the ATI driver. To be more specific, it seems that &amp;quot;eselect opengl set ati&amp;quot; sometimes&lt;br /&gt;
does something wrong. &amp;quot;env-update&amp;quot; seems to repair the problem so that afterwards the '''LIBGL_DRIVERS_PATH'''&lt;br /&gt;
environment variable is set correctly when you log in.&lt;br /&gt;
&lt;br /&gt;
If you want to check, look in &amp;lt;code&amp;gt;/etc/profile.env&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/etc/profile.csh&amp;lt;/code&amp;gt;. This is the&lt;br /&gt;
place where the '''LIBGL_DRIVERS_PATH''' environment variable gets set.&lt;br /&gt;
&lt;br /&gt;
=== Softlink hell ===&lt;br /&gt;
The [[fglrx]] installer replaces the standard X.org OpenGL implementation (Mesa) with its own files, potentially causing collisions with the distribution's file and package management. It is best to install the driver via a package built for your distribution, which will typically include the necessary kludges to make things work. See the [[fglrx]] page for pointers.&lt;br /&gt;
&lt;br /&gt;
====Discussion====&lt;br /&gt;
If using {{cmduser|fglrxinfo}} after installing [[fglrx]] indicates that you are still using the mesa indirect software GL renderer, you likely have some misplaced softlinks.  It seems like it has to do with an apt-get upgrade that sometimes replaces these links.  Anyway, go to&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
and list your GL libraries and links&lt;br /&gt;
:{{cmdroot|ls -la *GL*}}&lt;br /&gt;
You should see something like the following two lines amoung others:&lt;br /&gt;
:{{cmdresult|libGL.so -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
:{{cmdresult|libGL.so.1 -&amp;gt; libGL.so.1.2}}&lt;br /&gt;
If you see a link to a mesa library (something like {{cmdresult|... -&amp;gt; libGL.mesa.1.2}}), then that's your problem!  Restore the softlink like this (use your actual library version, though):&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
&lt;br /&gt;
For some reason, this link might &amp;quot;break&amp;quot; later, giving you the software rendering once more.  Even after renaming the mesa library to something like &amp;lt;tt&amp;gt;mesa.bkup&amp;lt;/tt&amp;gt;, the system might still find it and link to it despite the name change.  If you have to do this a lot, you could write a restoreGL script.&lt;br /&gt;
&lt;br /&gt;
=====Gentoo=====&lt;br /&gt;
{{Gentoo}} has built in tools for managing the OpenGL symlinks.  &lt;br /&gt;
:{{cmdroot|eselect opengl set ati}}&lt;br /&gt;
If &amp;lt;tt&amp;gt;eselect opengl ati&amp;lt;/tt&amp;gt; doesn't fix it for you, you should probably tell [http://bugs.gentoo.org Gentoo Bugzilla] (assuming they don't know yet).&lt;br /&gt;
&lt;br /&gt;
If {{cmdroot|ldd /usr/X11R6/bin/glxinfo}} shows that your system still uses the xorg-x11 mesa libs after trying one of the above commands, i.e. a line like this:&lt;br /&gt;
:{{cmdresult|1=libGL.so.1 =&amp;gt; /usr/lib/opengl/xorg-x11/lib/libGL.so.1 (0x400a8000)}}&lt;br /&gt;
you will also need to relink {{path|libGl.so.1.2}}:&lt;br /&gt;
:{{cmdroot|cd /usr/lib/opengl/xorg-x11/lib/}}&lt;br /&gt;
:{{cmdroot|mv libGL.so.1.2 libGL.so.1.2_backup}}&lt;br /&gt;
:{{cmdroot|ln -s /usr/lib/libGL.so.1.2 libGL.so.1.2}}&lt;br /&gt;
After another restart of X {{cmduser|fglrxinfo}} should show that it's using the right libs now.&lt;br /&gt;
&lt;br /&gt;
=====Debian=====&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|rm /usr/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|rm /usr/X11R6/lib/libGL.so*}}&lt;br /&gt;
:{{cmdroot|cd /usr/X11R6/lib}}&lt;br /&gt;
:{{cmdroot|cp /usr/lib/fglrx/diversions/lib/libGL.so.1.2 .}}&lt;br /&gt;
:{{cmdroot|ln -s libGL.so.1.2 libGL.so.1}}&lt;br /&gt;
:{{cmdroot|ldconfig}}&lt;br /&gt;
&lt;br /&gt;
=== Troubles using software suspend ===&lt;br /&gt;
When the computer resumes from suspend, X only displays a garbled image and the computer is frozen.&lt;br /&gt;
The problem is acknowledged in ATI's release notes and in knowledge base entry &amp;lt;strike&amp;gt;[https://support.ati.com/ics/support/KBResult.asp?searchFor=Search+Words&amp;amp;search.x=0&amp;amp;search.y=0&amp;amp;searchOption=id&amp;amp;questionID=737-218+&amp;amp;task=knowledge&amp;amp;searchTime=-1&amp;amp;productID=&amp;amp;folderID=-1&amp;amp;resultLimit=50 737-218]&amp;lt;/strike&amp;gt; [https://support.ati.com/ics/support/KBAnswer.asp?questionID=218 737-218]. Driver version 8.19.10 has &amp;quot;initial support for Suspend and Resume&amp;quot; but is working very nicely for most people (verified on T43, T43p and T42) without vbetool.&lt;br /&gt;
&lt;br /&gt;
If you are using an older version of fglrx, using [http://www.srcf.ucam.org/~mjg59/vbetool/ vbetool] to save/restore the video card state before/after suspend worked for some people. If you use [[Software Suspend 2|Software Suspend 2 (suspend2)]] scripts, you can simply uncomment &amp;lt;tt&amp;gt;EnableVbetool yes&amp;lt;/tt&amp;gt; in {{path|/etc/hibernate/hibernate.conf}}. Be aware though that it breaks suspend/resume for drivers beginning with version 8.19.10, so remember to disable it again when upgrading.&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ tested with the following configurations&lt;br /&gt;
!model!!distro||kernel!!fglrx!!PM!!success!!comments&lt;br /&gt;
|-&lt;br /&gt;
|{{T42}}||SUSE 9.3||2.6.11||8.14.13||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T41p}}||???||2.6.14||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T42p}}||Debian||2.6.10||Debian packaged||suspend2||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian sid||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 (but not earlier versions!)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Debian etch||2.6.14.2||8.19.10||swsusp||yes||works perfectly with 8.19.10 and without vbetool&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||Ubuntu Breezy||2.6.12-10||8.19.10||swsusp||yes||Perfect.  (Finally.)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.1||8.19.10||suspend2 2.2-rc9||yes||needs a small [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2005-November/030381.html patch], requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.2||8.19.10||suspend2 2.2-rc11||yes||requires DRI disabled in {{path|xorg.conf}} (hence no 3D acceleration)&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.19.10||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||FC4||2.6.14.3||8.20.8||suspend2 2.2-rc13||no||DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||FC6||2.6.20-1.2933||8.34.8||swsusp, STR||yes||DRI enabled, occasionally fails, reason unknown.&lt;br /&gt;
|-&lt;br /&gt;
|{{R50p}}||???||???||8.19.10||swsusp||yes||&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14||8.19.10||Suspend to RAM||yes||without vbetool or UseDummyXServer, those two ''break'' the resume process here, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Debian sid||2.6.14.3||8.20.8||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{R52}}||Debian sid||2.6.15-rc5||8.20.8||swsup||yes||both vbetool and UseDummyXServer disabled, DRI enabled, needs [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 patch]&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled - console is garbled until switching back from X&lt;br /&gt;
|-&lt;br /&gt;
|{{T43p}}||Gentoo||[http://packages.gentoo.org/ebuilds/?suspend2-sources-2.6.15-r6 2.6.15]||8.22.5||suspend2 2.2||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||swsusp||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T43}}||SUSE 10.1||2.6.16||8.25.18||Suspend to RAM||yes||without vbetool or UseDummyXServer, with DRI enabled&lt;br /&gt;
|-&lt;br /&gt;
|{{T60}}||Gentoo 2006.1||2.6.19-suspend2||8.31.5||Suspend2||yes||Everything works: 3D, suspend-to-disk, suspend-to-ram, suspend in X.org, switching to VT's at any moment. Never needed to unload any modules manually, worked immediately. Fglrx driver 8.32.5 totally broke suspend for me, so i'm sticking with 8.31.5. T60 2008-B62 model.&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06||2.6.15||8.25.18||swsusp||no||Switching to VT to suspend: no resume, X restarts; Not switching: suspend works, garbled X display on resume, later X restarts&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Kubuntu 6.06 Text Mode||2.6.15||---||swsusp||yes||suspend works in textmode after rmmod fglrx. &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Debian/unstable/experimental||2.6.18||8.31.5-1 (from debian experimental)||susptoram hibernate debian packages||yes||suspend and resume works with X, 3D acc., Xv overlay... &lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Fedora Core 6 x86_64||2.6.20-1.2962_1.fc6.cubbi_suspend2|| 8.38.6||suspend2 hibernate||yes||suspend2 hibernate and resume working with libata driver (ahci not tested). Xv still broken since 8.35.5.  Have not needed to set extra_pages_allowance thus far.&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to RAM||yes||works without any problems, justs needs the usual acpi_sleep hacks&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.20.7||8.35.5-1||Suspend to Disk (Software Suspend)||yes||works without any problems&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||Debian Sid||2.6.21||8.35.5-1||Suspend to RAM||yes||fglrx module must not be loaded into the kernel, or it won't resume&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61m}}||openSUSE 10.2||2.6.21.5||8.37.6||suspend2 2.2.10||yes||/sys/power/suspend2/extra_pages_allowance must be set to 20000&lt;br /&gt;
|-&lt;br /&gt;
|{{Z61p}}||ARCH Linux||2.6.20||8.35.5-1||Suspend to RAM||yes||works with KDE suspend&lt;br /&gt;
|-&lt;br /&gt;
|{{T60p}}||Gentoo||2.6.22-r8||8.39.4||Suspend to RAM,swsusp||yes||swsusp works without hibernate-script installed (installing breaks it), s-to-RAM works only with CONFIG_FB ''disabled'' in kernel.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Troubles with large RAM ===&lt;br /&gt;
Version 8.14.13 (and probably earlier versions) of the driver does not seem to be able to cope with large amounts of RAM: with 512 MB it works, with 1.5 GB it crashes the machine as soon as X is started. The problem is present only if the &amp;lt;tt&amp;gt;fglrx&amp;lt;/tt&amp;gt; kernel module is loaded, but independently of whether {{kernelconf|CONFIG_HIGHMEM||||||}} is enabled. A workaround is to limit RAM by adding the {{bootparm|mem|864m}} kernel parameter.&lt;br /&gt;
&lt;br /&gt;
Version 8.16.20 fixes the problem.&lt;br /&gt;
&lt;br /&gt;
===Display switching ===&lt;br /&gt;
The switching between internal and external display doesn't work with fglrx versions &amp;lt;= 8.24.8, because the driver blocks messing around with the chipset via ACPI. If you want to use this feature (i.e. during presentations), you should use the &amp;lt;tt&amp;gt;vesa&amp;lt;/tt&amp;gt; server instead (experienced with a R52, Kernel 2.6.11, xorg 6.8.2, fglrx 8.16.20). Or boot notebook with CRT connected, it will automatically detect it and display on both.&lt;br /&gt;
&lt;br /&gt;
===Composite Support===&lt;br /&gt;
ATI has not officially supported composite windowing (alpha channel) enabling hardware accelerated translucent windows (primarily for 'eye candy.')  Enabling Composite in KDE and the fglrx driver results in a very pretty desktop but unacceptably slow performance on a T43p with ATI's FireGL T2.  It is still unusable in its current state (as of driver 8.25.18).&lt;br /&gt;
&lt;br /&gt;
ATI promises support in the future when composite is officially supported by Xorg.  Discussion of current status of drivers can be found in the Rage3d forums' (http://rage3d.com/board) Linux area.&lt;br /&gt;
&lt;br /&gt;
Composite support is, however, supported with recent Mesa and Xorg &amp;gt; 7 with the open source 3d radeon drivers as found in the linux kernel or debian's driver repository.  It works with the [[R300]] / FireGL T2 series as found on the T43p extremely well.  This has made rapid progress in speed with the latest few releases, and as of kernel 2.6.23 runs perfectly well with an R300 based card.&lt;br /&gt;
&lt;br /&gt;
===Hardlock on X logout===&lt;br /&gt;
Up from driver version 8.19.10 you will experience a system hard lock when logging out from X, if the session manager (kdm/gdm) is not properly configured. You have to tell the session manager to restart X.&lt;br /&gt;
&lt;br /&gt;
In the kdm config file (gentoo: {{path|/usr/kde/&amp;lt;VERSION&amp;gt;/share/config/kdm/kdmrc}}) you have to add following to the section &amp;lt;code&amp;gt;[X-:*-Core]&amp;lt;/code&amp;gt;: &lt;br /&gt;
 TerminateServer=true&lt;br /&gt;
&lt;br /&gt;
In the gdm config (/etc/gdm/gdm.conf) file add the following to the daemon-section:&lt;br /&gt;
 AlwaysRestartServer=true&lt;br /&gt;
&lt;br /&gt;
Information from the ATI bugtracker: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another reason of hardlock my be using the wrong AGP driver. Make sure that you have proper drivers for your motherboard loaded before fglrx: (gentoo: {{path|/etc/modules.autoload.d/kernel-2.6}}):&lt;br /&gt;
 intel-agp&lt;br /&gt;
 fglrx&lt;br /&gt;
&lt;br /&gt;
A common problem seems to be mistakenly using ATI Chipset drivers instead of Intel.&lt;br /&gt;
&lt;br /&gt;
Information from gentoo bugtracker: &amp;lt;s&amp;gt;[http://bugs.gentoo.org/show_bug.cgi?id=113685 113685]&amp;lt;/s&amp;gt;. Fixed in 8.25.18&lt;br /&gt;
&lt;br /&gt;
===Cannot switch to VT===&lt;br /&gt;
&lt;br /&gt;
With usplash boot enabled, it may not be possible to switch to a VT from X (Using Alt+Fn). Tested on T60p (Mobility Fire GLV5200) on Ubuntu 6.06 / 6.10 and fglrx 8.25.18 / 8.28.8.  Display may become garbled and system might freeze. Solution (testet on Ubuntu 6.10) is to either remove the &amp;quot;splash&amp;quot; kernel boot parameter or add &amp;quot;vga=791&amp;quot; parameter (&amp;quot;vga=794&amp;quot; can be used on 1400x1050 panel).&lt;br /&gt;
&lt;br /&gt;
http://ati.cchtml.com/show_bug.cgi?id=37 &amp;lt;br&amp;gt;&lt;br /&gt;
https://launchpad.net/distros/ubuntu/+source/usplash/+bug/63558&lt;br /&gt;
&lt;br /&gt;
===Flickering Display===&lt;br /&gt;
&lt;br /&gt;
Some people have reported problems with their display flickering when using ati-drivers newer than 8.14.13. The problem is unclear&lt;br /&gt;
(possibly associated with an incorrect modeline setting) and no known solution exists except to use the open source radeon drivers.&lt;br /&gt;
You can follow this problem here: http://ati.cchtml.com/show_bug.cgi?id=248&lt;br /&gt;
&lt;br /&gt;
===Error messages in system log===&lt;br /&gt;
&lt;br /&gt;
If you find something like the following in {{path|/var/log/messages}}:&lt;br /&gt;
&lt;br /&gt;
:{{cmdresult|kernel: mtrr: base(0xc0000000) is not aligned on a size(0x7ff0000) boundary}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)}}&lt;br /&gt;
:{{cmdresult|kernel: [fglrx:firegl_unlock] *ERROR* Process 5132 using kernel context 0}}&lt;br /&gt;
&lt;br /&gt;
try to execute the following line and reload the fglrx module:&lt;br /&gt;
&lt;br /&gt;
:{{cmdroot|1=echo &amp;quot;base=0xd0000000 size=0x8000000 type=write-combining&amp;quot; &amp;gt; /proc/mtrr}}&lt;br /&gt;
&lt;br /&gt;
More detailed instructions can be found [http://ubuntuforums.org/showthread.php?t=115104 here].&lt;br /&gt;
&lt;br /&gt;
===Hang when logging out===&lt;br /&gt;
&lt;br /&gt;
A common problem is that when logging out from X, instead of gettign the KDM or GDM prompt, the system hangs.&lt;br /&gt;
&lt;br /&gt;
This is discussed, including workarounds here: http://ati.cchtml.com/show_bug.cgi?id=239&lt;br /&gt;
&lt;br /&gt;
===No power saving when CRT in use===&lt;br /&gt;
&lt;br /&gt;
When both CRT and LCD are in use, power saving cannot be enabled.&lt;br /&gt;
&lt;br /&gt;
This is reported here: http://ati.cchtml.com/show_bug.cgi?id=304&lt;br /&gt;
&lt;br /&gt;
===WineX / Cedega Installs Software But Errors on Loading Games===&lt;br /&gt;
&lt;br /&gt;
Some users may experience problems with certain FIREGL cards (in my case an ibm t43p laptop with a v3200 ati firegl) whereby projects such as cedega and wine refuse to work with 3d graphics, but native binaries (e.g. quake 4) work fine. A possible workaround is to add the following line in the drivers section of your /etc/X11/xorg.conf &lt;br /&gt;
&lt;br /&gt;
 Option &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This option used to be configured with the older ati drivers when you ran &amp;quot;fglrxconfig&amp;quot;. I have not yet found a way to get it to appear with &amp;quot;aticonfig&amp;quot;, hence the manual insertion. This option is good for several linux distros I have tried, fedora core 5, ubuntu dapper and suse 10.1. It does not appear to effect performance on natively run programs.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|This may cause problems on machines with a Linux kernel version of 2.6.20 or higher (observed choppy video and video color inversion on T60p with both 2.6.20 and 2.6.21).}}&lt;br /&gt;
&lt;br /&gt;
===Line Appears Below Mouse Cursor===&lt;br /&gt;
&lt;br /&gt;
Some users have reported seeing a line approximately 1 mouse height below the bottom edge of the cursor, which follows the mouse and appears to change color based on the image below the cursor.  This has been seen to happen using fglrx without the kernel module installed (in 2D mode) and additionally on external displays or multiple X servers.  To work around the problem, try disabling the DGA extension by making the following changes to your XFree86.conf or xorg.conf file.  Replace (or comment-out)&lt;br /&gt;
 Load &amp;quot;extmod&amp;quot;&lt;br /&gt;
with&lt;br /&gt;
 SubSection  &amp;quot;extmod&amp;quot;&lt;br /&gt;
  Option  &amp;quot;omit xfree86-dga&amp;quot;&lt;br /&gt;
 EndSubSection&lt;br /&gt;
&lt;br /&gt;
===Freeze while using OpenGL Apps===&lt;br /&gt;
&lt;br /&gt;
Some OpenGL applications such as screensavers or games (SecondLife) cause freezes.  The cursor still moves, but otherwise the machine is unresponsive.  This is the case with Xorg 7.1 and fglrx 8.29.6 using an x1400 and other cards.  The solution is to add the following options to the video Device section in xorg.conf:&lt;br /&gt;
 Option &amp;quot;Capabilities&amp;quot; &amp;quot;0x00000800&amp;quot;&lt;br /&gt;
 Option &amp;quot;KernelModuleParm&amp;quot; &amp;quot;locked-userpages=0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Xv doesn't work correctly with drivers &amp;gt;= 8.36 and Xyyyy-cards===&lt;br /&gt;
&lt;br /&gt;
See [http://ati.cchtml.com/show_bug.cgi?id=677] for further information. It seems as if only Xyyyy-cards are affected. Problem: graphical glitches with mplayer, programs like xine and totem might not start up at all. 8.35 doesn't seem to be affected&lt;br /&gt;
&lt;br /&gt;
===Floating Point Exception with various X apps===&lt;br /&gt;
&lt;br /&gt;
When the X server is left to autodetect the DPI, the fglrx driver may fail to supply the monitor dimensions.  Video output switching may contribute to this bug.&lt;br /&gt;
&lt;br /&gt;
Problems were experienced on T42p with Ubuntu 7.04, xorg-driver-fglrx 7.1.0-8.34.8+2.6.20.5-16.29.&lt;br /&gt;
&lt;br /&gt;
This can be observed with xdpyinfo&lt;br /&gt;
&lt;br /&gt;
:{{cmduser|xdpyinfo | grep dimensions}}&lt;br /&gt;
:{{cmdresult|dimensions:    1280x1024 pixels (0x0 millimeters)}}&lt;br /&gt;
&lt;br /&gt;
Many applications will use the screen size and attempt to calculate DPI, resulting in a divide by zero operation and a SIGFPE.&lt;br /&gt;
&lt;br /&gt;
A work around is to supply the dimensions in /etc/X11/xorg.conf.  Use the DisplaySize parameter within your monitor's configuration.  For example:&lt;br /&gt;
&lt;br /&gt;
  Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
          Identifier   &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
          HorizSync    28.0 - 64.0&lt;br /&gt;
          VertRefresh  43.0 - 60.0&lt;br /&gt;
          Option      &amp;quot;DPMS&amp;quot;&lt;br /&gt;
          DisplaySize 433 351&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
== Patches ==&lt;br /&gt;
The following patches might be needed for certain versions of fglrx. Before you apply any of these, make sure that you really need them, as some distributions include all the necessary patches with the appropriate package (e.g. ati-drivers in gentoo).&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.37.6===&lt;br /&gt;
* For kernel 2.6.22 you need this patch from a [http://www.phoronix.com/forums/showthread.php?t=2849 Phoronix thread].&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.35.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.35.5-for-2.6.20.patch For kernel 2.6.20], part of the Fedora packaging scripts in the ATI installer&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.34.8===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.20/fglrx-8.34.8-for-2.6.20.patch For kernel 2.6.20]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.32.5===&lt;br /&gt;
* [http://whoopie.gmxhome.de/linux/patches/2.6.19/fglrx-8.32.5-for-2.6.19.patch For kernel 2.6.19]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.23.7===&lt;br /&gt;
* For kernel 2.6.16: [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.22.5-intermodule.patch &amp;lt;tt&amp;gt;intermodule&amp;lt;/tt&amp;gt; patch] and [http://mirror.espri.arizona.edu/gentoo/rsync/x11-drivers/ati-drivers/files/ati-drivers-8.23.7-noiommu.patch &amp;lt;tt&amp;gt;noiommu&amp;lt;/tt&amp;gt; patch]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.21.7===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.20.8===&lt;br /&gt;
&lt;br /&gt;
* [http://marc.theaimsgroup.com/?l=linux-kernel&amp;amp;m=113429835515001&amp;amp;w=2 for kernel 2.6.15]&lt;br /&gt;
or&lt;br /&gt;
* [http://www.ksp.sk/~rasto/fglrx_with_2.6.15.patch for kernels &amp;gt;= 2.6.15]&lt;br /&gt;
&lt;br /&gt;
===fglrx (problem met at least with version 8.18.8)===&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/22/183 for kernel &amp;gt;= 2.6.13 ]  Missing verify_area bug&lt;br /&gt;
&lt;br /&gt;
===fglrx 8.8.25 ===&lt;br /&gt;
* [http://www.rage3d.com/board/showthread.php?t=33798874 for kernels &amp;gt;= 2.6.10]&lt;br /&gt;
* [http://www.gehirn.org.uk/wiki/images/8.8.25-kernel-2.6.11+.patch For kernels &amp;gt;= 2.6.11-rc1]&lt;br /&gt;
&lt;br /&gt;
===Links ===&lt;br /&gt;
* [http://gentoo-wiki.com/HOWTO_ATI_Drivers Gentoo HOWTO ATI]&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=32113</id>
		<title>Installing Ubuntu 6.06 Kubuntu 6.06 Gentoo 2006.0 on a ThinkPad T60p</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=32113"/>
		<updated>2007-08-15T19:35:37Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: /* Dual monitors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Installation_instructions_for_the_ThinkPad_T60p]]&lt;br /&gt;
&lt;br /&gt;
==Installing Ubuntu Dapper==&lt;br /&gt;
&lt;br /&gt;
To get it going:&lt;br /&gt;
&lt;br /&gt;
* Get Dapper i386 (I used the Daily ISO DVD).&lt;br /&gt;
&lt;br /&gt;
* Install the default distribution.&lt;br /&gt;
&lt;br /&gt;
It will work, but you need an SMP kernel, and accelerated and higher resolution graphics, so:&lt;br /&gt;
&lt;br /&gt;
* Install the i686-smp kernel (search for 'linux-kernel' in synaptic).&lt;br /&gt;
&lt;br /&gt;
* Search for fglrx in synaptic, and install the fglrx modules, X driver and ATI control panel.&lt;br /&gt;
&lt;br /&gt;
* Edit /etc/X11/xorg.conf, so each of the &amp;quot;Modeline&amp;quot; entries contains a 1600x1200 resolution as well (or whatever the top resolution of your LCD panel is), and change the driver section as follows:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
     Identifier &amp;quot;ATI Technologies, Inc. ATI Default Card&amp;quot;&lt;br /&gt;
     Driver &amp;quot;fglrx&amp;quot;               &amp;lt;----- ADD THIS LINE&lt;br /&gt;
     #Driver &amp;quot;vesa&amp;quot;               &amp;lt;---- COMMENT OUT THIS LINE&lt;br /&gt;
     BusID &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
     ChipID 0x71c5                &amp;lt;----- '''MAYBE''' ADD THIS LINE&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[On my UXGA t60p the ChipID line was actually fatal to getting fglrx to start up (/var/log/Xorg.0.log showed the driver falling back to VESA and fgl_glxgears would crash).  Without that ChipID line my chip was identified as:&lt;br /&gt;
&lt;br /&gt;
 Chipset: &amp;quot;MOBILITY FireGL V5200 (M56 71C4)&amp;quot; (Chipset = 0x71c4)&lt;br /&gt;
&lt;br /&gt;
which appears to correspond exactly to my machine's spec,  and fgl_glxgears worked fine.]&lt;br /&gt;
&lt;br /&gt;
Reboot, and you should be done. Check &amp;quot;cat /proc/cpuinfo&amp;quot; shows two CPUs, and run fgl_glxgears and check you get around 580 frames a second.&lt;br /&gt;
&lt;br /&gt;
I've reported [https://launchpad.net/distros/ubuntu/+bug/46527 bug 46527] on the lack of screen driver detection, so hopefully this will get even easier.&lt;br /&gt;
&lt;br /&gt;
Note you do NOT need to install ATI drivers from the ATI site. The Ubuntu drivers are sufficient.&lt;br /&gt;
&lt;br /&gt;
Thanks to Rich Tango-Lowy (see below) for the hint re chip detection.&lt;br /&gt;
&lt;br /&gt;
==Kubuntu Dapper Live CD==&lt;br /&gt;
&lt;br /&gt;
If you're trying to install from the Kubuntu Desktop CD, you'll never make it to the login screen because the ATI display driver isn't recognized.&lt;br /&gt;
&lt;br /&gt;
* Ctrl-Alt-F1&lt;br /&gt;
* sudo nano /etc/X11/xorg.conf&lt;br /&gt;
* change the display driver line that looks like:&lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;ati&amp;quot;&lt;br /&gt;
&lt;br /&gt;
to &lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;vesa&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[I think I remember that it was &amp;quot;ati&amp;quot;, but I could be wrong.  In any &lt;br /&gt;
case this is very clearly the only Driver line in the ATI device specification section]&lt;br /&gt;
&lt;br /&gt;
* Save and exit&lt;br /&gt;
* sudo /etc/init.d kdm restart&lt;br /&gt;
&lt;br /&gt;
Now you get a login screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing Gentoo 2006.0 ==&lt;br /&gt;
&lt;br /&gt;
===Boot from Live CD===&lt;br /&gt;
Upon booting off the live cd you will come to the kernel selection prompt.&lt;br /&gt;
Enter:&lt;br /&gt;
    gentoo doscsi&lt;br /&gt;
I had some trouble getting the wired NIC to be linked to the driver, often getting an error that the EEPROM failed a check.  If this happens, you can try re-inserting the module,&lt;br /&gt;
    &amp;gt;rmmod e1000; modprobe e1000&lt;br /&gt;
or rebooting and trying again.  The wireless card isn't supported by the live cd so you're going to have to stick to wired for now.&lt;br /&gt;
&lt;br /&gt;
If you have a T60 with a '''Core 2 Duo''' processor (instead of Core Duo), you have the option of installing a 64-bit linux.  Use an amd64 (called this for historical reasons) install/live cd, and enter this at the boot prompt:&lt;br /&gt;
   gentoo-nofb noapic&lt;br /&gt;
The noapic option is needed on the 2006.1 cd to prevent a crash during boot.  Once you have compiled your own kernel you no longer need it.&lt;br /&gt;
&lt;br /&gt;
===/etc/make.conf Settings===&lt;br /&gt;
The make.conf settings are the first thing you want to setup correctly before you proceed with the rest of the install process. All future updates will depend upon these settings as well. &lt;br /&gt;
If you use a 32-bit profile (x86) use these settings&lt;br /&gt;
 CFLAGS=&amp;quot;-march=prescott -O2 -pipe -msse3 -fomit-frame-pointer&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;fglrx vesa fbdev&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 FEATURES=&amp;quot;sandbox ccache distlocks autoaddcvs parallel-fetch&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
If you use a 64-bit profile (amd64 - Core 2 Duo processors only) use this instead&lt;br /&gt;
 CFLAGS=&amp;quot;-O2 -pipe -march=nocona&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;radeon vesa fbdev&amp;quot;&lt;br /&gt;
For a more complete discussion of the CFLAGS to use for a Core Duo processor, see [http://forums.gentoo.org/viewtopic-t-448761-highlight-core+duo+prescott.html?sid=97485d7e26a1f77e2bb06fa437a448ff this forum thread]. Some users recommend that the USE variable has the ibm value in it (eg. USE=&amp;quot;ibm&amp;quot;) but the Gentoo website says this is only for Power PC64 systems; I don't think we should use it. If anyone can shed more light on this, please update this section.&lt;br /&gt;
&lt;br /&gt;
===Kernel Settings===&lt;br /&gt;
I was able to get the laptop running from i686 gentoo sources and recommend this to anyone installing Gentoo on their T60p. Alot of graphics support is left out of the kernel since the best graphics performance is with ATI's propietary drivers which you can emerge at the end of the kernel compile.&lt;br /&gt;
====Processor type and features====&lt;br /&gt;
* Turn on Symmetric multi-processing support.&lt;br /&gt;
* Set processor family to Pentium M (with the new 2.6.21+ you may choose Core 2/newer Xeon) for the Core Duo or EM64T for the Core 2 Duo with amd64 profile. &lt;br /&gt;
* Turn off toshiba and dell laptop support.&lt;br /&gt;
* Set Maximum number of CPUs to 2 (for obvious reasons, each CPU adds 8kb to the kernel.)&lt;br /&gt;
* Set timer frequency to 1000 Hz since this is a desktop system.&lt;br /&gt;
* Found on a [http://forum.thinkpads.com/viewtopic.php?t=19031 forum posting] that &amp;quot;Hotpluggable CPU&amp;quot; should be set to get acpi sleep to work.  Go figure...&lt;br /&gt;
&lt;br /&gt;
====Power management options====&lt;br /&gt;
* Turn on all ACPI settings (especially IBM Thinkpad Extras) except ASUS/Medion and Toshiba Laptop Extras.     &lt;br /&gt;
  Note: see this entry on ACPI Video for BIOS 2.x and kernels &amp;lt; 2.6.20-rc?&lt;br /&gt;
  http://thinkwiki.org/wiki/Problem_with_LCD_brightness_buttons&lt;br /&gt;
* Turn on CPU Frequency scaling.&lt;br /&gt;
** Turn on powersave, userspace, ondemand and conservative governor.&lt;br /&gt;
** Turn off ACPI Processor P-States driver.&lt;br /&gt;
** Turn off all AMD and Cyrix options.&lt;br /&gt;
** Turn on Intel Enhanced SpeedStep and Intel Speedstep on ICH-M chipsets (ioport interface).&lt;br /&gt;
** Turn off Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface).&lt;br /&gt;
** Turn off Intel Pentium 4 clock modulation, nVidia nForce2 FSB changing and Transmeta LongRun.&lt;br /&gt;
&lt;br /&gt;
====Bus options====&lt;br /&gt;
* Turn on PCI Express support.&lt;br /&gt;
* Turn on Message Signaled Interrupts.&lt;br /&gt;
* Turn on PCCard support and CardBus yenta-compatible bridge support.&lt;br /&gt;
&lt;br /&gt;
====Networking support====&lt;br /&gt;
* Turn off Generic IEEE 802.11 Networking Stack.&lt;br /&gt;
* Turn on IrDA (infrared) subsystem support and sub-options.&lt;br /&gt;
** Ensure you get nsc-ircc&lt;br /&gt;
* Turn on Bluetooth subsystem support and sub-options.&lt;br /&gt;
* Turn off Amateur Radio support (unless you work with actual radios.)&lt;br /&gt;
&lt;br /&gt;
====Device Drivers====&lt;br /&gt;
* Turn off Memory Technology Devices.&lt;br /&gt;
* Turn on ATA/ATAPI/MFM/RLL and Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support.&lt;br /&gt;
* Turn on PNP EIDE and PCI IDE chipset support (PNP EIDE may not be necessary but I haven't tested it)&lt;br /&gt;
** Turn on Include IDE/ATA-2 DISK support&lt;br /&gt;
** Turn on Use multi-mode by default&lt;br /&gt;
** Turn on Include IDE/ATAPI CDROM support&lt;br /&gt;
** Turn on PCI IDE chipset support (not all of the sub-options have been tested but this makes the DVD drive work well)&lt;br /&gt;
*** Turn on Generic PCI IDE Chipset Support&lt;br /&gt;
*** Turn on Generic PCI bus-master DMA support&lt;br /&gt;
*** Turn on Intel PIIXn chipsets support&lt;br /&gt;
* Turn off parallel port support.&lt;br /&gt;
* Turn on SCSI device support.  In &amp;quot;low-level device drivers&amp;quot;, chose the Serial ATA (SATA) support.  Build it as a part of the kernel, and not as a kernel module.&lt;br /&gt;
* Turn off Fusion MPT device support.&lt;br /&gt;
* Turn on IEEE 1394 (FireWire) support.&lt;br /&gt;
* Turn on Network device support.&lt;br /&gt;
** Turn off all options in all categories under Network device support except the stated ones below.&lt;br /&gt;
** Turn on Intel(R) PRO/1000 Gigabit Ethernet support under Ethernet (1000 Mbit).&lt;br /&gt;
** Turn on Wireless LAN drivers (non-hamradio) &amp;amp; Wireless Extensions and none of the sub-options underneath.&lt;br /&gt;
** Most people do not need Fibre channel, ATM, WAN or PPP/SLIP support (if you do then turn it on. PPP is needed for GPRS/UMTS connectivity)&lt;br /&gt;
* Character device options...&lt;br /&gt;
** Serial drivers... [for IrDA]&lt;br /&gt;
*** Set Max 8250/16550 serial ports to (4)&lt;br /&gt;
*** Set Number 8250/16550 serial ports to register at runtime to (1)&lt;br /&gt;
** Turn off Parallel printer support.&lt;br /&gt;
** Turn on Intel HW Random Number Generator support.&lt;br /&gt;
** Turn on /dev/nvram support.&lt;br /&gt;
** Turn off /dev/agpgart (AGP Support).&lt;br /&gt;
** Turn off Direct Rendering Manager.&lt;br /&gt;
** Support for the [[Embedded_Security_Subsystem|Fritz Chip]] is located in &amp;quot;TPM Devices&amp;quot;.&lt;br /&gt;
* Turn on I2C support and Intel 82801 (ICH) hardware bus support.&lt;br /&gt;
* Turn on Hardware Monitoring support and IBM Hard Drive Active Protection System (hdaps).&lt;br /&gt;
* Turn off all Graphics support options except the stated ones below,&lt;br /&gt;
** Turn on VESA VGA graphics support and set VESA driver type to vesafb.&lt;br /&gt;
** Turn on Enable firmware EDID and Enable Video Mode Handling Helpers.&lt;br /&gt;
** Turn on Support for the framebuffer splash.&lt;br /&gt;
* '''IMPORTANT:''' Turn off all Wireless device support under USB support -&amp;gt; USB Network Adapters or you will tear your hair out trying to get wireless.&lt;br /&gt;
* Turn on Sound card support.&lt;br /&gt;
** Turn on Advanced Linux Sound Architecture.&lt;br /&gt;
** Turn off all ISA, PCI, USB, generic and PCMCIA device options except the stated one below.&lt;br /&gt;
** Turn on Intel HD Audio under PCI devices.&lt;br /&gt;
* Turn off all MMC/SD Card support options.&lt;br /&gt;
* Turn off LED devices.&lt;br /&gt;
* Cryptographic options... (needed for the wireless card ipw9345)&lt;br /&gt;
** Turn on AES chiphers&lt;br /&gt;
** Turn on Michael MIC keyed digest algorithm&lt;br /&gt;
&lt;br /&gt;
That should do it. (I know, that's it.)&lt;br /&gt;
That should make sure that you have all the drivers necessary to boot the system and be able to use all your hardware (almost).&lt;br /&gt;
&lt;br /&gt;
===Portage Ebuilds===&lt;br /&gt;
&lt;br /&gt;
Always make sure you run this command before going any further so you can get the latest portage build and version...&lt;br /&gt;
 emerge --sync &amp;amp;&amp;amp; emerge portage&lt;br /&gt;
&lt;br /&gt;
Since September 24 2006 I was able to make the latest ati-drivers work on the T60p without adding any lines to the unmask file (/etc/portage/package.unmask) under the gentoo-sources kernel. You should be able to run...&lt;br /&gt;
 emerge ati-drivers&lt;br /&gt;
...without any problems. If you do have problems compiling, sometimes you may need to try emerging an unstable package. For more information on working with the ATI drivers, check out Gentoo's wiki [http://gentoo-wiki.com/HOWTO_ATI_Drivers| here.]&lt;br /&gt;
&lt;br /&gt;
Don't forget to emerge all the Thinkpad software as well...&lt;br /&gt;
 emerge tpb tp_smapi tpctl&lt;br /&gt;
&lt;br /&gt;
Then you can start to setup the wireless in this order at the command line...&lt;br /&gt;
 /bin/sh /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux&lt;br /&gt;
 emerge ieee80211 ipw3945 ipw3945d wireless-tools&lt;br /&gt;
&lt;br /&gt;
For some reason the wireless driver consists of two parts: the module itself, ipw3949.ko, and some sort of support daemon, ipw3945d. The ebuild updates the modules.conf file to automatically stop and start this deamon when the module is loaded or unloaded, respectively. Check if the following lines are present in /etc/modules.conf (or actually, in /etc/modules.d/ipw3945d - /etc/modules.conf is built from the separate files in /etc/modules.d when you run /sbin/modules-update)&lt;br /&gt;
&lt;br /&gt;
 install ipw3945 /sbin/modprobe --ignore-install ipw3945; sleep 0.5; /sbin/ipw3945d --quiet&lt;br /&gt;
 remove ipw3945 /sbin/ipw3945d --kill; /sbin/modprobe -r --ignore-remove ipw3945&lt;br /&gt;
&lt;br /&gt;
In other words, to load the module, and start the daemon, do&lt;br /&gt;
&lt;br /&gt;
  modprobe ipw3945&lt;br /&gt;
&lt;br /&gt;
To remove the module, and kill the daemon, enter&lt;br /&gt;
&lt;br /&gt;
  modprobe -r ipw3945&lt;br /&gt;
&lt;br /&gt;
'''Note''': rmmod does '''not''' work - it doesn't use /etc/modprobe.conf, and therefore doesn't kill the daemon: while the daemon is running, you cannot unload the module. (You'll get an errormessage saying the module is in use).&lt;br /&gt;
&lt;br /&gt;
If for some reason you need to kill the module manually, use &lt;br /&gt;
&lt;br /&gt;
  /sbin/ipw3945d --kill&lt;br /&gt;
&lt;br /&gt;
Ofcourse the normal 'kill' command also works, but you'll have to remove the pid file /var/run/ipw3945d.pid by hand.&lt;br /&gt;
&lt;br /&gt;
===xorg.conf Settings===&lt;br /&gt;
&lt;br /&gt;
A piece of code is worth a thousand words; here is my xorg.conf that works at 3000-5000 FPS so far. I am still trying to find better parameters, but this is the best I got it to run so far. I intentionally left out the InputDevice section since I disabled my Synaptics pad (I like the center joystick better.) Just modify your xorg.conf sections with what is shown below.&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Module&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dbe&amp;quot;     # Double buffer extension&lt;br /&gt;
        SubSection &amp;quot;extmod&amp;quot;&lt;br /&gt;
        Option      &amp;quot;omit xfree86-dga&amp;quot;   # don't initialise the DGA extension&lt;br /&gt;
        EndSubSection&lt;br /&gt;
        Load  &amp;quot;freetype&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dri&amp;quot;&lt;br /&gt;
        Load  &amp;quot;glx&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;vesa&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;fglrx&amp;quot;&lt;br /&gt;
        VendorName  &amp;quot;ati&amp;quot;&lt;br /&gt;
        #ModelName   &amp;quot;FireGL V5200 (RV530 71DA)&amp;quot;&lt;br /&gt;
        BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VideoOverlay&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EnablePrivateBackZ&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;dri&amp;quot;&lt;br /&gt;
        Group &amp;quot;video&amp;quot;&lt;br /&gt;
        Mode 0666&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Extensions&amp;quot;&lt;br /&gt;
        Option &amp;quot;XVideo&amp;quot; &amp;quot;Enable&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Device     &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Monitor    &amp;quot;Monitor&amp;quot;&lt;br /&gt;
        DefaultDepth     24&lt;br /&gt;
        SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
                Viewport  0 0&lt;br /&gt;
                Depth     24&lt;br /&gt;
                Modes    &amp;quot;1280x1024&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot; &amp;quot;640x480&amp;quot;&lt;br /&gt;
        EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Make sure you assign your username to the video group in the /etc/group file or you will net get DRI (Direct Rendering) support. When debugging your running X windows system, always check /var/log/Xorg.0.log for any errors or hints at what may be configured incorrectly. This is how I was able to get so far with the graphics.&lt;br /&gt;
&lt;br /&gt;
====Dual monitors====&lt;br /&gt;
The T60p comes with a nice little VGA-out port on the side, and you may want to use a dual-monitor setup occasionally. Allegedly, using Xinerama with the fglrx driver will incapacitate your 3D rendering, and ATI's BigDesktop seems (at least to me) to be more trouble than it's worth. What I've done is set up Xorg to have two separate Screens, one for each Monitor. You won't be able to drag windows across both screens, and some applications don't like having windows on both monitors, but this approach works painlessly, even with monitors of different resolutions, and you get to keep your 3D rendering! Here are the relevant parts of xorg.conf:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
      Identifier     &amp;quot;Two Screen Layout&amp;quot;&lt;br /&gt;
      Screen          0 &amp;quot;Default Screen&amp;quot; 0 0&lt;br /&gt;
      Screen          1 &amp;quot;External Screen&amp;quot; RightOf &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - first head (internal)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;MonitorLayout&amp;quot; &amp;quot;lvds, auto&amp;quot;&lt;br /&gt;
      Option          &amp;quot;DesktopSetup&amp;quot; &amp;quot;horizontal&amp;quot;&lt;br /&gt;
      Screen          0&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - second head (external)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      Screen          1&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1400x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           ViewPort       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1680x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           Viewport       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Note that there are two sections each for the video card (one for each head on the card), monitors, and screens. The laptop's screen is 1400x1050, and my external monitor is 1680x1050. Since it's a laptop, you probably won't be using dual monitors all the time, so it would be best to keep two different configurations (e.g. xorg.conf.one-monitor, xorg.conf.two-monitors), and copy each to /etc/X11/xorg.conf when needed. [http://pastebin.ca/647680 Here] is my whole dual-monitor xorg.conf. I also threw together a [http://pastebin.ca/658666 script] for changing the setting given an xorg.conf.one-monitor and an xorg.conf.two-monitors in /etc/X11 (it also works for game configurations in case your monitors are different sizes - I included a Quake 3 example, commented out); run it with - for example - &amp;quot;sudo xorg-set-monitors 2&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Known Issues==&lt;br /&gt;
[[Problem with e1000: Open issue with latency|Latency issue with e1000 nic]]&lt;br /&gt;
&lt;br /&gt;
==External Sources==&lt;br /&gt;
*[http://arscognita.com/~richtl/T60p/index.html Rich Tango-Lowy's Mandriva 2007 Cooker on T60p page]&lt;br /&gt;
*[http://buzzy.tesuji.org/thinkpad_t60p.html Jon Lin's Gentoo Thinkpad T60p]&lt;br /&gt;
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)].&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=32112</id>
		<title>Installing Ubuntu 6.06 Kubuntu 6.06 Gentoo 2006.0 on a ThinkPad T60p</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=32112"/>
		<updated>2007-08-15T19:33:40Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: /* Dual monitors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Installation_instructions_for_the_ThinkPad_T60p]]&lt;br /&gt;
&lt;br /&gt;
==Installing Ubuntu Dapper==&lt;br /&gt;
&lt;br /&gt;
To get it going:&lt;br /&gt;
&lt;br /&gt;
* Get Dapper i386 (I used the Daily ISO DVD).&lt;br /&gt;
&lt;br /&gt;
* Install the default distribution.&lt;br /&gt;
&lt;br /&gt;
It will work, but you need an SMP kernel, and accelerated and higher resolution graphics, so:&lt;br /&gt;
&lt;br /&gt;
* Install the i686-smp kernel (search for 'linux-kernel' in synaptic).&lt;br /&gt;
&lt;br /&gt;
* Search for fglrx in synaptic, and install the fglrx modules, X driver and ATI control panel.&lt;br /&gt;
&lt;br /&gt;
* Edit /etc/X11/xorg.conf, so each of the &amp;quot;Modeline&amp;quot; entries contains a 1600x1200 resolution as well (or whatever the top resolution of your LCD panel is), and change the driver section as follows:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
     Identifier &amp;quot;ATI Technologies, Inc. ATI Default Card&amp;quot;&lt;br /&gt;
     Driver &amp;quot;fglrx&amp;quot;               &amp;lt;----- ADD THIS LINE&lt;br /&gt;
     #Driver &amp;quot;vesa&amp;quot;               &amp;lt;---- COMMENT OUT THIS LINE&lt;br /&gt;
     BusID &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
     ChipID 0x71c5                &amp;lt;----- '''MAYBE''' ADD THIS LINE&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[On my UXGA t60p the ChipID line was actually fatal to getting fglrx to start up (/var/log/Xorg.0.log showed the driver falling back to VESA and fgl_glxgears would crash).  Without that ChipID line my chip was identified as:&lt;br /&gt;
&lt;br /&gt;
 Chipset: &amp;quot;MOBILITY FireGL V5200 (M56 71C4)&amp;quot; (Chipset = 0x71c4)&lt;br /&gt;
&lt;br /&gt;
which appears to correspond exactly to my machine's spec,  and fgl_glxgears worked fine.]&lt;br /&gt;
&lt;br /&gt;
Reboot, and you should be done. Check &amp;quot;cat /proc/cpuinfo&amp;quot; shows two CPUs, and run fgl_glxgears and check you get around 580 frames a second.&lt;br /&gt;
&lt;br /&gt;
I've reported [https://launchpad.net/distros/ubuntu/+bug/46527 bug 46527] on the lack of screen driver detection, so hopefully this will get even easier.&lt;br /&gt;
&lt;br /&gt;
Note you do NOT need to install ATI drivers from the ATI site. The Ubuntu drivers are sufficient.&lt;br /&gt;
&lt;br /&gt;
Thanks to Rich Tango-Lowy (see below) for the hint re chip detection.&lt;br /&gt;
&lt;br /&gt;
==Kubuntu Dapper Live CD==&lt;br /&gt;
&lt;br /&gt;
If you're trying to install from the Kubuntu Desktop CD, you'll never make it to the login screen because the ATI display driver isn't recognized.&lt;br /&gt;
&lt;br /&gt;
* Ctrl-Alt-F1&lt;br /&gt;
* sudo nano /etc/X11/xorg.conf&lt;br /&gt;
* change the display driver line that looks like:&lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;ati&amp;quot;&lt;br /&gt;
&lt;br /&gt;
to &lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;vesa&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[I think I remember that it was &amp;quot;ati&amp;quot;, but I could be wrong.  In any &lt;br /&gt;
case this is very clearly the only Driver line in the ATI device specification section]&lt;br /&gt;
&lt;br /&gt;
* Save and exit&lt;br /&gt;
* sudo /etc/init.d kdm restart&lt;br /&gt;
&lt;br /&gt;
Now you get a login screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing Gentoo 2006.0 ==&lt;br /&gt;
&lt;br /&gt;
===Boot from Live CD===&lt;br /&gt;
Upon booting off the live cd you will come to the kernel selection prompt.&lt;br /&gt;
Enter:&lt;br /&gt;
    gentoo doscsi&lt;br /&gt;
I had some trouble getting the wired NIC to be linked to the driver, often getting an error that the EEPROM failed a check.  If this happens, you can try re-inserting the module,&lt;br /&gt;
    &amp;gt;rmmod e1000; modprobe e1000&lt;br /&gt;
or rebooting and trying again.  The wireless card isn't supported by the live cd so you're going to have to stick to wired for now.&lt;br /&gt;
&lt;br /&gt;
If you have a T60 with a '''Core 2 Duo''' processor (instead of Core Duo), you have the option of installing a 64-bit linux.  Use an amd64 (called this for historical reasons) install/live cd, and enter this at the boot prompt:&lt;br /&gt;
   gentoo-nofb noapic&lt;br /&gt;
The noapic option is needed on the 2006.1 cd to prevent a crash during boot.  Once you have compiled your own kernel you no longer need it.&lt;br /&gt;
&lt;br /&gt;
===/etc/make.conf Settings===&lt;br /&gt;
The make.conf settings are the first thing you want to setup correctly before you proceed with the rest of the install process. All future updates will depend upon these settings as well. &lt;br /&gt;
If you use a 32-bit profile (x86) use these settings&lt;br /&gt;
 CFLAGS=&amp;quot;-march=prescott -O2 -pipe -msse3 -fomit-frame-pointer&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;fglrx vesa fbdev&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 FEATURES=&amp;quot;sandbox ccache distlocks autoaddcvs parallel-fetch&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
If you use a 64-bit profile (amd64 - Core 2 Duo processors only) use this instead&lt;br /&gt;
 CFLAGS=&amp;quot;-O2 -pipe -march=nocona&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;radeon vesa fbdev&amp;quot;&lt;br /&gt;
For a more complete discussion of the CFLAGS to use for a Core Duo processor, see [http://forums.gentoo.org/viewtopic-t-448761-highlight-core+duo+prescott.html?sid=97485d7e26a1f77e2bb06fa437a448ff this forum thread]. Some users recommend that the USE variable has the ibm value in it (eg. USE=&amp;quot;ibm&amp;quot;) but the Gentoo website says this is only for Power PC64 systems; I don't think we should use it. If anyone can shed more light on this, please update this section.&lt;br /&gt;
&lt;br /&gt;
===Kernel Settings===&lt;br /&gt;
I was able to get the laptop running from i686 gentoo sources and recommend this to anyone installing Gentoo on their T60p. Alot of graphics support is left out of the kernel since the best graphics performance is with ATI's propietary drivers which you can emerge at the end of the kernel compile.&lt;br /&gt;
====Processor type and features====&lt;br /&gt;
* Turn on Symmetric multi-processing support.&lt;br /&gt;
* Set processor family to Pentium M (with the new 2.6.21+ you may choose Core 2/newer Xeon) for the Core Duo or EM64T for the Core 2 Duo with amd64 profile. &lt;br /&gt;
* Turn off toshiba and dell laptop support.&lt;br /&gt;
* Set Maximum number of CPUs to 2 (for obvious reasons, each CPU adds 8kb to the kernel.)&lt;br /&gt;
* Set timer frequency to 1000 Hz since this is a desktop system.&lt;br /&gt;
* Found on a [http://forum.thinkpads.com/viewtopic.php?t=19031 forum posting] that &amp;quot;Hotpluggable CPU&amp;quot; should be set to get acpi sleep to work.  Go figure...&lt;br /&gt;
&lt;br /&gt;
====Power management options====&lt;br /&gt;
* Turn on all ACPI settings (especially IBM Thinkpad Extras) except ASUS/Medion and Toshiba Laptop Extras.     &lt;br /&gt;
  Note: see this entry on ACPI Video for BIOS 2.x and kernels &amp;lt; 2.6.20-rc?&lt;br /&gt;
  http://thinkwiki.org/wiki/Problem_with_LCD_brightness_buttons&lt;br /&gt;
* Turn on CPU Frequency scaling.&lt;br /&gt;
** Turn on powersave, userspace, ondemand and conservative governor.&lt;br /&gt;
** Turn off ACPI Processor P-States driver.&lt;br /&gt;
** Turn off all AMD and Cyrix options.&lt;br /&gt;
** Turn on Intel Enhanced SpeedStep and Intel Speedstep on ICH-M chipsets (ioport interface).&lt;br /&gt;
** Turn off Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface).&lt;br /&gt;
** Turn off Intel Pentium 4 clock modulation, nVidia nForce2 FSB changing and Transmeta LongRun.&lt;br /&gt;
&lt;br /&gt;
====Bus options====&lt;br /&gt;
* Turn on PCI Express support.&lt;br /&gt;
* Turn on Message Signaled Interrupts.&lt;br /&gt;
* Turn on PCCard support and CardBus yenta-compatible bridge support.&lt;br /&gt;
&lt;br /&gt;
====Networking support====&lt;br /&gt;
* Turn off Generic IEEE 802.11 Networking Stack.&lt;br /&gt;
* Turn on IrDA (infrared) subsystem support and sub-options.&lt;br /&gt;
** Ensure you get nsc-ircc&lt;br /&gt;
* Turn on Bluetooth subsystem support and sub-options.&lt;br /&gt;
* Turn off Amateur Radio support (unless you work with actual radios.)&lt;br /&gt;
&lt;br /&gt;
====Device Drivers====&lt;br /&gt;
* Turn off Memory Technology Devices.&lt;br /&gt;
* Turn on ATA/ATAPI/MFM/RLL and Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support.&lt;br /&gt;
* Turn on PNP EIDE and PCI IDE chipset support (PNP EIDE may not be necessary but I haven't tested it)&lt;br /&gt;
** Turn on Include IDE/ATA-2 DISK support&lt;br /&gt;
** Turn on Use multi-mode by default&lt;br /&gt;
** Turn on Include IDE/ATAPI CDROM support&lt;br /&gt;
** Turn on PCI IDE chipset support (not all of the sub-options have been tested but this makes the DVD drive work well)&lt;br /&gt;
*** Turn on Generic PCI IDE Chipset Support&lt;br /&gt;
*** Turn on Generic PCI bus-master DMA support&lt;br /&gt;
*** Turn on Intel PIIXn chipsets support&lt;br /&gt;
* Turn off parallel port support.&lt;br /&gt;
* Turn on SCSI device support.  In &amp;quot;low-level device drivers&amp;quot;, chose the Serial ATA (SATA) support.  Build it as a part of the kernel, and not as a kernel module.&lt;br /&gt;
* Turn off Fusion MPT device support.&lt;br /&gt;
* Turn on IEEE 1394 (FireWire) support.&lt;br /&gt;
* Turn on Network device support.&lt;br /&gt;
** Turn off all options in all categories under Network device support except the stated ones below.&lt;br /&gt;
** Turn on Intel(R) PRO/1000 Gigabit Ethernet support under Ethernet (1000 Mbit).&lt;br /&gt;
** Turn on Wireless LAN drivers (non-hamradio) &amp;amp; Wireless Extensions and none of the sub-options underneath.&lt;br /&gt;
** Most people do not need Fibre channel, ATM, WAN or PPP/SLIP support (if you do then turn it on. PPP is needed for GPRS/UMTS connectivity)&lt;br /&gt;
* Character device options...&lt;br /&gt;
** Serial drivers... [for IrDA]&lt;br /&gt;
*** Set Max 8250/16550 serial ports to (4)&lt;br /&gt;
*** Set Number 8250/16550 serial ports to register at runtime to (1)&lt;br /&gt;
** Turn off Parallel printer support.&lt;br /&gt;
** Turn on Intel HW Random Number Generator support.&lt;br /&gt;
** Turn on /dev/nvram support.&lt;br /&gt;
** Turn off /dev/agpgart (AGP Support).&lt;br /&gt;
** Turn off Direct Rendering Manager.&lt;br /&gt;
** Support for the [[Embedded_Security_Subsystem|Fritz Chip]] is located in &amp;quot;TPM Devices&amp;quot;.&lt;br /&gt;
* Turn on I2C support and Intel 82801 (ICH) hardware bus support.&lt;br /&gt;
* Turn on Hardware Monitoring support and IBM Hard Drive Active Protection System (hdaps).&lt;br /&gt;
* Turn off all Graphics support options except the stated ones below,&lt;br /&gt;
** Turn on VESA VGA graphics support and set VESA driver type to vesafb.&lt;br /&gt;
** Turn on Enable firmware EDID and Enable Video Mode Handling Helpers.&lt;br /&gt;
** Turn on Support for the framebuffer splash.&lt;br /&gt;
* '''IMPORTANT:''' Turn off all Wireless device support under USB support -&amp;gt; USB Network Adapters or you will tear your hair out trying to get wireless.&lt;br /&gt;
* Turn on Sound card support.&lt;br /&gt;
** Turn on Advanced Linux Sound Architecture.&lt;br /&gt;
** Turn off all ISA, PCI, USB, generic and PCMCIA device options except the stated one below.&lt;br /&gt;
** Turn on Intel HD Audio under PCI devices.&lt;br /&gt;
* Turn off all MMC/SD Card support options.&lt;br /&gt;
* Turn off LED devices.&lt;br /&gt;
* Cryptographic options... (needed for the wireless card ipw9345)&lt;br /&gt;
** Turn on AES chiphers&lt;br /&gt;
** Turn on Michael MIC keyed digest algorithm&lt;br /&gt;
&lt;br /&gt;
That should do it. (I know, that's it.)&lt;br /&gt;
That should make sure that you have all the drivers necessary to boot the system and be able to use all your hardware (almost).&lt;br /&gt;
&lt;br /&gt;
===Portage Ebuilds===&lt;br /&gt;
&lt;br /&gt;
Always make sure you run this command before going any further so you can get the latest portage build and version...&lt;br /&gt;
 emerge --sync &amp;amp;&amp;amp; emerge portage&lt;br /&gt;
&lt;br /&gt;
Since September 24 2006 I was able to make the latest ati-drivers work on the T60p without adding any lines to the unmask file (/etc/portage/package.unmask) under the gentoo-sources kernel. You should be able to run...&lt;br /&gt;
 emerge ati-drivers&lt;br /&gt;
...without any problems. If you do have problems compiling, sometimes you may need to try emerging an unstable package. For more information on working with the ATI drivers, check out Gentoo's wiki [http://gentoo-wiki.com/HOWTO_ATI_Drivers| here.]&lt;br /&gt;
&lt;br /&gt;
Don't forget to emerge all the Thinkpad software as well...&lt;br /&gt;
 emerge tpb tp_smapi tpctl&lt;br /&gt;
&lt;br /&gt;
Then you can start to setup the wireless in this order at the command line...&lt;br /&gt;
 /bin/sh /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux&lt;br /&gt;
 emerge ieee80211 ipw3945 ipw3945d wireless-tools&lt;br /&gt;
&lt;br /&gt;
For some reason the wireless driver consists of two parts: the module itself, ipw3949.ko, and some sort of support daemon, ipw3945d. The ebuild updates the modules.conf file to automatically stop and start this deamon when the module is loaded or unloaded, respectively. Check if the following lines are present in /etc/modules.conf (or actually, in /etc/modules.d/ipw3945d - /etc/modules.conf is built from the separate files in /etc/modules.d when you run /sbin/modules-update)&lt;br /&gt;
&lt;br /&gt;
 install ipw3945 /sbin/modprobe --ignore-install ipw3945; sleep 0.5; /sbin/ipw3945d --quiet&lt;br /&gt;
 remove ipw3945 /sbin/ipw3945d --kill; /sbin/modprobe -r --ignore-remove ipw3945&lt;br /&gt;
&lt;br /&gt;
In other words, to load the module, and start the daemon, do&lt;br /&gt;
&lt;br /&gt;
  modprobe ipw3945&lt;br /&gt;
&lt;br /&gt;
To remove the module, and kill the daemon, enter&lt;br /&gt;
&lt;br /&gt;
  modprobe -r ipw3945&lt;br /&gt;
&lt;br /&gt;
'''Note''': rmmod does '''not''' work - it doesn't use /etc/modprobe.conf, and therefore doesn't kill the daemon: while the daemon is running, you cannot unload the module. (You'll get an errormessage saying the module is in use).&lt;br /&gt;
&lt;br /&gt;
If for some reason you need to kill the module manually, use &lt;br /&gt;
&lt;br /&gt;
  /sbin/ipw3945d --kill&lt;br /&gt;
&lt;br /&gt;
Ofcourse the normal 'kill' command also works, but you'll have to remove the pid file /var/run/ipw3945d.pid by hand.&lt;br /&gt;
&lt;br /&gt;
===xorg.conf Settings===&lt;br /&gt;
&lt;br /&gt;
A piece of code is worth a thousand words; here is my xorg.conf that works at 3000-5000 FPS so far. I am still trying to find better parameters, but this is the best I got it to run so far. I intentionally left out the InputDevice section since I disabled my Synaptics pad (I like the center joystick better.) Just modify your xorg.conf sections with what is shown below.&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Module&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dbe&amp;quot;     # Double buffer extension&lt;br /&gt;
        SubSection &amp;quot;extmod&amp;quot;&lt;br /&gt;
        Option      &amp;quot;omit xfree86-dga&amp;quot;   # don't initialise the DGA extension&lt;br /&gt;
        EndSubSection&lt;br /&gt;
        Load  &amp;quot;freetype&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dri&amp;quot;&lt;br /&gt;
        Load  &amp;quot;glx&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;vesa&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;fglrx&amp;quot;&lt;br /&gt;
        VendorName  &amp;quot;ati&amp;quot;&lt;br /&gt;
        #ModelName   &amp;quot;FireGL V5200 (RV530 71DA)&amp;quot;&lt;br /&gt;
        BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VideoOverlay&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EnablePrivateBackZ&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;dri&amp;quot;&lt;br /&gt;
        Group &amp;quot;video&amp;quot;&lt;br /&gt;
        Mode 0666&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Extensions&amp;quot;&lt;br /&gt;
        Option &amp;quot;XVideo&amp;quot; &amp;quot;Enable&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Device     &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Monitor    &amp;quot;Monitor&amp;quot;&lt;br /&gt;
        DefaultDepth     24&lt;br /&gt;
        SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
                Viewport  0 0&lt;br /&gt;
                Depth     24&lt;br /&gt;
                Modes    &amp;quot;1280x1024&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot; &amp;quot;640x480&amp;quot;&lt;br /&gt;
        EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Make sure you assign your username to the video group in the /etc/group file or you will net get DRI (Direct Rendering) support. When debugging your running X windows system, always check /var/log/Xorg.0.log for any errors or hints at what may be configured incorrectly. This is how I was able to get so far with the graphics.&lt;br /&gt;
&lt;br /&gt;
====Dual monitors====&lt;br /&gt;
The T60p comes with a nice little VGA-out port on the side, and you may want to use a dual-monitor setup occasionally. Allegedly, using Xinerama with the fglrx driver will incapacitate your 3D rendering, and ATI's BigDesktop seems (at least to me) to be more trouble than it's worth. What I've done is set up Xorg to have two separate Screens, one for each Monitor. You won't be able to drag windows across both screens, and some applications don't like having windows on both monitors, but this approach works painlessly, even with monitors of different resolutions, and you get to keep your 3D rendering! Here are the relevant parts of xorg.conf:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
      Identifier     &amp;quot;Two Screen Layout&amp;quot;&lt;br /&gt;
      Screen          0 &amp;quot;Default Screen&amp;quot; 0 0&lt;br /&gt;
      Screen          1 &amp;quot;External Screen&amp;quot; RightOf &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - first head (internal)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;MonitorLayout&amp;quot; &amp;quot;lvds, auto&amp;quot;&lt;br /&gt;
      Option          &amp;quot;DesktopSetup&amp;quot; &amp;quot;horizontal&amp;quot;&lt;br /&gt;
      Screen          0&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - second head (external)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      Screen          1&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1400x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           ViewPort       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1680x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           Viewport       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Note that there are two sections each for the video card (one for each head on the card), monitors, and screens. The laptop's screen is 1400x1050, and my external monitor is 1680x1050. Since it's a laptop, you probably won't be using dual monitors all the time, so it would be best to keep two different configurations (e.g. xorg.conf.one-monitor, xorg.conf.two-monitors), and copy each to /etc/X11/xorg.conf when needed. [http://pastebin.ca/647680 Here] is my whole dual-monitor xorg.conf. I also threw together a [http://pastebin.ca/658666 script] for changing the setting given an xorg.conf.one-monitor and an xorg.conf.two-monitors in /etc/X11 (it also works for game configurations in case your monitors are different sizes - I included a Quake 3 example, commented out).&lt;br /&gt;
&lt;br /&gt;
==Known Issues==&lt;br /&gt;
[[Problem with e1000: Open issue with latency|Latency issue with e1000 nic]]&lt;br /&gt;
&lt;br /&gt;
==External Sources==&lt;br /&gt;
*[http://arscognita.com/~richtl/T60p/index.html Rich Tango-Lowy's Mandriva 2007 Cooker on T60p page]&lt;br /&gt;
*[http://buzzy.tesuji.org/thinkpad_t60p.html Jon Lin's Gentoo Thinkpad T60p]&lt;br /&gt;
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)].&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=List_of_DMI_IDs&amp;diff=32111</id>
		<title>List of DMI IDs</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=List_of_DMI_IDs&amp;diff=32111"/>
		<updated>2007-08-15T19:15:10Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: Added T60p 2007-ZK4&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;&amp;quot; | __TOC__&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
This page maintains a database of [http://en.wikipedia.org/wiki/Desktop_Management_Interface DMI] information which can be used to identify ThinkPad models. It is intended as an aid for driver development.&lt;br /&gt;
{{HELP|We need more information about older models, especially those released before 2004. Please [[#Adding_entries|add your model]] to the database.}}&lt;br /&gt;
{{NOTE|If your ThinkPad is not using the [[BIOS Upgrade Downloads|latest BIOS]], and you would be willing to [[BIOS Upgrade|upgrade your BIOS]], please add your ThinkPad to this table twice: '''before''' and '''after''' the BIOS upgrade.  This information helps us a great deal, so your contribution would be very appreciated.}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==DMI ID database==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 80%&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Model&lt;br /&gt;
! &amp;lt;tt&amp;gt;system-&amp;lt;br /&amp;gt;manufa&amp;lt;br /&amp;gt;cturer&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;system-&amp;lt;br /&amp;gt;product-&amp;lt;br /&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;system-&amp;lt;br /&amp;gt;version&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;baseboard-&amp;lt;br /&amp;gt;manufa&amp;lt;br /&amp;gt;cturer&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;baseboard-&amp;lt;br /&amp;gt;product-&amp;lt;br /&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;baseboard-&amp;lt;br /&amp;gt;version&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;chassis-&amp;lt;br /&amp;gt;manufa&amp;lt;br /&amp;gt;cturer&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;chassis-&amp;lt;br /&amp;gt;version&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;bios-&amp;lt;br /&amp;gt;vendor&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;bios-&amp;lt;br /&amp;gt;version&amp;lt;/tt&amp;gt;&lt;br /&gt;
! &amp;lt;tt&amp;gt;bios-&amp;lt;br /&amp;gt;release-&amp;lt;br /&amp;gt;date&amp;lt;/tt&amp;gt;&lt;br /&gt;
! Embedded controller&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
====Numbered series====&lt;br /&gt;
|-&lt;br /&gt;
| {{600E}} 2645-5AU&lt;br /&gt;
|| IBM || 26455AU || Not Available || IBM || 26455AU || Not Available || IBM || Not Available || IBM || INET36WW || 11/20/1999&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{600X}} 2645-5FU&lt;br /&gt;
|| IBM || 26455FU || Not Available || IBM || 26455FU || Not Available || IBM || Not Available || IBM || INET55WW || 11/30/1999&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====A series====&lt;br /&gt;
|-&lt;br /&gt;
| {{A21m}} 2628-FSG&lt;br /&gt;
|| IBM || 2628FSG || Not Available || IBM || 2628FSG || Not Available || IBM || Not Available || IBM || KXET24WW (1.02b) || 12/19/2000 &lt;br /&gt;
|| &lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{A21m}} 2628-FSG&lt;br /&gt;
|| IBM || 2628FSG || Not Available || IBM || 2628FSG || Not Available || IBM || Not Available || IBM || KXET36WW (1.09 ) || 05/08/2003 &lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{A22p}} 2629-USG&lt;br /&gt;
|| IBM || 2629USG || Not Available || IBM || 2629USG || Not Available || IBM || Not Available || IBM || KYET36WW (1.09a) || 10/17/2002 &lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Outdated BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{A31}} 2652-PBU&lt;br /&gt;
|| IBM || 2652PBU || Not Available || IBM || 2652PBU || Not Available || IBM || Not Available || IBM || 1NET15WW (1.09 ) || 04/06/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1NHT04WW-1.01    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{A31p}} 2653H6U&lt;br /&gt;
|| IBM || 2653H6U || Not Available || IBM || 2653H6U || Not Available || IBM || Not Available || IBM || 1GET31WW (1.03 ) || 07/23/2002&lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Missing EC string, extremely outdated BIOS}}{{HELP|We need a report to know if the latest BIOS fixes the missing EC string}}&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====G series====&lt;br /&gt;
|-&lt;br /&gt;
| {{G41}} 2881-75M&lt;br /&gt;
|| IBM || 288175M || ThinkPad G41 || IBM || 288175M || Not Available || IBM || Not Available || IBM || 1XET47WW (1.06 ) || 01/14/2005&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
====R series====&lt;br /&gt;
|-&lt;br /&gt;
| {{R40}} 2681-5UU&lt;br /&gt;
|| IBM || 26815UU || Not Available || IBM || 26815UU || Not Available || IBM || Not Available || IBM || 1OET57WW (1.23 ) || 03/23/2005 &lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Outdated BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R40}} 2681-HSG&lt;br /&gt;
|| IBM || 2681HSG || Not Available || IBM || 2681HSG || Not Available || IBM || Not Available || IBM || 1OET61WW (1.27 ) || 06/29/2006&lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Outdated BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R40}} 2722-B3G&lt;br /&gt;
|| IBM || 2722B3G || Not Available || IBM || 2722B3G || Not Available || IBM || Not Available || IBM || 1PET62WW (1.30 ) || 09/29/2005&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R40}} 2897-B4U&lt;br /&gt;
|| IBM || 2897B4U || Not Available || IBM || 2897B4U || Not Available || IBM || Not Available || IBM || 1PET52WW (1.20 ) || 03/03/2004&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R40e}} 2684-L8G&lt;br /&gt;
|| IBM || 2897B4U || Not Available || IBM || 2897B4U || Not Available || IBM || Not Available || IBM || 1SET62WW (1.30 ) || 07/09/2004&lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Outdated BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R50}} 1829-7QG&lt;br /&gt;
|| IBM || 0123456 || ThinkPad R50  || IBM || 0123456 || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
|{{R50e}} 1834-JAG&lt;br /&gt;
|| IBM || 1834JAG || ThinkPad R50e || IBM || 1834JAG || Not Available || IBM || Not Available || IBM || 1WET82WW (2.02 ) || 02/21/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0022, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1VHT28WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
|{{R50p}} 1832-2AG&lt;br /&gt;
|| IBM || 18322AG || ThinkPad R50p || IBM || 18322AG || Not Available || IBM || Not Available || IBM || 1RETC2WW (3.03 ) || 04/07/2004 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1RHT66WW-3.00a   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R51}} 1829-DRG&lt;br /&gt;
|| IBM || 1829DRG || ThinkPad R51 || IBM || 1829DRG || Not Available || IBM || Not Available || IBM || 1RETC2WW (3.03 ) || 04/07/2004&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT66WW-3.00a   ]-&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R51}} 1829-9MG&lt;br /&gt;
|| IBM || 18299MG || ThinkPad R51 || IBM || 18299MG || Not Available || IBM || Not Available || IBM || 1RETDOWW (3.20 ) || 02/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R51}} 1829-L7G&lt;br /&gt;
|| IBM || 1829L7G || ThinkPad R51 || IBM || 1829L7G || Not Available || IBM || Not Available || IBM || 1RETDNWW (3.19 ) || 10/13/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT70WW-3.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R51}} 1836-GEU&lt;br /&gt;
|| IBM || 1836GEU || ThinkPad R51 || IBM || 1836GEU || Not Available || IBM || Not Available || IBM || 1RETDLWW  (3.17 ) || 07/27/2005 || &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes. String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R51}} 2883-ELU&lt;br /&gt;
|| IBM || 2883ELU || ThinkPad R51 || IBM || 2883ELU || Not Available || IBM || Not Available || IBM || 1VET69WW (1.27 ) || 03/03/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1VHT28WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-AQG&lt;br /&gt;
|| IBM || 1846AQG || ThinkPad H || IBM || 1846AQG || Not Available || IBM || Not Available || IBM || 76ET58WW (1.18 ) || 07/19/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes	String 1: IBM ThinkPad Embedded Controller -[76HT14WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|| {{NOTE|Weird system version, this bug is known fixed in latest BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-AQG&lt;br /&gt;
|| IBM || 1846AQG || ThinkPad R52p || IBM || 1846AQG || Not Available || IBM || Not Available || IBM || 76ET68WW (1.28 ) || 11/15/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT16WW-1.06    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-AQG&lt;br /&gt;
|| IBM || 1846AQG || ThinkPad R52p || IBM || 1846AQG || Not Available || IBM || Not Available || IBM || 76ET69WW (1.29 ) || 12/06/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT16WW-1.06    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1847-W62&lt;br /&gt;
|| IBM || 1847W62 || ThinkPad .    || IBM || 1847W62 || Not Available || IBM || Not Available || IBM || 76ET58WW (1.18 ) || 07/19/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT14WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|| {{NOTE|Weird system version, this bug is known fixed in latest BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1847-W62&lt;br /&gt;
|| IBM || 1847W62 || ThinkPad R52  || IBM || 1847W62 || Not Available || IBM || Not Available || IBM || 76ET65WW (1.25 ) || 05/18/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT16WW-1.06    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1858-6MM&lt;br /&gt;
|| IBM || 18586MM || ThinkPad R52 || IBM || 18586MM || Not Available || IBM || Not Available || IBM || 70ET40WW (1.04 ) || 06/02/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[70HT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1858-6SM&lt;br /&gt;
|| IBM || 18586SM || ThinkPad R52 || IBM || 18586SM || Not Available || IBM || Not Available || IBM || 70ET57WW (1.17 ) || 07/15/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[70HT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-4CG&lt;br /&gt;
|| IBM || 18464CG || ThinkPad R52 || IBM || 18464CG || Not Available || IBM || Not Available || IBM || 76ET65WW (1.25 ) || 05/18/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT15WW-1.05    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-4CG&lt;br /&gt;
|| IBM || 18464CG || ThinkPad R52 || IBM || 18464CG || Not Available || IBM || Not Available || IBM || 76ET58WW (1.18 ) || 07/19/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[76HT16WW-1.06    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R52}} 1846-B5G&lt;br /&gt;
|| IBM || 1846B5G || ThinkPad H    || IBM || 1846B5G || Not Available || IBM || Not Available || IBM || 76ET58WW (1.18 ) || 07/19/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[76HT14WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R60e}} 0657-4TG&lt;br /&gt;
|| LENOVO || 06574TG || ThinkPad R60e || LENOVO || 06574TG || Not Available || LENOVO || Not Available || LENOVO || 7EET18WW (1.04 ) || 07/28/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[7EHT13WW-1.05    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9456-6FG&lt;br /&gt;
|| LENOVO || 94566FG || ThinkPad R60 || LENOVO || 94566FG || Not Available || LENOVO || Not Available || LENOVO || 7CET50WW (1.05 ) || 07/28/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7CHT19WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9456-6FG&lt;br /&gt;
|| LENOVO || 94566FG || ThinkPad R60 || LENOVO || 94566FG || Not Available || LENOVO || Not Available || LENOVO || 7CETB7WW (2.07 ) || 11/13/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[7CHT21WW-1.09    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9461-54G&lt;br /&gt;
|| LENOVO || 946154G || ThinkPad R60 || LENOVO || 946154G || Not Available || LENOVO || Not Available || LENOVO || 7CET50WW (1.05 ) || 07/28/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7CHT19WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9461-54G&lt;br /&gt;
|| LENOVO || 946154G || ThinkPad R60 || LENOVO || 946154G || Not Available || LENOVO || Not Available || LENOVO || 7CETC1WW (2.11 ) || 01/09/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7CHT21WW-1.09    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|| {{NOTE|With this bios version the brightness control buttons don't work for kernel &amp;lt; 2.6.20}}&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9461-DXG&lt;br /&gt;
|| LENOVO || 9461DXG || ThinkPad R60 || LENOVO || 9461DXG || Not Available || LENOVO || Not Available || LENOVO || 7CETB6WW (2.06 ) || 10/16/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7CHT21WW-1.09    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| {{R60}} 9462-GAG&lt;br /&gt;
|| LENOVO || 9462GAG || ThinkPad R60 || LENOVO || 9462GAG || Not Available || LENOVO || Not Available || LENOVO || 7CETB5WW (2.05 ) || 10/13/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7CHT21WW-1.09    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====S series====&lt;br /&gt;
|-&lt;br /&gt;
| {{s30}} 2639-4WJ&lt;br /&gt;
|| IBM || 26394WJ || Not Available || IBM || 2609BS1 || Not Available || IBM || Not Available || IBM || 18ET45WW (1.45) || 07/10/2001&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====T series====&lt;br /&gt;
|-&lt;br /&gt;
| {{T20}} 2647-UC2&lt;br /&gt;
|| IBM || 2647UC2 || Not Available || IBM || 2647UC2 || Not Available || IBM || Not Available || IBM || IYET45WW (1.08a) || 12/21/1999&lt;br /&gt;
||&lt;br /&gt;
|| {{WARN|Very outdated BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{T21}} 2647-8AU&lt;br /&gt;
|| IBM || 26478AU || Not Available || IBM || 26478AU || Not Available || IBM || Not Available || IBM || KZET34WW (1.16 ) || 04/28/2004&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T22}} 2647-4EG&lt;br /&gt;
|| IBM || 26474EG || Not Available || IBM || 26474EG || Not Available || IBM || Not Available || IBM || 16ET31WW (1.11 ) ||&lt;br /&gt;
03/20/2003 &lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T22}} 2647-8EU&lt;br /&gt;
|| IBM || 26478EU || Not Available || IBM || 26478EU || Not Available || IBM || Not Available || IBM || 16ET32WW (1.12 ) || 04/27/2004&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|- &lt;br /&gt;
| {{T23}} 2647-4NU&lt;br /&gt;
|| IBM || 26474NU || Not Available || IBM || 26474NU || Not Available || IBM || Not Available || IBM || 1AET62WW (1.18 ) || 07/06/2004&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1AHT23WW-1.06a   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T23}} 2647-8MG&lt;br /&gt;
|| IBM || 26478MG || Not Available || IBM || 26478MG || Not Available || IBM || Not Available || IBM || 1AET56WW (1.13 ) || 07/02/2002&lt;br /&gt;
||&lt;br /&gt;
|| {{NOTE|Missing EC string, this bug is known to be fixed in latest BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{T23}} 2647-8MG&lt;br /&gt;
|| IBM || 26478MG || Not Available || IBM || 26478MG || Not Available || IBM || Not Available || IBM || 1AET62WW (1.18 ) || 07/06/2004&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1AHT23WW-1.06a]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T30}} 2366-85G&lt;br /&gt;
|| IBM || 236685G || Not Available || IBM || 236685G || Not Available || IBM || Not Available || IBM || 1IET69WW (2.08 ) || 06/11/2004 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1IHT18WW-1.05    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T30}} 2366-GU1&lt;br /&gt;
|| IBM || 2366GU1 || Not Available || IBM || 2366GU1 || Not Available || IBM || Not Available || IBM || 1IET69WW (2.08 ) || 06/11/2004&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1IHT19WW-1.06    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T30}} 2366-JBU&lt;br /&gt;
|| IBM || 2366JBU || Not Available || IBM || 2366JBU || Not Available || IBM || Not Available || IBM || 1IET71WW (2.10 ) || 06/16/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1IHT20WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T40}} 2378-D2U&lt;br /&gt;
|| IBM || 2378D2U || ThinkPad T40 || IBM || 2378D2U || Not Available || IBM || Not Available || IBM || 1RETC2WW (3.03 ) || 04/07/2004&lt;br /&gt;
|| &lt;br /&gt;
|| {{NOTE|Missing EC string, this bug is known to be fixed in latest BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{T40p}} 2373-G1G&lt;br /&gt;
|| IBM || 2373G1G || ThinkPad T40p || IBM || 2373G1G || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T41}} 2373-W63&lt;br /&gt;
|| IBM || 2373W63 || ThinkPad T41  || IBM || 2373W63 || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
|{{T41}} 2373-XNX&lt;br /&gt;
|| IBM || 2373XNX || ThinkPad T41  || IBM || 2373XNX || Not Available || IBM || Not Available || IBM || 1RETDOWW (3.20 ) || 02/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T41}} 2373-2FG&lt;br /&gt;
|| IBM || 23732FG || ThinkPad T41 || IBM || 23732FG || Not Available || IBM || Not Available || IBM || 1RET84WW (2.11 ) || 10/30/2003&lt;br /&gt;
||&lt;br /&gt;
|| {{NOTE|Missing EC string, this bug is known to be fixed in latest BIOS}}&lt;br /&gt;
|-&lt;br /&gt;
| {{T41}} 2379-DJU&lt;br /&gt;
|| IBM || 2379DJU || ThinkPad T41  || IBM || 2379DJU || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{T41p}} 2373-GHG &lt;br /&gt;
|| IBM || 2373GHG || ThinkPad T41p || IBM || 2373GHG || Not Available || IBM || Not Available || IBM || 1RETDIWW (3.14 ) || 01/20/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T41p}} 2373-GEG&lt;br /&gt;
|| IBM || 2373GEG || ThinkPad T41p || IBM || 2373GEG || Not Available || IBM || Not Available || IBM || 1RETDNWW (3.19 ) || 10/13/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt; Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T41p}} 2373-GJJ&lt;br /&gt;
|| IBM || 2373GJJ || ThinkPad T41p || IBM || 2373GJJ || Not Available || IBM || Not Available || IBM || 1RETDOWW (3.20 ) || 02/27/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42}} 2373-FWG&lt;br /&gt;
|| IBM || 2373FWG || ThinkPad T42 || IBM || 2373FWG || Not Available || IBM || Not Available || IBM || 1RETDHWW (3.13 ) || 10/29/2004&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42}} 2373-M1G&lt;br /&gt;
|| IBM || 2373M1G || ThinkPad T42 || IBM || 2373M1G || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|- &lt;br /&gt;
| {{T42}} 2374-WEH&lt;br /&gt;
|| IBM || 2374WEH || ThinkPad T42 || IBM || 2374WEH || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42}} 2378-FVU&lt;br /&gt;
|| IBM || 2378FVU || ThinkPad T42 || IBM || 2378FVU || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2373-KXU&lt;br /&gt;
|| IBM || 2373KXU || ThinkPad T42p || IBM || 2373KXU || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2373-KUU&lt;br /&gt;
|| IBM || 2373KUU || ThinkPad T42p || IBM || 2373KUU || Not Available || IBM || Not Available || IBM || 1RETDMWW (3.18 ) || 09/15/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2373-GYG&lt;br /&gt;
|| IBM || 2373GYG || ThinkPad T42p || IBM || 2373GYG || Not Available || IBM || Not Available || IBM || 1RETDOWW (3.20 ) || 02/27/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2374-CP5&lt;br /&gt;
|| IBM || 2374CP5 || ThinkPad T42p || IBM || 2374CP5 || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2379-DYU&lt;br /&gt;
|| IBM || 2379DYU || ThinkPad T42p || IBM || 2379DYU || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T42p}} 2372-Q2G&lt;br /&gt;
|| IBM || 2373Q2G || ThinkPad T42p || IBM || 2373Q2G || Not Available || IBM || Not Available || IBM || 1RETDPWW (3.21 ) || 06/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1RHT71WW-3.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T43}} 1871-4AG&lt;br /&gt;
|| IBM || 18714AG || ThinkPad T43 || IBM || 18714AG || Not Available || IBM || Not Available || IBM || 70ET64WW (1.24 ) || 02/13/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[70HT27WW-1.04    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T43}} 1871-F1G&lt;br /&gt;
|| IBM || 1871F1G || ThinkPad T43 || IBM || 1871F1G || Not Available || IBM || Not Available || IBM || 70ET61WW (1.21 ) || 11/01/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[70HT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T43}} 2686-DGU&lt;br /&gt;
|| IBM || 2686DGU || ThinkPad T43 || IBM || 2686DGU || Not Available || IBM || Not Available || IBM || 1YET62WW (1.27 ) || 05/18/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1YHT29WW-1.06    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T43}} 2669-WE5&lt;br /&gt;
|| IBM || 2669WE5 || ThinkPad T43 || IBM || 2669WE5 || Not Available || IBM || Not Available || IBM || 1YET56WW (1.21 ) || 07/06/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;String 1: IBM ThinkPad Embedded Controller -[1YHT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|| {{NOTE|User reports this is really a 2669-CEU with 1GB RAM + BlueTooth, and not a 2669-WE5 (unverified if this makes sense)}}&lt;br /&gt;
|-&lt;br /&gt;
| {{T43p}} 2668-G2G&lt;br /&gt;
|| IBM || 2668G2G || ThinkPad T43p || IBM || 2668G2G || Not Available || IBM || Not Available || IBM || 1YET47WW (1.08 ) || 06/09/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[1YHT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T43p}} 2687-D5U&lt;br /&gt;
|| IBM || 2687D5U || ThinkPad T43p || IBM || 2687D5U || Not Available || IBM || Not Available || IBM || 1YET59WW (1.24 ) || 11/07/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1YHT26WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60}} 1952-W5R&lt;br /&gt;
|| LENOVO || 1952W5R || ThinkPad T60 || LENOVO || 1952W5R || Not Available || LENOVO || Not Available || LENOVO || 79ET61WW (1.06 ) || 05/24/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT45WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60}} 1952-W5R&lt;br /&gt;
|| LENOVO || 1952W5R || ThinkPad T60 || LENOVO || 1952W5R || Not Available || LENOVO || Not Available || LENOVO || 79ETD2WW (2.12 ) || 04/12/2007&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT50WW-1.07    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60}} 2007-49G&lt;br /&gt;
|| LENOVO || 200749G || ThinkPad T60 || LENOVO || 200749G || Not Available || LENOVO || Not Available || LENOVO || 79ET62WW (1.07 ) || 06/12/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[79HT45WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60}} 2007-77G&lt;br /&gt;
|| LENOVO || 200777G || ThinkPad T60 || LENOVO || 200777G || Not Available || LENOVO || Not Available || LENOVO || 79ETD1WW (2.11 ) || 03/15/2007&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT50WW-1.07    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-83U&lt;br /&gt;
|| LENOVO || 200783U || ThinkPad T60p || LENOVO || 200783U || Not Available || LENOVO || Not Available || LENOVO || 79ET60WW (1.05a) || 04/18/2006 || &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[79HT43WW-1.02    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-93G&lt;br /&gt;
|| LENOVO || 200793G || ThinkPad T60p || LENOVO || 200793G || Not Available || LENOVO || Not Available || LENOVO || 79ET62WW (1.07 ) || 06/12/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[79HT45WW-1.04    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-93U&lt;br /&gt;
|| LENOVO || 200793U || ThinkPad T60p || LENOVO || 200793U || Not Available || LENOVO || Not Available || LENOVO || 79ET66WW (1.10 ) || 08/02/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT48WW-1.05b   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-93U&lt;br /&gt;
|| LENOVO || 200793U || ThinkPad T60p || LENOVO || 200793U || Not Available || LENOVO || Not Available || LENOVO || 79ET67WW (1.11 ) || 08/29/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT48WW-1.05b   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-93U&lt;br /&gt;
|| LENOVO || 200793U || ThinkPad T60p || LENOVO || 200793U || Not Available || LENOVO || Not Available || LENOVO || 79ETC3WW (2.03 ) || 11/10/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[79HT50WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2007-ZK4&lt;br /&gt;
|| LENOVO || 2007ZK4 || ThinkPad T60p || LENOVO || 2007ZK4 || Not Available || LENOVO || Not Available || LENOVO || 79ETD3WW (2.13 ) || 04/30/2007&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT50WW-1.07    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2613-ESU&lt;br /&gt;
|| LENOVO || 2613ESU || ThinkPad T60p || LENOVO || 2613ESU || Not Available || LENOVO || Not Available || LENOVO || 79ET67WW (1.11 ) || 08/29/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT48WW-1.05b   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T60p}} 2623-DDU&lt;br /&gt;
|| LENOVO || 2623DDU || ThinkPad T60p || LENOVO || 2623DDU || Not Available || LENOVO || Not Available || LENOVO || 79ETC3WW (2.03 ) || 11/10/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[79HT50WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T61}} 7662-XDU&lt;br /&gt;
|| LENOVO || 7662XDU || ThinkPad T61 || LENOVO || 7662XDU || 7662XDU|| LENOVO || Not Available || LENOVO || 7LET37WW (1.07 ) || 04/17/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0028, DMI type 11, 5 bytes   String 1: IBM ThinkPad Embedded Controller -[7KHT19WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|| {{WARN|BIOS and EC firmware have different IDs}}&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{T61}} 7661-A56&lt;br /&gt;
|| LENOVO || 7661A56 || ThinkPad T61 || LENOVO || 7661A56 || Not Available || LENOVO || Not Available || LENOVO || 7LET39WW (1.09 ) || 05/14/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0028, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[7KHT21WW-1.05    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====X series====&lt;br /&gt;
|-&lt;br /&gt;
| {{X20}} 266231G&lt;br /&gt;
|| IBM || 266231G || Not Available || IBM || 266231G || Not Available || IBM || Not Available || IBM || IZET9DWW (2.25 ) || 04/17/2003&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
|| 266232G || IBM || 266232G || Not Available || IBM || 266232G || Not Available || IBM || Not Available || IBM || IZET9AWW (2.22 ) || 09/11/2002&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X23}} 2662EBG&lt;br /&gt;
|| IBM || 2662EBG || Not Available || IBM || 2662EBG || Not Available || IBM || Not Available || IBM || 1DET70WW (1.32 ) || 06/10/2003&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{X24}} 2662-MPU&lt;br /&gt;
|| IBM || 62MPUFX || Not Available || IBM || 62MPUFX || Not Available || IBM || Not Available || IBM || 1DET67WW (1.29 ) || 12/18/2002&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|- &lt;br /&gt;
| {{X30}} 2672-4HU&lt;br /&gt;
|| IBM || 26724HU || Not Available || IBM || 26724HU || Not Available || IBM || Not Available || IBM || 1KET48WW (1.09 ) || 06/16/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1KHT18WW-1.06    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{X30}} 2672-PG3&lt;br /&gt;
|| IBM || 2672PG3 || Not Available || IBM || 2672PG3 || Not Available || IBM || Not Available || IBM || 1KET48WW (1.09 ) || 06/16/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1KHT18WW-1.06    ]-&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X31}} 2672-JXU&lt;br /&gt;
|| IBM || 2672JXU || ThinkPad X31 || IBM || 2672JXU || Not Available || IBM || Not Available || IBM || 1QET97WW (3.02 ) || 09/22/2005 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1QHT23WW-1.08    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{X32}} 2884-A3U&lt;br /&gt;
|| IBM || 2884A3U || ThinkPad X32 || IBM || 2884A3U || Not Available || IBM || Not Available || IBM || 1QET94WW (3.00d) || 01/23/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1QHT22WW-1.07b   ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X40}} 2386-H4G&lt;br /&gt;
|| IBM || 2386H4G || ThinkPad X40 || IBM || 2386H4G || Not Available || IBM || Not Available || IBM || 1UET92WW (1.42 ) || 09/16/2004 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[1UHT82WW-1.32    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X40}} 2371-Y29&lt;br /&gt;
|| IBM || 2371Y29 || ThinkPad X40 || IBM || 2371Y29 || Not Available || IBM || Not Available || IBM || 1UETD3WW (2.08 ) || 12/21/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0024, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[1UHTA6WW-1.56    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{X41}} 2525-HU1&lt;br /&gt;
|| IBM || 2525HU1 || ThinkPad X41 || IBM || 2525HU1 || Not Available || IBM || Not Available || IBM || 74ET48WW (1.17a) || 06/07/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0025, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[74HT25WW-1.00    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X60}} 1709-47U&lt;br /&gt;
|| LENOVO || 170947U || ThinkPad X60 || LENOVO || 170947U || Not Available || LENOVO || Not Available || LENOVO || 7BET44WW (1.04 ) || 03/13/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[7BHT29WW-1.02    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X60}} 1709-GDJ&lt;br /&gt;
|| LENOVO || 1709GDJ || ThinkPad X60 || LENOVO || 1709GDJ || Not Available || LENOVO || Not Available || LENOVO || 7BETC2WW (2.03 ) || 10/16/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7BHT36WW-1.09    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X60s}} 1702-55G&lt;br /&gt;
|| LENOVO || 170255G || ThinkPad X60s || LENOVO || 170255G || Not Available || LENOVO || Not Available || LENOVO || 7BET44WW (1.04 ) || 03/13/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[7BHT29WW-1.02    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X60s}} 1702-5FG&lt;br /&gt;
|| LENOVO || 17025FG || ThinkPad X60s || LENOVO || 17025FG || Not Available || LENOVO || Not Available || LENOVO || 7BET49WW (1.09 ) || 07/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7BHT34WW-1.07    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{X60s}} 1704-56G&lt;br /&gt;
|| LENOVO || 170456G || ThinkPad X60s || LENOVO || 170456G || Not Available || LENOVO || Not Available || LENOVO || 7BET43WW (1.03 ) || 02/13/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[7BHT28WW-1.01    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
! colspan=14 style=&amp;quot;text-align:center;background:#efefef;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
====Z series====&lt;br /&gt;
|-&lt;br /&gt;
| {{Z60t}} 2511-FEU&lt;br /&gt;
|| IBM || 2511FEU || ThinkPad Z60t || IBM || 2511FEU || Not Available || IBM || Not Available || IBM || 77ET42WW (1.05 ) || 11/19/2005&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[77HT28WW-1.02    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z60t}} 2511-FFG&lt;br /&gt;
|| IBM || 2511FFG || ThinkPad Z60t || IBM || 2511FFG || Not Available || IBM || Not Available || IBM || 77ET64WW (1.24 ) || 02/27/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[77HT57WW-1.17    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|- &lt;br /&gt;
| {{Z60m}} 2529-ETG&lt;br /&gt;
|| IBM || 2529ETG || ThinkPad Z60m || IBM || 2529ETG || Not Available || IBM || Not Available || IBM || 77ET59WW (1.19 ) || 04/24/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[77HT54WW-1.14    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z60m}} 2529-ETG&lt;br /&gt;
|| IBM || 2529ETG || ThinkPad Z60m || IBM || 2529ETG || Not Available || IBM || Not Available || IBM || 77ET64WW (1.24 ) || 02/27/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[77HT58WW-1.18    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z60m}} 2529-FBG&lt;br /&gt;
|| IBM || 2529FBG || ThinkPad Z60m || IBM || 2529FBG || Not Available || IBM || Not Available || IBM || 77ET62WW (1.22 ) || 11/21/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0029, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[77HT58WW-1.18    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|- &lt;br /&gt;
| {{Z60m}} 2529-FKG&lt;br /&gt;
|| IBM || 2529FKG || ThinkPad Z60m || IBM || 2529FKG || Not Available || IBM || Not Available || IBM || 77ET42WW (1.05 ) || 11/19/2005&lt;br /&gt;
||      String 1: IBM ThinkPad Embedded Controller -[77HT28WW-1.02    ]-&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61m}} 9453-A11&lt;br /&gt;
|| LENOVO || 9453A11 || ThinkPad Z61m || LENOVO || 9453A11 || Not Available || LENOVO || Not Available || LENOVO || 7FET48WW (1.08 ) || 05/26/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;     String 1: IBM ThinkPad Embedded Controller -[7FHT21WW-1.03    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61m}} 9543-A11&lt;br /&gt;
|| LENOVO || 9453A11 || ThinkPad Z61m || LENOVO || 9453A11 || Not Available || LENOVO || Not Available || LENOVO || 7FET53WW (1.13 ) || 07/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT23WW-1.05    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61m}} 9543-A11&lt;br /&gt;
|| LENOVO || 9453A11 || ThinkPad Z61m || LENOVO || 9453A11 || Not Available || LENOVO || Not Available || LENOVO || 7FET93WW (2.11 ) || 11/10/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT26WW-1.08    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61m}} 9453-A11&lt;br /&gt;
|| LENOVO || 9453A11 || ThinkPad Z61m || LENOVO || 9453A11 || Not Available || LENOVO || Not Available || LENOVO || 7FET53WW (1.13 ) || 07/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT23WW-1.05    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61p}} 9453-A12&lt;br /&gt;
|| LENOVO || 9453A12 || ThinkPad Z61p || LENOVO || 9453A12 || Not Available || LENOVO || Not Available || LENOVO || 7FET45WW (1.05 ) || 04/20/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 bytes  String 1: IBM ThinkPad Embedded Controller -[7FHT19WW-1.01    ]-&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61p}} 9450-3AU&lt;br /&gt;
|| LENOVO || 94503AU || ThinkPad Z61p || LENOVO || 94503AU || Not Available || LENOVO || Not Available || LENOVO || 7FET53WW (1.13 ) || 07/27/2006&lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT23WW-1.05    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61t}} 9440-2CU&lt;br /&gt;
|| LENOVO || 94402CU || ThinkPad Z61t || LENOVO || 94402CU || Not Available || LENOVO || Not Available || LENOVO || 7FET50WW (1.10 ) || 06/20/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT22WW-1.04    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61t}} 9443-4GG&lt;br /&gt;
|| LENOVO || 94434GG || ThinkPad Z61t || LENOVO || 94434GG || Not Available || LENOVO || Not Available || LENOVO || 7FET96WW (2.14 ) || 12/25/2006 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte   String 1: IBM ThinkPad Embedded Controller -[7FHT26WW-1.08    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| {{Z61t}} 9440-CTO&lt;br /&gt;
|| LENOVO || 9440CTO || ThinkPad Z61t || LENOVO || 9440CTO || Not Available || LENOVO || Not Available || LENOVO || 7FET99WW (2.17 ) || 04/17/2007 &lt;br /&gt;
|| &amp;lt;nowiki&amp;gt;Handle 0x0026, DMI type 11, 5 byte	String 1: IBM ThinkPad Embedded Controller -[7FHT26WW-1.08    ]-&amp;lt;/nowiki&amp;gt; ||&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Adding entries==&lt;br /&gt;
&lt;br /&gt;
Click the &amp;quot;Edit&amp;quot; link on the appropriate series above and add an entry of the following form:&lt;br /&gt;
:&amp;lt;tt&amp;gt;!-&amp;lt;/tt&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;| &amp;lt;/tt&amp;gt;&amp;lt;i&amp;gt;description of your model&amp;lt;/i&amp;gt;&lt;br /&gt;
:&amp;lt;i&amp;gt;data line 1&amp;lt;/i&amp;gt;&lt;br /&gt;
:&amp;lt;i&amp;gt;data line 2&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where the two data lines are genereated by the following &amp;lt;tt&amp;gt;bash&amp;lt;/tt&amp;gt; command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for X in system-{manufacturer,product-name,version} \&lt;br /&gt;
  baseboard-{manufacturer,product-name,version} \&lt;br /&gt;
  chassis-{manufacturer,version} bios-{vendor,version,release-date}; do \&lt;br /&gt;
  echo -n &amp;quot;|| `sudo /usr/sbin/dmidecode -s $X` &amp;quot;; done; \&lt;br /&gt;
  sudo /usr/sbin/dmidecode | perl -0777 -ne \&lt;br /&gt;
  'm/\n(.*).\n.*\n(.*Embedded Cont.*)\n/i; print &amp;quot;\n|| &amp;lt;nowiki&amp;gt;&amp;lt;&amp;lt;/nowiki&amp;gt;nowiki&amp;gt;$1$2&amp;lt;/nowiki&amp;gt; ||\n&amp;quot;'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While at it, you may also want to test [[tp_smapi]] and update its [[tp_smapi#Model-specific_status|model-specific status table]].&lt;br /&gt;
&lt;br /&gt;
==Software using ThinkPad DMI IDs==&lt;br /&gt;
* [[HDAPS]] driver whitelist&lt;br /&gt;
* [[tp_smapi]] driver whitelist&lt;br /&gt;
* [[ibm-acpi]]/thinkpad-acpi driver quirk list&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=31788</id>
		<title>Installing Ubuntu 6.06 Kubuntu 6.06 Gentoo 2006.0 on a ThinkPad T60p</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Installing_Ubuntu_6.06_Kubuntu_6.06_Gentoo_2006.0_on_a_ThinkPad_T60p&amp;diff=31788"/>
		<updated>2007-08-06T17:16:26Z</updated>

		<summary type="html">&lt;p&gt;Warriorness: Added dual monitor section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:T60p]]&lt;br /&gt;
&lt;br /&gt;
==Installing Ubuntu Dapper==&lt;br /&gt;
&lt;br /&gt;
To get it going:&lt;br /&gt;
&lt;br /&gt;
* Get Dapper i386 (I used the Daily ISO DVD).&lt;br /&gt;
&lt;br /&gt;
* Install the default distribution.&lt;br /&gt;
&lt;br /&gt;
It will work, but you need an SMP kernel, and accelerated and higher resolution graphics, so:&lt;br /&gt;
&lt;br /&gt;
* Install the i686-smp kernel (search for 'linux-kernel' in synaptic).&lt;br /&gt;
&lt;br /&gt;
* Search for fglrx in synaptic, and install the fglrx modules, X driver and ATI control panel.&lt;br /&gt;
&lt;br /&gt;
* Edit /etc/X11/xorg.conf, so each of the &amp;quot;Modeline&amp;quot; entries contains a 1600x1200 resolution as well (or whatever the top resolution of your LCD panel is), and change the driver section as follows:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
     Identifier &amp;quot;ATI Technologies, Inc. ATI Default Card&amp;quot;&lt;br /&gt;
     Driver &amp;quot;fglrx&amp;quot;               &amp;lt;----- ADD THIS LINE&lt;br /&gt;
     #Driver &amp;quot;vesa&amp;quot;               &amp;lt;---- COMMENT OUT THIS LINE&lt;br /&gt;
     BusID &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
     ChipID 0x71c5                &amp;lt;----- '''MAYBE''' ADD THIS LINE&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[On my UXGA t60p the ChipID line was actually fatal to getting fglrx to start up (/var/log/Xorg.0.log showed the driver falling back to VESA and fgl_glxgears would crash).  Without that ChipID line my chip was identified as:&lt;br /&gt;
&lt;br /&gt;
 Chipset: &amp;quot;MOBILITY FireGL V5200 (M56 71C4)&amp;quot; (Chipset = 0x71c4)&lt;br /&gt;
&lt;br /&gt;
which appears to correspond exactly to my machine's spec,  and fgl_glxgears worked fine.]&lt;br /&gt;
&lt;br /&gt;
Reboot, and you should be done. Check &amp;quot;cat /proc/cpuinfo&amp;quot; shows two CPUs, and run fgl_glxgears and check you get around 580 frames a second.&lt;br /&gt;
&lt;br /&gt;
I've reported [https://launchpad.net/distros/ubuntu/+bug/46527 bug 46527] on the lack of screen driver detection, so hopefully this will get even easier.&lt;br /&gt;
&lt;br /&gt;
Note you do NOT need to install ATI drivers from the ATI site. The Ubuntu drivers are sufficient.&lt;br /&gt;
&lt;br /&gt;
Thanks to Rich Tango-Lowy (see below) for the hint re chip detection.&lt;br /&gt;
&lt;br /&gt;
==Kubuntu Dapper Live CD==&lt;br /&gt;
&lt;br /&gt;
If you're trying to install from the Kubuntu Desktop CD, you'll never make it to the login screen because the ATI display driver isn't recognized.&lt;br /&gt;
&lt;br /&gt;
* Ctrl-Alt-F1&lt;br /&gt;
* sudo nano /etc/X11/xorg.conf&lt;br /&gt;
* change the display driver line that looks like:&lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;ati&amp;quot;&lt;br /&gt;
&lt;br /&gt;
to &lt;br /&gt;
&lt;br /&gt;
          Driver    &amp;quot;vesa&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[I think I remember that it was &amp;quot;ati&amp;quot;, but I could be wrong.  In any &lt;br /&gt;
case this is very clearly the only Driver line in the ATI device specification section]&lt;br /&gt;
&lt;br /&gt;
* Save and exit&lt;br /&gt;
* sudo /etc/init.d kdm restart&lt;br /&gt;
&lt;br /&gt;
Now you get a login screen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Installing Gentoo 2006.0 ==&lt;br /&gt;
&lt;br /&gt;
===Boot from Live CD===&lt;br /&gt;
Upon booting off the live cd you will come to the kernel selection prompt.&lt;br /&gt;
Enter:&lt;br /&gt;
    gentoo doscsi&lt;br /&gt;
I had some trouble getting the wired NIC to be linked to the driver, often getting an error that the EEPROM failed a check.  If this happens, you can try re-inserting the module,&lt;br /&gt;
    &amp;gt;rmmod e1000; modprobe e1000&lt;br /&gt;
or rebooting and trying again.  The wireless card isn't supported by the live cd so you're going to have to stick to wired for now.&lt;br /&gt;
&lt;br /&gt;
If you have a T60 with a '''Core 2 Duo''' processor (instead of Core Duo), you have the option of installing a 64-bit linux.  Use an amd64 (called this for historical reasons) install/live cd, and enter this at the boot prompt:&lt;br /&gt;
   gentoo-nofb noapic&lt;br /&gt;
The noapic option is needed on the 2006.1 cd to prevent a crash during boot.  Once you have compiled your own kernel you no longer need it.&lt;br /&gt;
&lt;br /&gt;
===/etc/make.conf Settings===&lt;br /&gt;
The make.conf settings are the first thing you want to setup correctly before you proceed with the rest of the install process. All future updates will depend upon these settings as well. &lt;br /&gt;
If you use a 32-bit profile (x86) use these settings&lt;br /&gt;
 CFLAGS=&amp;quot;-march=prescott -O2 -pipe -msse3 -fomit-frame-pointer&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;fglrx vesa fbdev&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 FEATURES=&amp;quot;sandbox ccache distlocks autoaddcvs parallel-fetch&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
If you use a 64-bit profile (amd64 - Core 2 Duo processors only) use this instead&lt;br /&gt;
 CFLAGS=&amp;quot;-O2 -pipe -march=nocona&amp;quot;&lt;br /&gt;
 MAKEOPTS=&amp;quot;-j3&amp;quot;&lt;br /&gt;
 INPUT_DEVICES=&amp;quot;keyboard mouse synaptics&amp;quot;&lt;br /&gt;
 VIDEO_CARDS=&amp;quot;radeon vesa fbdev&amp;quot;&lt;br /&gt;
For a more complete discussion of the CFLAGS to use for a Core Duo processor, see [http://forums.gentoo.org/viewtopic-t-448761-highlight-core+duo+prescott.html?sid=97485d7e26a1f77e2bb06fa437a448ff this forum thread]. Some users recommend that the USE variable has the ibm value in it (eg. USE=&amp;quot;ibm&amp;quot;) but the Gentoo website says this is only for Power PC64 systems; I don't think we should use it. If anyone can shed more light on this, please update this section.&lt;br /&gt;
&lt;br /&gt;
===Kernel Settings===&lt;br /&gt;
I was able to get the laptop running from i686 gentoo sources and recommend this to anyone installing Gentoo on their T60p. Alot of graphics support is left out of the kernel since the best graphics performance is with ATI's propietary drivers which you can emerge at the end of the kernel compile.&lt;br /&gt;
====Processor type and features====&lt;br /&gt;
* Turn on Symmetric multi-processing support.&lt;br /&gt;
* Set processor family to Pentium M (with the new 2.6.21+ you may choose Core 2/newer Xeon) for the Core Duo or EM64T for the Core 2 Duo with amd64 profile. &lt;br /&gt;
* Turn off toshiba and dell laptop support.&lt;br /&gt;
* Set Maximum number of CPUs to 2 (for obvious reasons, each CPU adds 8kb to the kernel.)&lt;br /&gt;
* Set timer frequency to 1000 Hz since this is a desktop system.&lt;br /&gt;
* Found on a [http://forum.thinkpads.com/viewtopic.php?t=19031 forum posting] that &amp;quot;Hotpluggable CPU&amp;quot; should be set to get acpi sleep to work.  Go figure...&lt;br /&gt;
&lt;br /&gt;
====Power management options====&lt;br /&gt;
* Turn on all ACPI settings (especially IBM Thinkpad Extras) except ASUS/Medion and Toshiba Laptop Extras.     &lt;br /&gt;
  Note: see this entry on ACPI Video for BIOS 2.x and kernels &amp;lt; 2.6.20-rc?&lt;br /&gt;
  http://thinkwiki.org/wiki/Problem_with_LCD_brightness_buttons&lt;br /&gt;
* Turn on CPU Frequency scaling.&lt;br /&gt;
** Turn on powersave, userspace, ondemand and conservative governor.&lt;br /&gt;
** Turn off ACPI Processor P-States driver.&lt;br /&gt;
** Turn off all AMD and Cyrix options.&lt;br /&gt;
** Turn on Intel Enhanced SpeedStep and Intel Speedstep on ICH-M chipsets (ioport interface).&lt;br /&gt;
** Turn off Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface).&lt;br /&gt;
** Turn off Intel Pentium 4 clock modulation, nVidia nForce2 FSB changing and Transmeta LongRun.&lt;br /&gt;
&lt;br /&gt;
====Bus options====&lt;br /&gt;
* Turn on PCI Express support.&lt;br /&gt;
* Turn on Message Signaled Interrupts.&lt;br /&gt;
* Turn on PCCard support and CardBus yenta-compatible bridge support.&lt;br /&gt;
&lt;br /&gt;
====Networking support====&lt;br /&gt;
* Turn off Generic IEEE 802.11 Networking Stack.&lt;br /&gt;
* Turn on IrDA (infrared) subsystem support and sub-options.&lt;br /&gt;
** Ensure you get nsc-ircc&lt;br /&gt;
* Turn on Bluetooth subsystem support and sub-options.&lt;br /&gt;
* Turn off Amateur Radio support (unless you work with actual radios.)&lt;br /&gt;
&lt;br /&gt;
====Device Drivers====&lt;br /&gt;
* Turn off Memory Technology Devices.&lt;br /&gt;
* Turn on ATA/ATAPI/MFM/RLL and Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support.&lt;br /&gt;
* Turn on PNP EIDE and PCI IDE chipset support (PNP EIDE may not be necessary but I haven't tested it)&lt;br /&gt;
** Turn on Include IDE/ATA-2 DISK support&lt;br /&gt;
** Turn on Use multi-mode by default&lt;br /&gt;
** Turn on Include IDE/ATAPI CDROM support&lt;br /&gt;
** Turn on PCI IDE chipset support (not all of the sub-options have been tested but this makes the DVD drive work well)&lt;br /&gt;
*** Turn on Generic PCI IDE Chipset Support&lt;br /&gt;
*** Turn on Generic PCI bus-master DMA support&lt;br /&gt;
*** Turn on Intel PIIXn chipsets support&lt;br /&gt;
* Turn off parallel port support.&lt;br /&gt;
* Turn on SCSI device support.  In &amp;quot;low-level device drivers&amp;quot;, chose the Serial ATA (SATA) support.  Build it as a part of the kernel, and not as a kernel module.&lt;br /&gt;
* Turn off Fusion MPT device support.&lt;br /&gt;
* Turn on IEEE 1394 (FireWire) support.&lt;br /&gt;
* Turn on Network device support.&lt;br /&gt;
** Turn off all options in all categories under Network device support except the stated ones below.&lt;br /&gt;
** Turn on Intel(R) PRO/1000 Gigabit Ethernet support under Ethernet (1000 Mbit).&lt;br /&gt;
** Turn on Wireless LAN drivers (non-hamradio) &amp;amp; Wireless Extensions and none of the sub-options underneath.&lt;br /&gt;
** Most people do not need Fibre channel, ATM, WAN or PPP/SLIP support (if you do then turn it on. PPP is needed for GPRS/UMTS connectivity)&lt;br /&gt;
* Character device options...&lt;br /&gt;
** Serial drivers... [for IrDA]&lt;br /&gt;
*** Set Max 8250/16550 serial ports to (4)&lt;br /&gt;
*** Set Number 8250/16550 serial ports to register at runtime to (1)&lt;br /&gt;
** Turn off Parallel printer support.&lt;br /&gt;
** Turn on Intel HW Random Number Generator support.&lt;br /&gt;
** Turn on /dev/nvram support.&lt;br /&gt;
** Turn off /dev/agpgart (AGP Support).&lt;br /&gt;
** Turn off Direct Rendering Manager.&lt;br /&gt;
** Support for the [[Embedded_Security_Subsystem|Fritz Chip]] is located in &amp;quot;TPM Devices&amp;quot;.&lt;br /&gt;
* Turn on I2C support and Intel 82801 (ICH) hardware bus support.&lt;br /&gt;
* Turn on Hardware Monitoring support and IBM Hard Drive Active Protection System (hdaps).&lt;br /&gt;
* Turn off all Graphics support options except the stated ones below,&lt;br /&gt;
** Turn on VESA VGA graphics support and set VESA driver type to vesafb.&lt;br /&gt;
** Turn on Enable firmware EDID and Enable Video Mode Handling Helpers.&lt;br /&gt;
** Turn on Support for the framebuffer splash.&lt;br /&gt;
* '''IMPORTANT:''' Turn off all Wireless device support under USB support -&amp;gt; USB Network Adapters or you will tear your hair out trying to get wireless.&lt;br /&gt;
* Turn on Sound card support.&lt;br /&gt;
** Turn on Advanced Linux Sound Architecture.&lt;br /&gt;
** Turn off all ISA, PCI, USB, generic and PCMCIA device options except the stated one below.&lt;br /&gt;
** Turn on Intel HD Audio under PCI devices.&lt;br /&gt;
* Turn off all MMC/SD Card support options.&lt;br /&gt;
* Turn off LED devices.&lt;br /&gt;
* Cryptographic options... (needed for the wireless card ipw9345)&lt;br /&gt;
** Turn on AES chiphers&lt;br /&gt;
** Turn on Michael MIC keyed digest algorithm&lt;br /&gt;
&lt;br /&gt;
That should do it. (I know, that's it.)&lt;br /&gt;
That should make sure that you have all the drivers necessary to boot the system and be able to use all your hardware (almost).&lt;br /&gt;
&lt;br /&gt;
===Portage Ebuilds===&lt;br /&gt;
&lt;br /&gt;
Always make sure you run this command before going any further so you can get the latest portage build and version...&lt;br /&gt;
 emerge --sync &amp;amp;&amp;amp; emerge portage&lt;br /&gt;
&lt;br /&gt;
Since September 24 2006 I was able to make the latest ati-drivers work on the T60p without adding any lines to the unmask file (/etc/portage/package.unmask) under the gentoo-sources kernel. You should be able to run...&lt;br /&gt;
 emerge ati-drivers&lt;br /&gt;
...without any problems. If you do have problems compiling, sometimes you may need to try emerging an unstable package. For more information on working with the ATI drivers, check out Gentoo's wiki [http://gentoo-wiki.com/HOWTO_ATI_Drivers| here.]&lt;br /&gt;
&lt;br /&gt;
Don't forget to emerge all the Thinkpad software as well...&lt;br /&gt;
 emerge tpb tp_smapi tpctl&lt;br /&gt;
&lt;br /&gt;
Then you can start to setup the wireless in this order at the command line...&lt;br /&gt;
 /bin/sh /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux&lt;br /&gt;
 emerge ieee80211 ipw3945 ipw3945d wireless-tools&lt;br /&gt;
&lt;br /&gt;
For some reason the wireless driver consists of two parts: the module itself, ipw3949.ko, and some sort of support daemon, ipw3945d. The ebuild updates the modules.conf file to automatically stop and start this deamon when the module is loaded or unloaded, respectively. Check if the following lines are present in /etc/modules.conf (or actually, in /etc/modules.d/ipw3945d - /etc/modules.conf is built from the separate files in /etc/modules.d when you run /sbin/modules-update)&lt;br /&gt;
&lt;br /&gt;
 install ipw3945 /sbin/modprobe --ignore-install ipw3945; sleep 0.5; /sbin/ipw3945d --quiet&lt;br /&gt;
 remove ipw3945 /sbin/ipw3945d --kill; /sbin/modprobe -r --ignore-remove ipw3945&lt;br /&gt;
&lt;br /&gt;
In other words, to load the module, and start the daemon, do&lt;br /&gt;
&lt;br /&gt;
  modprobe ipw3945&lt;br /&gt;
&lt;br /&gt;
To remove the module, and kill the daemon, enter&lt;br /&gt;
&lt;br /&gt;
  modprobe -r ipw3945&lt;br /&gt;
&lt;br /&gt;
'''Note''': rmmod does '''not''' work - it doesn't use /etc/modprobe.conf, and therefore doesn't kill the daemon: while the daemon is running, you cannot unload the module. (You'll get an errormessage saying the module is in use).&lt;br /&gt;
&lt;br /&gt;
If for some reason you need to kill the module manually, use &lt;br /&gt;
&lt;br /&gt;
  /sbin/ipw3945d --kill&lt;br /&gt;
&lt;br /&gt;
Ofcourse the normal 'kill' command also works, but you'll have to remove the pid file /var/run/ipw3945d.pid by hand.&lt;br /&gt;
&lt;br /&gt;
===xorg.conf Settings===&lt;br /&gt;
&lt;br /&gt;
A piece of code is worth a thousand words; here is my xorg.conf that works at 3000-5000 FPS so far. I am still trying to find better parameters, but this is the best I got it to run so far. I intentionally left out the InputDevice section since I disabled my Synaptics pad (I like the center joystick better.) Just modify your xorg.conf sections with what is shown below.&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Module&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dbe&amp;quot;     # Double buffer extension&lt;br /&gt;
        SubSection &amp;quot;extmod&amp;quot;&lt;br /&gt;
        Option      &amp;quot;omit xfree86-dga&amp;quot;   # don't initialise the DGA extension&lt;br /&gt;
        EndSubSection&lt;br /&gt;
        Load  &amp;quot;freetype&amp;quot;&lt;br /&gt;
        Load  &amp;quot;dri&amp;quot;&lt;br /&gt;
        Load  &amp;quot;glx&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;vesa&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;fglrx&amp;quot;&lt;br /&gt;
        VendorName  &amp;quot;ati&amp;quot;&lt;br /&gt;
        #ModelName   &amp;quot;FireGL V5200 (RV530 71DA)&amp;quot;&lt;br /&gt;
        BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VideoOverlay&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;UseFastTLS&amp;quot; &amp;quot;2&amp;quot;&lt;br /&gt;
        Option      &amp;quot;EnablePrivateBackZ&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;dri&amp;quot;&lt;br /&gt;
        Group &amp;quot;video&amp;quot;&lt;br /&gt;
        Mode 0666&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Extensions&amp;quot;&lt;br /&gt;
        Option &amp;quot;XVideo&amp;quot; &amp;quot;Enable&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;Screen&amp;quot;&lt;br /&gt;
        Device     &amp;quot;VideoCard&amp;quot;&lt;br /&gt;
        Monitor    &amp;quot;Monitor&amp;quot;&lt;br /&gt;
        DefaultDepth     24&lt;br /&gt;
        SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
                Viewport  0 0&lt;br /&gt;
                Depth     24&lt;br /&gt;
                Modes    &amp;quot;1280x1024&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot; &amp;quot;640x480&amp;quot;&lt;br /&gt;
        EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Make sure you assign your username to the video group in the /etc/group file or you will net get DRI (Direct Rendering) support. When debugging your running X windows system, always check /var/log/Xorg.0.log for any errors or hints at what may be configured incorrectly. This is how I was able to get so far with the graphics.&lt;br /&gt;
&lt;br /&gt;
====Dual monitors====&lt;br /&gt;
The T60p comes with a nice little VGA-out port on the side, and you may want to use a dual-monitor setup occasionally. Allegedly, using Xinerama with the fglrx driver will incapacitate your 3D rendering, and ATI's BigDesktop seems (at least to me) to be more trouble than it's worth. What I've done is set up Xorg to have two separate Screens, one for each Monitor. You won't be able to drag windows across both screens, and some applications don't like having windows on both monitors, but this approach works painlessly, even with monitors of different resolutions, and you get to keep your 3D rendering! Here are the relevant parts of xorg.conf:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
      Identifier     &amp;quot;Two Screen Layout&amp;quot;&lt;br /&gt;
      Screen          0 &amp;quot;Default Screen&amp;quot; 0 0&lt;br /&gt;
      Screen          1 &amp;quot;External Screen&amp;quot; RightOf &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - first head (internal)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;MonitorLayout&amp;quot; &amp;quot;lvds, auto&amp;quot;&lt;br /&gt;
      Option          &amp;quot;DesktopSetup&amp;quot; &amp;quot;horizontal&amp;quot;&lt;br /&gt;
      Screen          0&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 ## Video card - second head (external)&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Driver          &amp;quot;fglrx&amp;quot;&lt;br /&gt;
      BusID           &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
      Screen          1&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      ## ...&lt;br /&gt;
      Option          &amp;quot;DPMS&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;Default Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 1&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;Generic Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1400x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           ViewPort       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
 &lt;br /&gt;
 Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
      Identifier      &amp;quot;External Screen&amp;quot;&lt;br /&gt;
      Device          &amp;quot;ATI card 2&amp;quot;&lt;br /&gt;
      Monitor         &amp;quot;External Monitor&amp;quot;&lt;br /&gt;
      DefaultDepth    24&lt;br /&gt;
      SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
           Depth          24&lt;br /&gt;
           Modes          &amp;quot;1680x1050&amp;quot; &amp;quot;1024x768&amp;quot; &amp;quot;800x600&amp;quot;&lt;br /&gt;
           Viewport       0 0&lt;br /&gt;
      EndSubSection&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
Note that there are two sections each for the video card (one for each head on the card), monitors, and screens. The laptop's screen is 1400x1050, and my external monitor is 1680x1050. Since it's a laptop, you probably won't be using dual monitors all the time, so it would be best to keep two different configurations (e.g. xorg.conf.one-monitor, xorg.conf.two-monitors), and copy each to /etc/X11/xorg.conf when needed. If you want to see my whole dual-screen xorg.conf, here it is: http://pastebin.ca/647680&lt;br /&gt;
&lt;br /&gt;
==Known Issues==&lt;br /&gt;
[[Problem with e1000: Open issue with latency|Latency issue with e1000 nic]]&lt;br /&gt;
&lt;br /&gt;
==External Sources==&lt;br /&gt;
*[http://arscognita.com/~richtl/T60p/index.html Rich Tango-Lowy's Mandriva 2007 Cooker on T60p page]&lt;br /&gt;
*[http://buzzy.tesuji.org/thinkpad_t60p.html Jon Lin's Gentoo Thinkpad T60p]&lt;br /&gt;
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)].&lt;/div&gt;</summary>
		<author><name>Warriorness</name></author>
		
	</entry>
</feed>