<?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=Zaphod</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=Zaphod"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Zaphod"/>
	<updated>2026-04-17T03:13:32Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=35484</id>
		<title>Problems with SATA and Linux</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=35484"/>
		<updated>2008-01-04T09:54:47Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Spurious NCQ completions */&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;
Some ThinkPad models use an [[Intel ICH6-M]] SATA/PATA controller for the system hard disk. This causes several complications for Linux installation. The following lists these problems and known workarounds. Note that the details are often version- and distribution-specific.&lt;br /&gt;
&lt;br /&gt;
===Models using a SATA disk interface===&lt;br /&gt;
Models using a SATA controller and a SATA system disk:&lt;br /&gt;
*ThinkPad {{R60}}, {{R60e}}, {{R61}}&lt;br /&gt;
*ThinkPad {{T60}}, {{T60p}}, {{T61}}&lt;br /&gt;
*ThinkPad {{X60}}, {{X60s}}, {{X60_Tablet}}, {{X61}}, {{X61s}}, {{X61_Tablet}}&lt;br /&gt;
*ThinkPad {{Z60t}}, {{Z60m}}&lt;br /&gt;
*ThinkPad {{Z61e}}, {{Z61t}}, {{Z61m}}, {{Z61p}}&lt;br /&gt;
Models using a SATA controller and a PATA (IDE) system disk with a SATA-to-PATA bridge:&lt;br /&gt;
*ThinkPad {{T43}}, {{T43p}}&lt;br /&gt;
*ThinkPad {{R52}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Some of these problems (namely SMART support, power management and disk information) are solved in Linux 2.6.15 with the inclusion of libata pass-through. See the SATA driver [http://linux-ata.org/features.html features], [http://linux-ata.org/software-status.html software status] and [http://linux-ata.org/driver-status.html hardware status].}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hang on resume from suspend to RAM==&lt;br /&gt;
&lt;br /&gt;
Linux kernels prior to 2.6.16 (ata_piix) and 2.6.19 (ahci) do not support suspend and resume for SATA devices. As a result, the machine hangs upon the first disk access after resume. A kernel patch ([http://lkml.org/lkml/2005/5/2/46 LKML posting]) fixes this by adding SATA power management support.&lt;br /&gt;
&lt;br /&gt;
Kernel 2.6.16 and later fixes this problem for most systems. The Thinkpad T60 and X60s still need some patches to get resume working using 2.6.16, see [[Talk:Problems with SATA and Linux#Patch against SATA-resume problem with T60|here]]. The T60p resumes properly with 2.6.17-rc6, the T60 and X60 should also.  You need to enable ata_piix and disable AHCI in the bios. The latest fedora (FC5) 2.6.17 kernel seems to have fixed the resume problem on the T60p, still need to disable AHCI though. Applying [http://cvs.fedora.redhat.com/viewcvs/rpms/kernel/FC-5/linux-2.6-console-suspend.patch this FC5 patch] makes suspend-to-ram work with AHCI enabled.&lt;br /&gt;
&lt;br /&gt;
===Patches===&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.12.diff Patch for kernel 2.6.12]&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.13-rc5.diff Patch for kernel 2.6.13-rc5]&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/23/97 Patch for kernel 2.6.14]&lt;br /&gt;
* [http://www.xenotime.net/linux/SATA/2.6.15-rc/libata_suspend.patch Patch for kernel 2.6.15-rc4]&lt;br /&gt;
* [http://tpctl.sourceforge.net/tmp/sata_pm.2.6.15-rc6.patch Patch for kernels 2.6.15-rc6 through 2.6.15]&lt;br /&gt;
&lt;br /&gt;
Some distributions already include this patch (e.g., {{Ubuntu}} Breezy, {{Gentoo}}'s gentoo-sources 2.6.15-r1), but some don't (e.g., {{Fedora}} 4). If your distribution doesn't include the patch, you will need to compile your own kernel with this patch included.&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169201 bug 169201: &amp;quot;SATA drives fail on laptop suspend&amp;quot;]&lt;br /&gt;
* [http://lkml.org/lkml/2005/11/15/385 Fix to libata.h recommended on LKML] in case you get &amp;quot;ata: abnormal state 0x80 on port 0x1F7&amp;quot;&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183138 bug 183138&amp;quot;: &amp;quot;SATA failure after pm-suspend/resume ata1: handling error/timeout&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Failed resume from suspend to disk==&lt;br /&gt;
&lt;br /&gt;
Suspend to disk (using [[swsusp]] or [[Software Suspend 2]]) needs to load the memory image from the SATA disk. For this to work, you either need an initrd with all the necessary SATA modules, or the SATA drivers compiled into the kernel.&lt;br /&gt;
&lt;br /&gt;
==DVD drive not recognized==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; SATA driver grabs ownership over the IDE ports when it is loaded, but (by default) does not support PATA ATAPI devices such as the Ultrabay optical drives. Thus, if the &amp;lt;tt&amp;gt;ide&amp;lt;/tt&amp;gt; driver is compiled as a module and loaded after &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;, the DVD drive will not be recognized by either driver.&lt;br /&gt;
&lt;br /&gt;
Either of the following configurations will work:&lt;br /&gt;
* For kernel 2.6.14 and newer: enable ATAPI support in the SATA system using {{bootparm|libata.atapi_enabled|1}} (see below; this is experimental) (note this is not needed for more recent kernels)&lt;br /&gt;
* Compile IDE into the kernel (non-module).&lt;br /&gt;
* Compile both IDE and SATA as modules and make sure IDE is loaded first (the module is called 'ide_generic').&lt;br /&gt;
&lt;br /&gt;
Note that the optical drive must be in the Ultrabay during system boot (Ultrabay device swapping is currently unsupported).&lt;br /&gt;
&lt;br /&gt;
==No DMA on DVD drive==&lt;br /&gt;
&lt;br /&gt;
Using the IDE driver, DMA support cannot be enabled on an Ultrabay optical drive:&lt;br /&gt;
&lt;br /&gt;
 # hdparm -d1 /dev/hdc&lt;br /&gt;
 &lt;br /&gt;
 /dev/hdc:&lt;br /&gt;
  setting using_dma to 1 (on)&lt;br /&gt;
  HDIO_SET_DMA failed: Operation not permitted&lt;br /&gt;
  using_dma    =  0 (off)&lt;br /&gt;
&lt;br /&gt;
As a result, the optical drive is slow, and in particular, too slow to play video DVDs.&lt;br /&gt;
&lt;br /&gt;
One workaround is to use the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (instead of the IDE driver) for the optical drive. This requires enabling the ATAPI support of the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (which as of 2.6.2x kernels, is working fine but wasn't stable in kernels before 2.6.18). You must also make sure that the IDE driver (&amp;lt;tt&amp;gt;ide-generic&amp;lt;/tt&amp;gt;) does not grab the devices before &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
* Grab a recent kernel (must be 2.6.18 or newer)&lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Enable the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; drivers as built-in,&lt;br /&gt;
** Enable &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; as modules (this is often the default) and add &amp;quot;&amp;lt;tt&amp;gt;options libata atapi_enabled=1&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution). &lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Disable the IDE system.&lt;br /&gt;
** Build the IDE driver as built-in (this is often the default) and add the {{bootparm|hdc|noprobe}} kernel argument (e.g., in in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Build the IDE driver as module and add &amp;quot;&amp;lt;tt&amp;gt;options ide hdc=noprobe&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution).&lt;br /&gt;
* If you chose to use modules above, regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
Note : If you are using a ''Debian Sid'' system, and want to use Debian precompiled kernels, then type the following command in a ''root'' shell (This creates a new &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; with enabled ATAPI support of &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and loads &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; before the IDE driver): &lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
(this is apparently not necessary with newer kernels)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;The following is likely obsolete with recent kernels&amp;lt;/b&amp;gt;&lt;br /&gt;
Note : If your work was successful, your CD-ROM drive will no longer be accessible through /dev/hdc, but /dev/scd0 or /dev/sr0.&lt;br /&gt;
&lt;br /&gt;
If this all doesn't work, use {{cmd|lspci -vn|}} to check whether one of the following chipsets is used in the Thinkpad:&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;
!PCI ID &lt;br /&gt;
!Name&lt;br /&gt;
|-&lt;br /&gt;
|8086:7111&lt;br /&gt;
|Intel 82371AB/EB/MB PIIX4 IDE&lt;br /&gt;
|-&lt;br /&gt;
|8086:24db&lt;br /&gt;
|Intel 82801EB/ER (ICH5/ICH5R) IDE Controller&lt;br /&gt;
|-&lt;br /&gt;
|8086:25a2&lt;br /&gt;
|Intel 6300ESB PATA Storage Controller&lt;br /&gt;
|}&lt;br /&gt;
If yes, enable support for these chipsets has to be enabled by setting&lt;br /&gt;
 #define ATA_ENABLE_PATA&lt;br /&gt;
in {{path|include/linux/libata.h}} (and report your ThinkPad model in the discussion page).&lt;br /&gt;
&lt;br /&gt;
There have been reports that DVD burning doesn't work under this configuration, but it seems to work with kernel 2.6.14 and later (tested on a ThinkPad {{T43}} and {{T43p}} with a [[UltraBay Slim DVD Multi-Burner Plus]]).&lt;br /&gt;
&lt;br /&gt;
===Problem with kernel 2.6.16 kernel and suspend2 2.2.1===&lt;br /&gt;
DVD access fails with kernel 2.6.16.* and [[Software Suspend 2|suspend2]] 2.2.1. Thia is fixed by later versions of suspend2, or by deleting the 4000-libata-rollup-2616-rc3.patch (see &lt;br /&gt;
[http://lists.suspend2.net/lurker/message/20060322.082452.873dc526.en.html this post notice] by Alexander E. Patrakov).&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=163418 bug 163418: &amp;quot;can't enable DMA on DVD drive&amp;quot;]&lt;br /&gt;
* Enabling DMA on a SATA DVD drive, kernel 2.6.18 [http://thomer.com/howtos/dma_on_sata_dvd.html]&lt;br /&gt;
&lt;br /&gt;
==No DMA on system hard disk==&lt;br /&gt;
&lt;br /&gt;
In recent Linux kernels, there are two modules capable of handling the ICH6 disk controller:&lt;br /&gt;
* &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;: the disk shows as {{path|/dev/sda}} and DMA is enabled.&lt;br /&gt;
* Generic IDE driver (&amp;lt;tt&amp;gt;ide-disk&amp;lt;/tt&amp;gt;): the disk shows as {{path|/dev/hda}} and DMA is disabled.&lt;br /&gt;
&lt;br /&gt;
The simplest way to enable DMA is to force the IDE driver to ignore the system hard disk by passing the {{bootparm|hda|noprobe}} and {{bootparm|hda|none}} kernel argument. The driver will then be handled by the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver. Note that this will change its device name to {{path|/dev/sda}} (which may require changes in {{path|/etc/fstab}} and the boot loader) and may cause other problems as listed above.&lt;br /&gt;
&lt;br /&gt;
(Observed on a ThinkPad T43 with Fedora Core kernel 2.6.13-1.1526_FC4.)&lt;br /&gt;
(Observed on a ThinkPad X40 with Debian kernel 2.6.18-4-686.) [[User:Hendry|Hendry]] 20:05, 11 June 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==No SMART support==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support SMART commands (e.g., via smartctl).&lt;br /&gt;
&lt;br /&gt;
The necessary capability is &amp;quot;libata pass-through&amp;quot;, which was incorporated into Linux 2.6.15-rc1 and later. A patch is available for older kernels:&lt;br /&gt;
* Kernel 2.6.12: http://rtr.ca/dell_i9300/kernel/kernel-2.6.12/03_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.13: http://rtr.ca/dell_i9300/kernel/kernel-2.6.13/02_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.14: http://www.foo.fh-furtwangen.de/~koenigr/02_libata_passthru.fixed.again.patch&lt;br /&gt;
* Kernel 2.6.14 with the above suspend-to-RAM patch: http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch&lt;br /&gt;
&lt;br /&gt;
After applying the patch, run smartctl with the &amp;quot;-d ata&amp;quot; parameter:&lt;br /&gt;
:{{cmdroot|smartctl -d ata -a /dev/sda}}&lt;br /&gt;
&lt;br /&gt;
From smartmontools version 5.37 &amp;quot;-d sat&amp;quot; is preferred to &amp;quot;-d ata&amp;quot;. The smartctl command will auto-detect SATA disks so:&lt;br /&gt;
:{{cmdroot|smartctl -a /dev/sda}}&lt;br /&gt;
should just work. The smartd daemon still requires &amp;quot;-d sat&amp;quot; in /etc/smartd.conf .&lt;br /&gt;
&lt;br /&gt;
==No disk power management==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support power management commands on these models.&lt;br /&gt;
&lt;br /&gt;
The above patches for SMART support resolves this, and in particular enables the following commands:&lt;br /&gt;
* {{cmdroot|hdparm -y}} (spin down)&lt;br /&gt;
* {{cmdroot|hdparm -S num}} (automatic spin down timeout)&lt;br /&gt;
* {{cmdroot|hdparm -B num}} (advanced power management level)&lt;br /&gt;
Note that this command is still rejected:&lt;br /&gt;
* {{cmdroot|hdparm -M num}} (acoustic management)&lt;br /&gt;
(Tested with patched kernels 2.6.13.1 and 2.6.12-4 and a 60GB 7200RPM disk model HTS726060M9AT00.)&lt;br /&gt;
&lt;br /&gt;
Refer to [[How to make use of Harddisk Power Management features]] for details about using&lt;br /&gt;
HD power management.  Refer to [[Laptop-mode]] if you are interested into spinning down your HD.&lt;br /&gt;
&lt;br /&gt;
==No disk information==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, on these models the disk information could not be read by the standard commands such as:&lt;br /&gt;
*{{cmdroot|hdparm -i /dev/sda}}&lt;br /&gt;
*{{cmdroot|hdparm -I /dev/sda}}&lt;br /&gt;
The latter is fixed by the above patch for SMART support.&lt;br /&gt;
&lt;br /&gt;
==No swapping of UltraBay device==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver in mainline Linux kernels supports hot-swapping and warm-swapping of PATA and SATA devices. This requires kernel 2.6.18 or newer (with older kernels, you must power off the laptop before swapping such devices). See [[How_to_hotswap_UltraBay_devices#When_using_the_ata_piix_driver|How_to_hotswap_UltraBay_devices]] for further information.&lt;br /&gt;
&lt;br /&gt;
Swapping of the [[UltraBay Slim Battery]] works out-of-the box.&lt;br /&gt;
&lt;br /&gt;
==BIOS error 2010 on user-installed hard disk==&lt;br /&gt;
&lt;br /&gt;
While not a Linux issue, note that there is an issue with installing alternative PATA (IDE) hard disks as the system drive. Unless the disk is one of the few approved disks listed inside the BIOS, you will get an BIOS error 2010 during system boot, and the disk may operate unreliably. See [[Problem with non-ThinkPad hard disks]].&lt;br /&gt;
&lt;br /&gt;
==CompactFlash module doesn't work==&lt;br /&gt;
&lt;br /&gt;
Normally, PATA disks can be replaced with a solid-state [[CompactFlash]] module using a cheap PATA-to-CompactFlash adapter. However, there is a [http://thread.gmane.org/gmane.linux.ide/22400 report] that replacing the system disk with CompactFlash fails on a ThinkPad {{X41}}, possibly due to the SATA-to-PATA bridge. If so, the problem would probably occur also on the {{X41T}}, {{T43}}, {{T43p}} and {{R52}}.&lt;br /&gt;
I (KotCzarny) can confirm that {{X41T}} has this issue. READ is OK, but every attempt to do a WRITE results in timeouts as listed in gmane report. A quick and dirty workaround is to use generic ide driver (not sata one) to disable DMA. You won't get high speeds but at least it will work.&lt;br /&gt;
&lt;br /&gt;
==RHEL3.0 Update 7 on T60p==&lt;br /&gt;
&lt;br /&gt;
RHEL3.0 Update 7 will install on a {{T60p}}, but you need to make an adjustment.  Both uni-processor and SMP kernels get installed, with the SMP kerrnel the default.  However, the SMP kernel can't seem to find the disk drive.  You can work around this by use &amp;quot;e&amp;quot; at the GRUB kernel prompt, then on the &amp;quot;kernel&amp;quot; line appending &amp;quot; noapic&amp;quot;.  After the system boots, you'll want to edit /boot/grub/grub.conf to add the &amp;quot; noapic&amp;quot; option to the kernel line as well.&lt;br /&gt;
&lt;br /&gt;
==Mandriva 2006 on T60==&lt;br /&gt;
&lt;br /&gt;
Mandriva 2006.0 has a problem with SATA on a {{T60}}, to fix this you need to make an adjustment. The install procedure can't seem to find the SATA disk drive, you can work around this by adding the &amp;quot;noapic&amp;quot; kernel option during CD/DVD boot. You *might* need to add this to lilo or GRUB for normal operations, after install completes. The problem with not using apic during normal operations is that you might have problems with power management, please see article on [[Software Suspend 2]]&lt;br /&gt;
&lt;br /&gt;
==Problem burning CD/DVD==&lt;br /&gt;
&lt;br /&gt;
To a CD/DVD problem, try to burn a CD/DVD as &amp;quot;root&amp;quot;-user on command-line with the option &amp;quot;-dummy&amp;quot; and &amp;quot;-v&amp;quot; enabled, do not use K3B or similar. Doing so you will get more informations and waste less CD/DVD's. &lt;br /&gt;
&lt;br /&gt;
Experiment with the parameters &amp;quot;burnfree&amp;quot; and &amp;quot;dev&amp;quot;. With cdrecord on debian etch, burnfree seems not work, disable it. With wodim on debian etch: try parameter &amp;quot;dev=/dev/scd0&amp;quot;, the default &amp;quot;dev=1,0,0&amp;quot; seems not to work.&lt;br /&gt;
&lt;br /&gt;
==Spurious NCQ completions==&lt;br /&gt;
&lt;br /&gt;
It was initially thought the HDD firmware support for NCQ was buggy ([http://lkml.org/lkml/2007/6/6/15 LKML posting] and [http://lkml.org/lkml/2007/6/6/195 LKML posting]).&lt;br /&gt;
It was later found that it was a driver misinterpretation and there is no hardware problem ([http://article.gmane.org/gmane.linux.ide/26012 newsgroup posting]).&lt;br /&gt;
&lt;br /&gt;
If you have an old kernel and get some warnings about spurious NCQ completions, you can safely ignore them. You are advised, anyway, to upgrade to a recent kernel.&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=33072</id>
		<title>Problems with SATA and Linux</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=33072"/>
		<updated>2007-09-12T15:31:05Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Spurious NCQ completions */&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;
Some ThinkPad models use an [[Intel ICH6-M]] SATA/PATA controller for the system hard disk. This causes several complications for Linux installation. The following lists these problems and known workarounds. Note that the details are often version- and distribution-specific.&lt;br /&gt;
&lt;br /&gt;
===Models using a SATA disk interface===&lt;br /&gt;
Models using a SATA controller and a SATA system disk:&lt;br /&gt;
*ThinkPad {{R60}}, {{R60e}}&lt;br /&gt;
*ThinkPad {{T60}}, {{T60p}}, {{T61}}&lt;br /&gt;
*ThinkPad {{X60}}, {{X60s}}, {{X61}}, {{X61s}}, {{X61T}}&lt;br /&gt;
*ThinkPad {{Z60t}}, {{Z60m}}&lt;br /&gt;
*ThinkPad {{Z61e}}, {{Z61t}}, {{Z61m}}, {{Z61p}}&lt;br /&gt;
Models using a SATA controller and a PATA (IDE) system disk with a SATA-to-PATA bridge:&lt;br /&gt;
*ThinkPad {{T43}}, {{T43p}}&lt;br /&gt;
*ThinkPad {{R52}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Some of these problems (namely SMART support, power management and disk information) are solved in Linux 2.6.15 with the inclusion of libata pass-through. See the SATA driver [http://linux-ata.org/features.html features], [http://linux-ata.org/software-status.html software status] and [http://linux-ata.org/driver-status.html hardware status].}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hang on resume from suspend to RAM==&lt;br /&gt;
&lt;br /&gt;
Linux kernels prior to 2.6.16 (ata_piix) and 2.6.19 (ahci) do not support suspend and resume for SATA devices. As a result, the machine hangs upon the first disk access after resume. A kernel patch ([http://lkml.org/lkml/2005/5/2/46 LKML posting]) fixes this by adding SATA power management support.&lt;br /&gt;
&lt;br /&gt;
Kernel 2.6.16 and later fixes this problem for most systems. The Thinkpad T60 and X60s still need some patches to get resume working using 2.6.16, see [[Talk:Problems with SATA and Linux#Patch against SATA-resume problem with T60|here]]. The T60p resumes properly with 2.6.17-rc6, the T60 and X60 should also.  You need to enable ata_piix and disable AHCI in the bios. The latest fedora (FC5) 2.6.17 kernel seems to have fixed the resume problem on the T60p, still need to disable AHCI though. Applying [http://cvs.fedora.redhat.com/viewcvs/rpms/kernel/FC-5/linux-2.6-console-suspend.patch this FC5 patch] makes suspend-to-ram work with AHCI enabled.&lt;br /&gt;
&lt;br /&gt;
===Patches===&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.12.diff Patch for kernel 2.6.12]&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.13-rc5.diff Patch for kernel 2.6.13-rc5]&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/23/97 Patch for kernel 2.6.14]&lt;br /&gt;
* [http://www.xenotime.net/linux/SATA/2.6.15-rc/libata_suspend.patch Patch for kernel 2.6.15-rc4]&lt;br /&gt;
* [http://tpctl.sourceforge.net/tmp/sata_pm.2.6.15-rc6.patch Patch for kernels 2.6.15-rc6 through 2.6.15]&lt;br /&gt;
&lt;br /&gt;
Some distributions already include this patch (e.g., {{Ubuntu}} Breezy, {{Gentoo}}'s gentoo-sources 2.6.15-r1), but some don't (e.g., {{Fedora}} 4). If your distribution doesn't include the patch, you will need to compile your own kernel with this patch included.&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169201 bug 169201: &amp;quot;SATA drives fail on laptop suspend&amp;quot;]&lt;br /&gt;
* [http://lkml.org/lkml/2005/11/15/385 Fix to libata.h recommended on LKML] in case you get &amp;quot;ata: abnormal state 0x80 on port 0x1F7&amp;quot;&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183138 bug 183138&amp;quot;: &amp;quot;SATA failure after pm-suspend/resume ata1: handling error/timeout&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Failed resume from suspend to disk==&lt;br /&gt;
&lt;br /&gt;
Suspend to disk (using [[swsusp]] or [[Software Suspend 2]]) needs to load the memory image from the SATA disk. For this to work, you either need an initrd with all the necessary SATA modules, or the SATA drivers compiled into the kernel.&lt;br /&gt;
&lt;br /&gt;
==DVD drive not recognized==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; SATA driver grabs ownership over the IDE ports when it is loaded, but (by default) does not support PATA ATAPI devices such as the Ultrabay optical drives. Thus, if the &amp;lt;tt&amp;gt;ide&amp;lt;/tt&amp;gt; driver is compiled as a module and loaded after &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;, the DVD drive will not be recognized by either driver.&lt;br /&gt;
&lt;br /&gt;
Either of the following configurations will work:&lt;br /&gt;
* For kernel 2.6.14 and newer: enable ATAPI support in the SATA system using {{bootparm|libata.atapi_enabled|1}} (see below; this is experimental).&lt;br /&gt;
* Compile IDE into the kernel (non-module).&lt;br /&gt;
* Compile both IDE and SATA as modules and make sure IDE is loaded first (the module is called 'ide_generic').&lt;br /&gt;
&lt;br /&gt;
Note that the optical drive must be in the Ultrabay during system boot (Ultrabay device swapping is currently unsupported).&lt;br /&gt;
&lt;br /&gt;
==No DMA on DVD drive==&lt;br /&gt;
&lt;br /&gt;
Using the IDE driver, DMA support cannot be enabled on an Ultrabay optical drive:&lt;br /&gt;
&lt;br /&gt;
 # hdparm -d1 /dev/hdc&lt;br /&gt;
 &lt;br /&gt;
 /dev/hdc:&lt;br /&gt;
  setting using_dma to 1 (on)&lt;br /&gt;
  HDIO_SET_DMA failed: Operation not permitted&lt;br /&gt;
  using_dma    =  0 (off)&lt;br /&gt;
&lt;br /&gt;
As a result, the optical drive is slow, and in particular, too slow to play video DVDs.&lt;br /&gt;
&lt;br /&gt;
One workaround is to use the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (instead of the IDE driver) for the optical drive. This requires enabling the ATAPI support of the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver, which is under active development and not yet stable. You must also make sure that the IDE driver (&amp;lt;tt&amp;gt;ide-generic&amp;lt;/tt&amp;gt;) does not grab the devices before &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;. &lt;br /&gt;
Using this will probably devour all your data and go on to eat all the food in your fridge. But if you have full backups and an empty fridge, do the following:&lt;br /&gt;
&lt;br /&gt;
* Grab the latest kernel (must be 2.6.14 or newer; the relevant code is under active development).&lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Enable the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; drivers as built-in, and add {{bootparm|libata.atapi_enabled|1}} to your kernel command line (e.g., in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Enable &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; as modules (this is often the default) and add &amp;quot;&amp;lt;tt&amp;gt;options libata atapi_enabled=1&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution). &lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Disable the IDE system.&lt;br /&gt;
** Build the IDE driver as built-in (this is often the default) and add the {{bootparm|hdc|noprobe}} kernel argument (e.g., in in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Build the IDE driver as module and add &amp;quot;&amp;lt;tt&amp;gt;options ide hdc=noprobe&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution).&lt;br /&gt;
* If you chose to use modules above, regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
Note : If you are using a ''Debian Sid'' system, and want to use Debian precompiled kernels, then type the following command in a ''root'' shell (This creates a new &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; with enabled ATAPI support of &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and loads &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; before the IDE driver): &lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
Note : If your work was successful, your CD-ROM drive will no longer be accesiible through /dev/hdc, but /dev/scd0.&lt;br /&gt;
&lt;br /&gt;
If this all doesn't work, use {{cmd|lspci -vn|}} to check whether one of the following chipsets is used in the Thinkpad:&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;
!PCI ID &lt;br /&gt;
!Name&lt;br /&gt;
|-&lt;br /&gt;
|8086:7111&lt;br /&gt;
|Intel 82371AB/EB/MB PIIX4 IDE&lt;br /&gt;
|-&lt;br /&gt;
|8086:24db&lt;br /&gt;
|Intel 82801EB/ER (ICH5/ICH5R) IDE Controller&lt;br /&gt;
|-&lt;br /&gt;
|8086:25a2&lt;br /&gt;
|Intel 6300ESB PATA Storage Controller&lt;br /&gt;
|}&lt;br /&gt;
If yes, enable support for these chipsets has to be enabled by setting&lt;br /&gt;
 #define ATA_ENABLE_PATA&lt;br /&gt;
in {{path|include/linux/libata.h}} (and report your ThinkPad model in the discussion page).&lt;br /&gt;
&lt;br /&gt;
There have been reports that DVD burning doesn't work under this configuration, but it seems to work with kernel 2.6.14 and later (tested on a ThinkPad {{T43}} and {{T43p}} with a [[UltraBay Slim DVD Multi-Burner Plus]]).&lt;br /&gt;
&lt;br /&gt;
===Problem with kernel 2.6.16 kernel and suspend2 2.2.1===&lt;br /&gt;
DVD access fails with kernel 2.6.16.* and [[Software Suspend 2|suspend2]] 2.2.1. Thia is fixed by later versions of suspend2, or by deleting the 4000-libata-rollup-2616-rc3.patch (see &lt;br /&gt;
[http://lists.suspend2.net/lurker/message/20060322.082452.873dc526.en.html this post notice] by Alexander E. Patrakov).&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=163418 bug 163418: &amp;quot;can't enable DMA on DVD drive&amp;quot;]&lt;br /&gt;
* Enabling DMA on a SATA DVD drive, kernel 2.6.18 [http://thomer.com/howtos/dma_on_sata_dvd.html]&lt;br /&gt;
&lt;br /&gt;
==No DMA on system hard disk==&lt;br /&gt;
&lt;br /&gt;
In recent Linux kernels, there are two modules capable of handling the ICH6 disk controller:&lt;br /&gt;
* &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;: the disk shows as {{path|/dev/sda}} and DMA is enabled.&lt;br /&gt;
* Generic IDE driver (&amp;lt;tt&amp;gt;ide-disk&amp;lt;/tt&amp;gt;): the disk shows as {{path|/dev/hda}} and DMA is disabled.&lt;br /&gt;
&lt;br /&gt;
The simplest way to enable DMA is to force the IDE driver to ignore the system hard disk by passing the {{bootparm|hda|noprobe}} and {{bootparm|hda|none}} kernel argument. The driver will then be handled by the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver. Note that this will change its device name to {{path|/dev/sda}} (which may require changes in {{path|/etc/fstab}} and the boot loader) and may cause other problems as listed above.&lt;br /&gt;
&lt;br /&gt;
(Observed on a ThinkPad T43 with Fedora Core kernel 2.6.13-1.1526_FC4.)&lt;br /&gt;
(Observed on a ThinkPad X40 with Debian kernel 2.6.18-4-686.) [[User:Hendry|Hendry]] 20:05, 11 June 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==No SMART support==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support SMART commands (e.g., via smartctl).&lt;br /&gt;
&lt;br /&gt;
The necessary capability is &amp;quot;libata pass-through&amp;quot;, which was incorporated into Linux 2.6.15-rc1 and later. A patch is available for older kernels:&lt;br /&gt;
* Kernel 2.6.12: http://rtr.ca/dell_i9300/kernel/kernel-2.6.12/03_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.13: http://rtr.ca/dell_i9300/kernel/kernel-2.6.13/02_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.14: http://www.foo.fh-furtwangen.de/~koenigr/02_libata_passthru.fixed.again.patch&lt;br /&gt;
* Kernel 2.6.14 with the above suspend-to-RAM patch: http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch&lt;br /&gt;
&lt;br /&gt;
After applying the patch, run smartctl with the &amp;quot;-d ata&amp;quot; parameter:&lt;br /&gt;
:{{cmdroot|smartctl -d ata -a /dev/sda}}&lt;br /&gt;
&lt;br /&gt;
From smartmontools version 5.37 &amp;quot;-d sat&amp;quot; is preferred to &amp;quot;-d ata&amp;quot;. The smartctl command will auto-detect SATA disks so:&lt;br /&gt;
:{{cmdroot|smartctl -a /dev/sda}}&lt;br /&gt;
should just work. The smartd daemon still requires &amp;quot;-d sat&amp;quot; in /etc/smartd.conf .&lt;br /&gt;
&lt;br /&gt;
==No disk power management==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support power management commands on these models.&lt;br /&gt;
&lt;br /&gt;
The above patches for SMART support resolves this, and in particular enables the following commands:&lt;br /&gt;
* {{cmdroot|hdparm -y}} (spin down)&lt;br /&gt;
* {{cmdroot|hdparm -S num}} (automatic spin down timeout)&lt;br /&gt;
* {{cmdroot|hdparm -B num}} (advanced power management level)&lt;br /&gt;
Note that this command is still rejected:&lt;br /&gt;
* {{cmdroot|hdparm -M num}} (acoustic management)&lt;br /&gt;
(Tested with patched kernels 2.6.13.1 and 2.6.12-4 and a 60GB 7200RPM disk model HTS726060M9AT00.)&lt;br /&gt;
&lt;br /&gt;
Refer to [[How to make use of Harddisk Power Management features]] for details about using&lt;br /&gt;
HD power management.  Refer to [[Laptop-mode]] if you are interested into spinning down your HD.&lt;br /&gt;
&lt;br /&gt;
==No disk information==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, on these models the disk information could not be read by the standard commands such as:&lt;br /&gt;
*{{cmdroot|hdparm -i /dev/sda}}&lt;br /&gt;
*{{cmdroot|hdparm -I /dev/sda}}&lt;br /&gt;
The latter is fixed by the above patch for SMART support.&lt;br /&gt;
&lt;br /&gt;
==No swapping of UltraBay device==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver in mainline Linux kernels supports hot-swapping and warm-swapping of PATA and SATA devices. This requires kernel 2.6.18 or newer (with older kernels, you must power off the laptop before swapping such devices). See [[How_to_hotswap_UltraBay_devices#When_using_the_ata_piix_driver|How_to_hotswap_UltraBay_devices]] for further information.&lt;br /&gt;
&lt;br /&gt;
Swapping of the [[UltraBay Slim Battery]] works out-of-the box.&lt;br /&gt;
&lt;br /&gt;
==BIOS error 2010 on user-installed hard disk==&lt;br /&gt;
&lt;br /&gt;
While not a Linux issue, note that there is an issue with installing alternative PATA (IDE) hard disks as the system drive. Unless the disk is one of the few approved disks listed inside the BIOS, you will get an BIOS error 2010 during system boot, and the disk may operate unreliably. See [[Problem with non-ThinkPad hard disks]].&lt;br /&gt;
&lt;br /&gt;
==CompactFlash module doesn't work==&lt;br /&gt;
&lt;br /&gt;
Normally, PATA disks can be replaced with a solid-state [[CompactFlash]] module using a cheap PATA-to-CompactFlash adapter. However, there is a [http://thread.gmane.org/gmane.linux.ide/22400 report] that replacing the system disk with CompactFlash fails on a ThinkPad {{X41}}, possibly due to the SATA-to-PATA bridge. If so, the problem would probably occur also on the {{X41T}}, {{T43}}, {{T43p}} and {{R52}}.&lt;br /&gt;
I (KotCzarny) can confirm that {{X41T}} has this issue. READ is OK, but every attempt to do a WRITE results in timeouts as listed in gmane report. A quick and dirty workaround is to use generic ide driver (not sata one) to disable DMA. You won't get high speeds but at least it will work.&lt;br /&gt;
&lt;br /&gt;
==RHEL3.0 Update 7 on T60p==&lt;br /&gt;
&lt;br /&gt;
RHEL3.0 Update 7 will install on a {{T60p}}, but you need to make an adjustment.  Both uni-processor and SMP kernels get installed, with the SMP kerrnel the default.  However, the SMP kernel can't seem to find the disk drive.  You can work around this by use &amp;quot;e&amp;quot; at the GRUB kernel prompt, then on the &amp;quot;kernel&amp;quot; line appending &amp;quot; noapic&amp;quot;.  After the system boots, you'll want to edit /boot/grub/grub.conf to add the &amp;quot; noapic&amp;quot; option to the kernel line as well.&lt;br /&gt;
&lt;br /&gt;
==Mandriva 2006 on T60==&lt;br /&gt;
&lt;br /&gt;
Mandriva 2006.0 has a problem with SATA on a {{T60}}, to fix this you need to make an adjustment. The install procedure can't seem to find the SATA disk drive, you can work around this by adding the &amp;quot;noapic&amp;quot; kernel option during CD/DVD boot. You *might* need to add this to lilo or GRUB for normal operations, after install completes. The problem with not using apic during normal operations is that you might have problems with power management, please see article on [[Software Suspend 2]]&lt;br /&gt;
&lt;br /&gt;
==Problem burning CD/DVD==&lt;br /&gt;
&lt;br /&gt;
To a CD/DVD problem, try to burn a CD/DVD as &amp;quot;root&amp;quot;-user on command-line with the option &amp;quot;-dummy&amp;quot; and &amp;quot;-v&amp;quot; enabled, do not use K3B or similar. Doing so you will get more informations and waste less CD/DVD's. &lt;br /&gt;
&lt;br /&gt;
Experiment with the parameters &amp;quot;burnfree&amp;quot; and &amp;quot;dev&amp;quot;. With cdrecord on debian etch, burnfree seems not work, disable it. With wodim on debian etch: try parameter &amp;quot;dev=/dev/scd0&amp;quot;, the default &amp;quot;dev=1,0,0&amp;quot; seems not to work.&lt;br /&gt;
&lt;br /&gt;
==Spurious NCQ completions==&lt;br /&gt;
&lt;br /&gt;
The HDD firmware support for NCQ appears to be buggy ([http://lkml.org/lkml/2007/6/6/15 LKML posting] and [http://lkml.org/lkml/2007/6/6/195 LKML posting]).&lt;br /&gt;
&lt;br /&gt;
The recent firmware upgrade to version SBDIC7UP ([http://www-307.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&amp;amp;lndocid=MIGR-63685 Lenovo support]), didn't help.&lt;br /&gt;
&lt;br /&gt;
Anyway, after months of keeping NCQ enabled despite this warning, I've had no corruptions. It could be harmless, but you are advised to be careful.&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=33071</id>
		<title>Problems with SATA and Linux</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=33071"/>
		<updated>2007-09-12T15:30:23Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Spurious NCQ completions */&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;
Some ThinkPad models use an [[Intel ICH6-M]] SATA/PATA controller for the system hard disk. This causes several complications for Linux installation. The following lists these problems and known workarounds. Note that the details are often version- and distribution-specific.&lt;br /&gt;
&lt;br /&gt;
===Models using a SATA disk interface===&lt;br /&gt;
Models using a SATA controller and a SATA system disk:&lt;br /&gt;
*ThinkPad {{R60}}, {{R60e}}&lt;br /&gt;
*ThinkPad {{T60}}, {{T60p}}, {{T61}}&lt;br /&gt;
*ThinkPad {{X60}}, {{X60s}}, {{X61}}, {{X61s}}, {{X61T}}&lt;br /&gt;
*ThinkPad {{Z60t}}, {{Z60m}}&lt;br /&gt;
*ThinkPad {{Z61e}}, {{Z61t}}, {{Z61m}}, {{Z61p}}&lt;br /&gt;
Models using a SATA controller and a PATA (IDE) system disk with a SATA-to-PATA bridge:&lt;br /&gt;
*ThinkPad {{T43}}, {{T43p}}&lt;br /&gt;
*ThinkPad {{R52}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Some of these problems (namely SMART support, power management and disk information) are solved in Linux 2.6.15 with the inclusion of libata pass-through. See the SATA driver [http://linux-ata.org/features.html features], [http://linux-ata.org/software-status.html software status] and [http://linux-ata.org/driver-status.html hardware status].}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hang on resume from suspend to RAM==&lt;br /&gt;
&lt;br /&gt;
Linux kernels prior to 2.6.16 (ata_piix) and 2.6.19 (ahci) do not support suspend and resume for SATA devices. As a result, the machine hangs upon the first disk access after resume. A kernel patch ([http://lkml.org/lkml/2005/5/2/46 LKML posting]) fixes this by adding SATA power management support.&lt;br /&gt;
&lt;br /&gt;
Kernel 2.6.16 and later fixes this problem for most systems. The Thinkpad T60 and X60s still need some patches to get resume working using 2.6.16, see [[Talk:Problems with SATA and Linux#Patch against SATA-resume problem with T60|here]]. The T60p resumes properly with 2.6.17-rc6, the T60 and X60 should also.  You need to enable ata_piix and disable AHCI in the bios. The latest fedora (FC5) 2.6.17 kernel seems to have fixed the resume problem on the T60p, still need to disable AHCI though. Applying [http://cvs.fedora.redhat.com/viewcvs/rpms/kernel/FC-5/linux-2.6-console-suspend.patch this FC5 patch] makes suspend-to-ram work with AHCI enabled.&lt;br /&gt;
&lt;br /&gt;
===Patches===&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.12.diff Patch for kernel 2.6.12]&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.13-rc5.diff Patch for kernel 2.6.13-rc5]&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/23/97 Patch for kernel 2.6.14]&lt;br /&gt;
* [http://www.xenotime.net/linux/SATA/2.6.15-rc/libata_suspend.patch Patch for kernel 2.6.15-rc4]&lt;br /&gt;
* [http://tpctl.sourceforge.net/tmp/sata_pm.2.6.15-rc6.patch Patch for kernels 2.6.15-rc6 through 2.6.15]&lt;br /&gt;
&lt;br /&gt;
Some distributions already include this patch (e.g., {{Ubuntu}} Breezy, {{Gentoo}}'s gentoo-sources 2.6.15-r1), but some don't (e.g., {{Fedora}} 4). If your distribution doesn't include the patch, you will need to compile your own kernel with this patch included.&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169201 bug 169201: &amp;quot;SATA drives fail on laptop suspend&amp;quot;]&lt;br /&gt;
* [http://lkml.org/lkml/2005/11/15/385 Fix to libata.h recommended on LKML] in case you get &amp;quot;ata: abnormal state 0x80 on port 0x1F7&amp;quot;&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183138 bug 183138&amp;quot;: &amp;quot;SATA failure after pm-suspend/resume ata1: handling error/timeout&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Failed resume from suspend to disk==&lt;br /&gt;
&lt;br /&gt;
Suspend to disk (using [[swsusp]] or [[Software Suspend 2]]) needs to load the memory image from the SATA disk. For this to work, you either need an initrd with all the necessary SATA modules, or the SATA drivers compiled into the kernel.&lt;br /&gt;
&lt;br /&gt;
==DVD drive not recognized==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; SATA driver grabs ownership over the IDE ports when it is loaded, but (by default) does not support PATA ATAPI devices such as the Ultrabay optical drives. Thus, if the &amp;lt;tt&amp;gt;ide&amp;lt;/tt&amp;gt; driver is compiled as a module and loaded after &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;, the DVD drive will not be recognized by either driver.&lt;br /&gt;
&lt;br /&gt;
Either of the following configurations will work:&lt;br /&gt;
* For kernel 2.6.14 and newer: enable ATAPI support in the SATA system using {{bootparm|libata.atapi_enabled|1}} (see below; this is experimental).&lt;br /&gt;
* Compile IDE into the kernel (non-module).&lt;br /&gt;
* Compile both IDE and SATA as modules and make sure IDE is loaded first (the module is called 'ide_generic').&lt;br /&gt;
&lt;br /&gt;
Note that the optical drive must be in the Ultrabay during system boot (Ultrabay device swapping is currently unsupported).&lt;br /&gt;
&lt;br /&gt;
==No DMA on DVD drive==&lt;br /&gt;
&lt;br /&gt;
Using the IDE driver, DMA support cannot be enabled on an Ultrabay optical drive:&lt;br /&gt;
&lt;br /&gt;
 # hdparm -d1 /dev/hdc&lt;br /&gt;
 &lt;br /&gt;
 /dev/hdc:&lt;br /&gt;
  setting using_dma to 1 (on)&lt;br /&gt;
  HDIO_SET_DMA failed: Operation not permitted&lt;br /&gt;
  using_dma    =  0 (off)&lt;br /&gt;
&lt;br /&gt;
As a result, the optical drive is slow, and in particular, too slow to play video DVDs.&lt;br /&gt;
&lt;br /&gt;
One workaround is to use the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (instead of the IDE driver) for the optical drive. This requires enabling the ATAPI support of the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver, which is under active development and not yet stable. You must also make sure that the IDE driver (&amp;lt;tt&amp;gt;ide-generic&amp;lt;/tt&amp;gt;) does not grab the devices before &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;. &lt;br /&gt;
Using this will probably devour all your data and go on to eat all the food in your fridge. But if you have full backups and an empty fridge, do the following:&lt;br /&gt;
&lt;br /&gt;
* Grab the latest kernel (must be 2.6.14 or newer; the relevant code is under active development).&lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Enable the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; drivers as built-in, and add {{bootparm|libata.atapi_enabled|1}} to your kernel command line (e.g., in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Enable &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; as modules (this is often the default) and add &amp;quot;&amp;lt;tt&amp;gt;options libata atapi_enabled=1&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution). &lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Disable the IDE system.&lt;br /&gt;
** Build the IDE driver as built-in (this is often the default) and add the {{bootparm|hdc|noprobe}} kernel argument (e.g., in in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Build the IDE driver as module and add &amp;quot;&amp;lt;tt&amp;gt;options ide hdc=noprobe&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution).&lt;br /&gt;
* If you chose to use modules above, regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
Note : If you are using a ''Debian Sid'' system, and want to use Debian precompiled kernels, then type the following command in a ''root'' shell (This creates a new &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; with enabled ATAPI support of &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and loads &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; before the IDE driver): &lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
Note : If your work was successful, your CD-ROM drive will no longer be accesiible through /dev/hdc, but /dev/scd0.&lt;br /&gt;
&lt;br /&gt;
If this all doesn't work, use {{cmd|lspci -vn|}} to check whether one of the following chipsets is used in the Thinkpad:&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;
!PCI ID &lt;br /&gt;
!Name&lt;br /&gt;
|-&lt;br /&gt;
|8086:7111&lt;br /&gt;
|Intel 82371AB/EB/MB PIIX4 IDE&lt;br /&gt;
|-&lt;br /&gt;
|8086:24db&lt;br /&gt;
|Intel 82801EB/ER (ICH5/ICH5R) IDE Controller&lt;br /&gt;
|-&lt;br /&gt;
|8086:25a2&lt;br /&gt;
|Intel 6300ESB PATA Storage Controller&lt;br /&gt;
|}&lt;br /&gt;
If yes, enable support for these chipsets has to be enabled by setting&lt;br /&gt;
 #define ATA_ENABLE_PATA&lt;br /&gt;
in {{path|include/linux/libata.h}} (and report your ThinkPad model in the discussion page).&lt;br /&gt;
&lt;br /&gt;
There have been reports that DVD burning doesn't work under this configuration, but it seems to work with kernel 2.6.14 and later (tested on a ThinkPad {{T43}} and {{T43p}} with a [[UltraBay Slim DVD Multi-Burner Plus]]).&lt;br /&gt;
&lt;br /&gt;
===Problem with kernel 2.6.16 kernel and suspend2 2.2.1===&lt;br /&gt;
DVD access fails with kernel 2.6.16.* and [[Software Suspend 2|suspend2]] 2.2.1. Thia is fixed by later versions of suspend2, or by deleting the 4000-libata-rollup-2616-rc3.patch (see &lt;br /&gt;
[http://lists.suspend2.net/lurker/message/20060322.082452.873dc526.en.html this post notice] by Alexander E. Patrakov).&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=163418 bug 163418: &amp;quot;can't enable DMA on DVD drive&amp;quot;]&lt;br /&gt;
* Enabling DMA on a SATA DVD drive, kernel 2.6.18 [http://thomer.com/howtos/dma_on_sata_dvd.html]&lt;br /&gt;
&lt;br /&gt;
==No DMA on system hard disk==&lt;br /&gt;
&lt;br /&gt;
In recent Linux kernels, there are two modules capable of handling the ICH6 disk controller:&lt;br /&gt;
* &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;: the disk shows as {{path|/dev/sda}} and DMA is enabled.&lt;br /&gt;
* Generic IDE driver (&amp;lt;tt&amp;gt;ide-disk&amp;lt;/tt&amp;gt;): the disk shows as {{path|/dev/hda}} and DMA is disabled.&lt;br /&gt;
&lt;br /&gt;
The simplest way to enable DMA is to force the IDE driver to ignore the system hard disk by passing the {{bootparm|hda|noprobe}} and {{bootparm|hda|none}} kernel argument. The driver will then be handled by the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver. Note that this will change its device name to {{path|/dev/sda}} (which may require changes in {{path|/etc/fstab}} and the boot loader) and may cause other problems as listed above.&lt;br /&gt;
&lt;br /&gt;
(Observed on a ThinkPad T43 with Fedora Core kernel 2.6.13-1.1526_FC4.)&lt;br /&gt;
(Observed on a ThinkPad X40 with Debian kernel 2.6.18-4-686.) [[User:Hendry|Hendry]] 20:05, 11 June 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==No SMART support==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support SMART commands (e.g., via smartctl).&lt;br /&gt;
&lt;br /&gt;
The necessary capability is &amp;quot;libata pass-through&amp;quot;, which was incorporated into Linux 2.6.15-rc1 and later. A patch is available for older kernels:&lt;br /&gt;
* Kernel 2.6.12: http://rtr.ca/dell_i9300/kernel/kernel-2.6.12/03_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.13: http://rtr.ca/dell_i9300/kernel/kernel-2.6.13/02_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.14: http://www.foo.fh-furtwangen.de/~koenigr/02_libata_passthru.fixed.again.patch&lt;br /&gt;
* Kernel 2.6.14 with the above suspend-to-RAM patch: http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch&lt;br /&gt;
&lt;br /&gt;
After applying the patch, run smartctl with the &amp;quot;-d ata&amp;quot; parameter:&lt;br /&gt;
:{{cmdroot|smartctl -d ata -a /dev/sda}}&lt;br /&gt;
&lt;br /&gt;
From smartmontools version 5.37 &amp;quot;-d sat&amp;quot; is preferred to &amp;quot;-d ata&amp;quot;. The smartctl command will auto-detect SATA disks so:&lt;br /&gt;
:{{cmdroot|smartctl -a /dev/sda}}&lt;br /&gt;
should just work. The smartd daemon still requires &amp;quot;-d sat&amp;quot; in /etc/smartd.conf .&lt;br /&gt;
&lt;br /&gt;
==No disk power management==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support power management commands on these models.&lt;br /&gt;
&lt;br /&gt;
The above patches for SMART support resolves this, and in particular enables the following commands:&lt;br /&gt;
* {{cmdroot|hdparm -y}} (spin down)&lt;br /&gt;
* {{cmdroot|hdparm -S num}} (automatic spin down timeout)&lt;br /&gt;
* {{cmdroot|hdparm -B num}} (advanced power management level)&lt;br /&gt;
Note that this command is still rejected:&lt;br /&gt;
* {{cmdroot|hdparm -M num}} (acoustic management)&lt;br /&gt;
(Tested with patched kernels 2.6.13.1 and 2.6.12-4 and a 60GB 7200RPM disk model HTS726060M9AT00.)&lt;br /&gt;
&lt;br /&gt;
Refer to [[How to make use of Harddisk Power Management features]] for details about using&lt;br /&gt;
HD power management.  Refer to [[Laptop-mode]] if you are interested into spinning down your HD.&lt;br /&gt;
&lt;br /&gt;
==No disk information==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, on these models the disk information could not be read by the standard commands such as:&lt;br /&gt;
*{{cmdroot|hdparm -i /dev/sda}}&lt;br /&gt;
*{{cmdroot|hdparm -I /dev/sda}}&lt;br /&gt;
The latter is fixed by the above patch for SMART support.&lt;br /&gt;
&lt;br /&gt;
==No swapping of UltraBay device==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver in mainline Linux kernels supports hot-swapping and warm-swapping of PATA and SATA devices. This requires kernel 2.6.18 or newer (with older kernels, you must power off the laptop before swapping such devices). See [[How_to_hotswap_UltraBay_devices#When_using_the_ata_piix_driver|How_to_hotswap_UltraBay_devices]] for further information.&lt;br /&gt;
&lt;br /&gt;
Swapping of the [[UltraBay Slim Battery]] works out-of-the box.&lt;br /&gt;
&lt;br /&gt;
==BIOS error 2010 on user-installed hard disk==&lt;br /&gt;
&lt;br /&gt;
While not a Linux issue, note that there is an issue with installing alternative PATA (IDE) hard disks as the system drive. Unless the disk is one of the few approved disks listed inside the BIOS, you will get an BIOS error 2010 during system boot, and the disk may operate unreliably. See [[Problem with non-ThinkPad hard disks]].&lt;br /&gt;
&lt;br /&gt;
==CompactFlash module doesn't work==&lt;br /&gt;
&lt;br /&gt;
Normally, PATA disks can be replaced with a solid-state [[CompactFlash]] module using a cheap PATA-to-CompactFlash adapter. However, there is a [http://thread.gmane.org/gmane.linux.ide/22400 report] that replacing the system disk with CompactFlash fails on a ThinkPad {{X41}}, possibly due to the SATA-to-PATA bridge. If so, the problem would probably occur also on the {{X41T}}, {{T43}}, {{T43p}} and {{R52}}.&lt;br /&gt;
I (KotCzarny) can confirm that {{X41T}} has this issue. READ is OK, but every attempt to do a WRITE results in timeouts as listed in gmane report. A quick and dirty workaround is to use generic ide driver (not sata one) to disable DMA. You won't get high speeds but at least it will work.&lt;br /&gt;
&lt;br /&gt;
==RHEL3.0 Update 7 on T60p==&lt;br /&gt;
&lt;br /&gt;
RHEL3.0 Update 7 will install on a {{T60p}}, but you need to make an adjustment.  Both uni-processor and SMP kernels get installed, with the SMP kerrnel the default.  However, the SMP kernel can't seem to find the disk drive.  You can work around this by use &amp;quot;e&amp;quot; at the GRUB kernel prompt, then on the &amp;quot;kernel&amp;quot; line appending &amp;quot; noapic&amp;quot;.  After the system boots, you'll want to edit /boot/grub/grub.conf to add the &amp;quot; noapic&amp;quot; option to the kernel line as well.&lt;br /&gt;
&lt;br /&gt;
==Mandriva 2006 on T60==&lt;br /&gt;
&lt;br /&gt;
Mandriva 2006.0 has a problem with SATA on a {{T60}}, to fix this you need to make an adjustment. The install procedure can't seem to find the SATA disk drive, you can work around this by adding the &amp;quot;noapic&amp;quot; kernel option during CD/DVD boot. You *might* need to add this to lilo or GRUB for normal operations, after install completes. The problem with not using apic during normal operations is that you might have problems with power management, please see article on [[Software Suspend 2]]&lt;br /&gt;
&lt;br /&gt;
==Problem burning CD/DVD==&lt;br /&gt;
&lt;br /&gt;
To a CD/DVD problem, try to burn a CD/DVD as &amp;quot;root&amp;quot;-user on command-line with the option &amp;quot;-dummy&amp;quot; and &amp;quot;-v&amp;quot; enabled, do not use K3B or similar. Doing so you will get more informations and waste less CD/DVD's. &lt;br /&gt;
&lt;br /&gt;
Experiment with the parameters &amp;quot;burnfree&amp;quot; and &amp;quot;dev&amp;quot;. With cdrecord on debian etch, burnfree seems not work, disable it. With wodim on debian etch: try parameter &amp;quot;dev=/dev/scd0&amp;quot;, the default &amp;quot;dev=1,0,0&amp;quot; seems not to work.&lt;br /&gt;
&lt;br /&gt;
==Spurious NCQ completions==&lt;br /&gt;
&lt;br /&gt;
The HDD firmware support for NCQ appears to be buggy ([http://lkml.org/lkml/2007/6/6/15 LKML posting] and [http://lkml.org/lkml/2007/6/6/195 LKML posting]).&lt;br /&gt;
&lt;br /&gt;
The recent firmware upgrade to version SBDIC7UP ([http://www-307.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&amp;amp;lndocid=MIGR-63685 Lenovo support]), didn't help.&lt;br /&gt;
&lt;br /&gt;
Anyway, after months of keeping NCQ enabled despite this warning, I've had no corruptions, so it could be harmless, but you are advised to be careful.&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=31085</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=31085"/>
		<updated>2007-07-09T09:21:05Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Patches */&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;
=== 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.  They seem to be replacing the old tool with a new one, so one of the following should work for you:&lt;br /&gt;
:{{cmdroot|opengl-update ati}} or&lt;br /&gt;
:{{cmdroot|eselect opengl set ati}}&lt;br /&gt;
Eselect is new, and still ~x86 (as of the end of 2005), so you may not have it yet.  &amp;lt;tt&amp;gt;opengl-update&amp;lt;/tt&amp;gt; is the old tried-and-true method for managing the symlinks.  If &amp;lt;tt&amp;gt;opengl-update&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;
|{{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;
&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 acclerated 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 now supported with recent Mesa and Xorg &amp;gt; 7 with the open source 3d radeon drivers (if you run debian unstable, you should be all set.)  It works with the [[R300]] / FireGL T2 series as found on the T43p, but noticably slows down the system.  This has made rapid progress in speed with the latest few releases and with kernel 2.6.21, it is finally usable with an R300 based card.  Expect drivers to improve in the future, but it seems that composite does require a very fast video card and system.&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;
&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>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_fglrx&amp;diff=30816</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=30816"/>
		<updated>2007-06-28T18:35:46Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Troubles using software suspend */&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;
=== 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;
=== 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.  They seem to be replacing the old tool with a new one, so one of the following should work for you:&lt;br /&gt;
:{{cmdroot|opengl-update ati}} or&lt;br /&gt;
:{{cmdroot|eselect opengl set ati}}&lt;br /&gt;
Eselect is new, and still ~x86 (as of the end of 2005), so you may not have it yet.  &amp;lt;tt&amp;gt;opengl-update&amp;lt;/tt&amp;gt; is the old tried-and-true method for managing the symlinks.  If &amp;lt;tt&amp;gt;opengl-update&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;
|{{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;
&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 acclerated 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 now supported with recent Mesa and Xorg &amp;gt; 7 with the open source 3d radeon drivers (if you run debian unstable, you should be all set.)  It works with the [[R300]] / FireGL T2 series as found on the T43p, but noticably slows down the system.  This has made rapid progress in speed with the latest few releases and with kernel 2.6.21, it is finally usable with an R300 based card.  Expect drivers to improve in the future, but it seems that composite does require a very fast video card and system.&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;
== 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.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>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=ATI_Mobility_Radeon_X1400&amp;diff=30618</id>
		<title>ATI Mobility Radeon X1400</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=ATI_Mobility_Radeon_X1400&amp;diff=30618"/>
		<updated>2007-06-23T08:33:05Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: suspend2 trick&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== ATI Mobility Radeon X1400 ===&lt;br /&gt;
This is an ATI video adapter.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Chipset: ATI M54&lt;br /&gt;
* PCI ID: 1002:7145&lt;br /&gt;
* PCI Express x16&lt;br /&gt;
* 128MB GDDR1 video memory&lt;br /&gt;
* Up to 512Mb HyperMemory - ATI's name for their GPUs that utilise shared and dedicated memory.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
Not Supported&lt;br /&gt;
&lt;br /&gt;
==== ThinkPad LCD ====&lt;br /&gt;
Display on the internal LCD works as long as you set the monitor settings correct.&lt;br /&gt;
&lt;br /&gt;
==== External VGA port ====&lt;br /&gt;
({{Z61m}}): Works, but only if the X-server detects something plugged in here, eg. before X started or after a restart.&lt;br /&gt;
&lt;br /&gt;
==== SVideo port ====&lt;br /&gt;
??&lt;br /&gt;
&lt;br /&gt;
==== DVI port ====&lt;br /&gt;
??&lt;br /&gt;
&lt;br /&gt;
=== Linux X.org vesa driver ===&lt;br /&gt;
&lt;br /&gt;
The vesa driver works out of the box.  If you can't make it to show higher resolutions, you may try to use lower color depth -- the best fonts sizes on 15.4 widescreen were achieved with 1400x1050 at 16 depth (highcolor).&lt;br /&gt;
&lt;br /&gt;
=== Proprietary ATI driver ===&lt;br /&gt;
Proprietary [[fglrx]] driver version 8.24.8 adds support for the x1400 chipset (according to ATI changelog). It works, including dualhead, 3d and video (XV) acceleration, when using the fglrx kernel module. (Without it, you get screen corruption including underlined mouse pointers.)&lt;br /&gt;
&lt;br /&gt;
Sample &amp;quot;Device&amp;quot; section for xorg.conf:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;ATI Graphics Adapter 0&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;fglrx&amp;quot;&lt;br /&gt;
        Option      &amp;quot;ForceMonitors&amp;quot; &amp;quot;lvds,crt1&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Centermode&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VideoOverlay&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;OpenGLOverlay&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;OverlayOnCRTC2&amp;quot; &amp;quot;0&amp;quot;&lt;br /&gt;
        Option      &amp;quot;PseudoColorVisuals&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;HSync2&amp;quot; &amp;quot;31-64&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VRefresh2&amp;quot; &amp;quot;56-75&amp;quot;&lt;br /&gt;
        Option      &amp;quot;UseFastTLS&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Mode2&amp;quot; &amp;quot;1280x1024,1024x768,800x600,640x480&amp;quot;&lt;br /&gt;
        BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
XVideo support using the VideoOverlay option may not work with recent drivers. With version 8.29.6 of the fglrx driver, you can instead use&lt;br /&gt;
&lt;br /&gt;
        Option          &amp;quot;TexturedVideo&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Use the '''xvinfo''' utility to verify if XVideo support is available.&lt;br /&gt;
&lt;br /&gt;
==== Proprietary ATI driver on Ubuntu Feisty ====&lt;br /&gt;
On my Lenovo R60 (9641HYM) I had a similar system hang (on return from sleep) as described on the  [[ATI_Mobility_FireGL_V5200]] , and a similar fix (Step 3) seemed to get my laptop to wake up safely.&lt;br /&gt;
&lt;br /&gt;
That fix is to edit /etc/default/acpi-support. Change the line POST_VIDEO=true to read POST_VIDEO=. &lt;br /&gt;
&lt;br /&gt;
==== Proprietary ATI driver and suspend2 ====&lt;br /&gt;
It works perfetctly, but you need to set this parameter:&lt;br /&gt;
  echo 20000 &amp;gt;/sys/power/suspend2/extra_pages_allowance&lt;br /&gt;
&lt;br /&gt;
=== Linux kernel Framebuffer driver ===&lt;br /&gt;
Works with the VESA driver at 1280x1024 (you have to append {{bootparm|vga|794}} to the kernel boot parameters). Does not work wirh vesa-tng at more than 1024x768 :(&lt;br /&gt;
&lt;br /&gt;
=== ThinkPads this chip may be found in ===&lt;br /&gt;
* {{T60}}&lt;br /&gt;
* {{Z61m}}&lt;br /&gt;
* {{R60}} - Lenovo R60 contains X1400 chipset&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=ATI_Mobility_Radeon_X1400&amp;diff=30617</id>
		<title>ATI Mobility Radeon X1400</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=ATI_Mobility_Radeon_X1400&amp;diff=30617"/>
		<updated>2007-06-23T08:31:09Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== ATI Mobility Radeon X1400 ===&lt;br /&gt;
This is an ATI video adapter.&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Chipset: ATI M54&lt;br /&gt;
* PCI ID: 1002:7145&lt;br /&gt;
* PCI Express x16&lt;br /&gt;
* 128MB GDDR1 video memory&lt;br /&gt;
* Up to 512Mb HyperMemory - ATI's name for their GPUs that utilise shared and dedicated memory.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Linux X.Org driver ===&lt;br /&gt;
Not Supported&lt;br /&gt;
&lt;br /&gt;
==== ThinkPad LCD ====&lt;br /&gt;
Display on the internal LCD works as long as you set the monitor settings correct.&lt;br /&gt;
&lt;br /&gt;
==== External VGA port ====&lt;br /&gt;
({{Z61m}}): Works, but only if the X-server detects something plugged in here, eg. before X started or after a restart.&lt;br /&gt;
&lt;br /&gt;
==== SVideo port ====&lt;br /&gt;
??&lt;br /&gt;
&lt;br /&gt;
==== DVI port ====&lt;br /&gt;
??&lt;br /&gt;
&lt;br /&gt;
=== Linux X.org vesa driver ===&lt;br /&gt;
&lt;br /&gt;
The vesa driver works out of the box.  If you can't make it to show higher resolutions, you may try to use lower color depth -- the best fonts sizes on 15.4 widescreen were achieved with 1400x1050 at 16 depth (highcolor).&lt;br /&gt;
&lt;br /&gt;
=== Proprietary ATI driver ===&lt;br /&gt;
Proprietary [[fglrx]] driver version 8.24.8 adds support for the x1400 chipset (according to ATI changelog). It works, including dualhead, 3d and video (XV) acceleration, when using the fglrx kernel module. (Without it, you get screen corruption including underlined mouse pointers.)&lt;br /&gt;
&lt;br /&gt;
Sample &amp;quot;Device&amp;quot; section for xorg.conf:&lt;br /&gt;
&lt;br /&gt;
 Section &amp;quot;Device&amp;quot;&lt;br /&gt;
        Identifier  &amp;quot;ATI Graphics Adapter 0&amp;quot;&lt;br /&gt;
        Driver      &amp;quot;fglrx&amp;quot;&lt;br /&gt;
        Option      &amp;quot;ForceMonitors&amp;quot; &amp;quot;lvds,crt1&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Centermode&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VideoOverlay&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
        Option      &amp;quot;OpenGLOverlay&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;OverlayOnCRTC2&amp;quot; &amp;quot;0&amp;quot;&lt;br /&gt;
        Option      &amp;quot;PseudoColorVisuals&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;HSync2&amp;quot; &amp;quot;31-64&amp;quot;&lt;br /&gt;
        Option      &amp;quot;VRefresh2&amp;quot; &amp;quot;56-75&amp;quot;&lt;br /&gt;
        Option      &amp;quot;UseFastTLS&amp;quot; &amp;quot;off&amp;quot;&lt;br /&gt;
        Option      &amp;quot;Mode2&amp;quot; &amp;quot;1280x1024,1024x768,800x600,640x480&amp;quot;&lt;br /&gt;
        BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
 EndSection&lt;br /&gt;
&lt;br /&gt;
XVideo support using the VideoOverlay option may not work with recent drivers. With version 8.29.6 of the fglrx driver, you can instead use&lt;br /&gt;
&lt;br /&gt;
        Option          &amp;quot;TexturedVideo&amp;quot; &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Use the '''xvinfo''' utility to verify if XVideo support is available.&lt;br /&gt;
&lt;br /&gt;
==== Proprietary ATI driver on Ubuntu Feisty ====&lt;br /&gt;
On my Lenovo R60 (9641HYM) I had a similar system hang (on return from sleep) as described on the  [[ATI_Mobility_FireGL_V5200]] , and a similar fix (Step 3) seemed to get my laptop to wake up safely.&lt;br /&gt;
&lt;br /&gt;
That fix is to edit /etc/default/acpi-support. Change the line POST_VIDEO=true to read POST_VIDEO=. &lt;br /&gt;
&lt;br /&gt;
=== Linux kernel Framebuffer driver ===&lt;br /&gt;
Works with the VESA driver at 1280x1024 (you have to append {{bootparm|vga|794}} to the kernel boot parameters). Does not work wirh vesa-tng at more than 1024x768 :(&lt;br /&gt;
&lt;br /&gt;
=== ThinkPads this chip may be found in ===&lt;br /&gt;
* {{T60}}&lt;br /&gt;
* {{Z61m}}&lt;br /&gt;
* {{R60}} - Lenovo R60 contains X1400 chipset&lt;br /&gt;
&lt;br /&gt;
[[Category:Components]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30560</id>
		<title>Category:Z61m</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30560"/>
		<updated>2007-06-19T08:43:52Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Standard Features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== ThinkPad Z61m ===&lt;br /&gt;
This pages gives an overview of all ThinkPad Z61m related topics.&lt;br /&gt;
==== Standard Features ====&lt;br /&gt;
* One of the following processors:&lt;br /&gt;
** [[Intel Core 2 Duo]] T7200 2.0 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T5500 1,66 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T7200 2,00 Ghz CPU (EM64T)&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2300e 1.66 GHz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2500 2.0 GHz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1300 1.66 Ghz CPU&lt;br /&gt;
* One of the following video controllers:&lt;br /&gt;
** [[Intel Graphics Media Accelerator 950]]&lt;br /&gt;
** [[ATI Mobility Radeon X1300]] (64 MB)&lt;br /&gt;
** [[ATI Mobility Radeon X1400]] (128 MB)&lt;br /&gt;
* One of the following displays:&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution (MaxBright)&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WSXGA+ 1680x1050 resolution&lt;br /&gt;
* 256 MB, 512 MB or 1 GB [[PC2-5300]] memory standard upgradable to 3 GB (2 slots)&lt;br /&gt;
* 40, 60, 80, 100, 120GB 5400RPM SATA HDD or 100, 120GB 7200 RPM SATA HDD&lt;br /&gt;
* [[AD1981HD]] HD Audio 1.0 controller with 2 speakers&lt;br /&gt;
* [[UltraBay|UltraBay Enhanced]] with one of the following:&lt;br /&gt;
** DVD-ROM/CD-RW Combo&lt;br /&gt;
** DVD±RW DL [Matshita DVD-RAM UJ-850]&lt;br /&gt;
* Ethernet Controller:&lt;br /&gt;
** [[Ethernet Controllers#Intel Gigabit (10/100/1000)|Intel Gigabit Ethernet Controller]]&lt;br /&gt;
** [[Ethernet Controllers#Broadcom Nextreme Gigabit (10/100/1000)|Broadcom Gigabit Ethernet Controller]]&lt;br /&gt;
* [[CDC slot]] (1) with a [[ThinkPad 56K Modem (MDC-1.5)]]&lt;br /&gt;
* [[CDC slot]] (2) with a [[ThinkPad Bluetooth with Enhanced Data Rate (BDC-2)]] on select systems&lt;br /&gt;
* [[MiniPCI slot]] with one of the following:&lt;br /&gt;
** [[Intel PRO/Wireless 3945ABG Mini-PCI Express Adapter]]&lt;br /&gt;
** [[ThinkPad 11a/b/g Wireless LAN Mini Express Adapter]]&lt;br /&gt;
* [[MiniPCI Express slot]] with one of the following:&lt;br /&gt;
** none (empty)&lt;br /&gt;
** [[Verizon 1xEV-DO WWAN]]&lt;br /&gt;
* [[Embedded Security Subsystem|IBM Embedded Security Subsystem 2.0]]&lt;br /&gt;
* [[Active Protection System|IBM Active Protection System]]&lt;br /&gt;
* [[Integrated Fingerprint Reader]] on select systems&lt;br /&gt;
* [[UltraNav]]&lt;br /&gt;
* IEEE1394 (Firewire)&lt;br /&gt;
* 4-in-1 digital media reader ([[SD Card slot|MultiMedia Card]], [[MS Card slot|MemoryStick]], [[SD Card slot|SD]])&lt;br /&gt;
* [[CardBus slot]] (Type 2)&lt;br /&gt;
* [[ExpressCard slot|ExpressCard/54 slot]]&lt;br /&gt;
* [[Intergrated Camera - Optional only with X1400 and 15.4-1680x1050 screen]]&lt;br /&gt;
&lt;br /&gt;
==== Weight &amp;amp; Dimensions ====&lt;br /&gt;
These may vary depending on exact specifications&lt;br /&gt;
357 x 262.5 x 37.3 - 40.2mm (14.0&amp;quot; x 10.3&amp;quot; x 1.4-1.5&amp;quot;)&lt;br /&gt;
2.7kg (5.94lb)/2.9kg (6.33 lb) with optical drive&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
[[image:ThinkPadZ60m.jpg|ThinkPad Z61m]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reviews ====&lt;br /&gt;
* [http://www.pcmag.com/article2/0,1895,1962609,00.asp PCMag.com], 2006-05-16&lt;br /&gt;
&lt;br /&gt;
[[Category:Z Series]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Tifm&amp;diff=30553</id>
		<title>Tifm</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Tifm&amp;diff=30553"/>
		<updated>2007-06-18T23:09:03Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Problem with kernel preemption */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This refers to a collection of drivers for the Texas Instruments PCIxx12 controller.  This hardware is present in the ThinkPad Z series.  Support for this hardware is still in its early stages.&lt;br /&gt;
&lt;br /&gt;
=== Project Homepage / Availability ===&lt;br /&gt;
* Homepage: http://developer.berlios.de/projects/tifmxx&lt;br /&gt;
* SVN Repository: http://svn.berlios.de/wsvn/tifmxx/trunk/driver/?rev=0&amp;amp;sc=0&lt;br /&gt;
&lt;br /&gt;
=== Status ===&lt;br /&gt;
There are three distinct driver modules involved:  tifm_core, tifm_sd, and tifm_7xx1.  In addition, the standard kernel driver sdhci {{kernelconf|CONFIG_MMC_SDHCI||||||}} is also required, which is present in kernels 2.6.17 and later.&lt;br /&gt;
&lt;br /&gt;
Earlier versions of the tifm driver are present in official kernel tarballs, but these lag behind the latest releases from the project homepage, and still generate various warnings and/or errors.  You will want version 0.8.0, or the latest SVN version, which are much better behaved.&lt;br /&gt;
&lt;br /&gt;
The tifm driver releases are tied to specific kernel versions.  As of this writing, tifm version 0.8d is intended for kernel 2.6.20, and 0.8e for kernel 2.6.21.  Note carefully which version you download and ensure it is the correct version for your kernel.&lt;br /&gt;
&lt;br /&gt;
=== Problems ===&lt;br /&gt;
==== Problem with Suspend ====&lt;br /&gt;
As of version 0.8.0, the driver breaks suspend-to-RAM.  The system will hang in the middle of the suspend operation, and you will need to cycle power to recover the system.&lt;br /&gt;
&lt;br /&gt;
The driver modules tifm_sd, tifm_7xx1, and tifm_core must be unloaded before attempting suspend-to-RAM.&lt;br /&gt;
&lt;br /&gt;
==== Problem with kernel preemption ====&lt;br /&gt;
As of kernel version 2.6.21.5, this driver hits a bug if you compile it with kernel preemption.&lt;br /&gt;
&lt;br /&gt;
  kernel: tifm_7xx1: sd card detected in socket 1&lt;br /&gt;
  kernel: PM: Adding info for tifm:tifm_sd0:1&lt;br /&gt;
  kernel: tifm_7xx1: demand removing card from socket 1&lt;br /&gt;
  kernel: PM: Removing info for tifm:tifm_sd0:1&lt;br /&gt;
  kernel: BUG: scheduling while atomic: tifm/0/0xffffffff/2371&lt;br /&gt;
&lt;br /&gt;
Voluntary preemption is fine.&lt;br /&gt;
&lt;br /&gt;
[[Category:Drivers]]&lt;br /&gt;
[[Category:Z Series]] [[Category:Z61t]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Tifm&amp;diff=30552</id>
		<title>Tifm</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Tifm&amp;diff=30552"/>
		<updated>2007-06-18T23:07:21Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Problems */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This refers to a collection of drivers for the Texas Instruments PCIxx12 controller.  This hardware is present in the ThinkPad Z series.  Support for this hardware is still in its early stages.&lt;br /&gt;
&lt;br /&gt;
=== Project Homepage / Availability ===&lt;br /&gt;
* Homepage: http://developer.berlios.de/projects/tifmxx&lt;br /&gt;
* SVN Repository: http://svn.berlios.de/wsvn/tifmxx/trunk/driver/?rev=0&amp;amp;sc=0&lt;br /&gt;
&lt;br /&gt;
=== Status ===&lt;br /&gt;
There are three distinct driver modules involved:  tifm_core, tifm_sd, and tifm_7xx1.  In addition, the standard kernel driver sdhci {{kernelconf|CONFIG_MMC_SDHCI||||||}} is also required, which is present in kernels 2.6.17 and later.&lt;br /&gt;
&lt;br /&gt;
Earlier versions of the tifm driver are present in official kernel tarballs, but these lag behind the latest releases from the project homepage, and still generate various warnings and/or errors.  You will want version 0.8.0, or the latest SVN version, which are much better behaved.&lt;br /&gt;
&lt;br /&gt;
The tifm driver releases are tied to specific kernel versions.  As of this writing, tifm version 0.8d is intended for kernel 2.6.20, and 0.8e for kernel 2.6.21.  Note carefully which version you download and ensure it is the correct version for your kernel.&lt;br /&gt;
&lt;br /&gt;
=== Problems ===&lt;br /&gt;
==== Problem with Suspend ====&lt;br /&gt;
As of version 0.8.0, the driver breaks suspend-to-RAM.  The system will hang in the middle of the suspend operation, and you will need to cycle power to recover the system.&lt;br /&gt;
&lt;br /&gt;
The driver modules tifm_sd, tifm_7xx1, and tifm_core must be unloaded before attempting suspend-to-RAM.&lt;br /&gt;
&lt;br /&gt;
==== Problem with kernel preemption ====&lt;br /&gt;
As of kernel version 2.6.21.5, this driver hits a bug if you compile it with kernel preemption.&lt;br /&gt;
&lt;br /&gt;
kernel: tifm_7xx1: sd card detected in socket 1&lt;br /&gt;
kernel: PM: Adding info for tifm:tifm_sd0:1&lt;br /&gt;
kernel: tifm_7xx1: demand removing card from socket 1&lt;br /&gt;
kernel: PM: Removing info for tifm:tifm_sd0:1&lt;br /&gt;
kernel: BUG: scheduling while atomic: tifm/0/0xffffffff/2371&lt;br /&gt;
&lt;br /&gt;
Voluntary preemption is fine.&lt;br /&gt;
&lt;br /&gt;
[[Category:Drivers]]&lt;br /&gt;
[[Category:Z Series]] [[Category:Z61t]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=30551</id>
		<title>Problems with SATA and Linux</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=30551"/>
		<updated>2007-06-18T22:54:59Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Spurious NCQ completions */&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;
Some ThinkPad models use an [[Intel ICH6-M]] SATA/PATA controller for the system hard disk. This causes several complications for Linux installation. The following lists these problems and known workarounds. Note that the details are often version- and distribution-specific.&lt;br /&gt;
&lt;br /&gt;
===Models using a SATA disk interface===&lt;br /&gt;
Models using a SATA controller and a SATA system disk:&lt;br /&gt;
*ThinkPad {{R60}}, {{R60e}}&lt;br /&gt;
*ThinkPad {{T60}}, {{T60p}}&lt;br /&gt;
*ThinkPad {{X60}}, {{X60s}}&lt;br /&gt;
*ThinkPad {{Z60t}}, {{Z60m}}&lt;br /&gt;
*ThinkPad {{Z61e}}, {{Z61t}}, {{Z61m}}&lt;br /&gt;
Models using a SATA controller and a PATA (IDE) system disk with a SATA-to-PATA bridge:&lt;br /&gt;
*ThinkPad {{T43}}, {{T43p}}&lt;br /&gt;
*ThinkPad {{R52}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Some of these problems (namely SMART support, power management and disk information) are solved in Linux 2.6.15 with the inclusion of libata pass-through. See the SATA driver [http://linux-ata.org/features.html features], [http://linux-ata.org/software-status.html software status] and [http://linux-ata.org/driver-status.html hardware status].}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hang on resume from suspend to RAM==&lt;br /&gt;
&lt;br /&gt;
Linux kernels prior to 2.6.16 (ata_piix) and 2.6.19 (ahci) do not support suspend and resume for SATA devices. As a result, the machine hangs upon the first disk access after resume. A kernel patch ([http://lkml.org/lkml/2005/5/2/46 LKML posting]) fixes this by adding SATA power management support.&lt;br /&gt;
&lt;br /&gt;
Kernel 2.6.16 and later fixes this problem for most systems. The Thinkpad T60 and X60s still need some patches to get resume working using 2.6.16, see [[Talk:Problems with SATA and Linux#Patch against SATA-resume problem with T60|here]]. The T60p resumes properly with 2.6.17-rc6, the T60 and X60 should also.  You need to enable ata_piix and disable AHCI in the bios. The latest fedora (FC5) 2.6.17 kernel seems to have fixed the resume problem on the T60p, still need to disable AHCI though. Applying [http://cvs.fedora.redhat.com/viewcvs/rpms/kernel/FC-5/linux-2.6-console-suspend.patch this FC5 patch] makes suspend-to-ram work with AHCI enabled.&lt;br /&gt;
&lt;br /&gt;
===Patches===&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.12.diff Patch for kernel 2.6.12]&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.13-rc5.diff Patch for kernel 2.6.13-rc5]&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/23/97 Patch for kernel 2.6.14]&lt;br /&gt;
* [http://www.xenotime.net/linux/SATA/2.6.15-rc/libata_suspend.patch Patch for kernel 2.6.15-rc4]&lt;br /&gt;
* [http://tpctl.sourceforge.net/tmp/sata_pm.2.6.15-rc6.patch Patch for kernels 2.6.15-rc6 through 2.6.15]&lt;br /&gt;
&lt;br /&gt;
Some distributions already include this patch (e.g., {{Ubuntu}} Breezy, {{Gentoo}}'s gentoo-sources 2.6.15-r1), but some don't (e.g., {{Fedora}} 4). If your distribution doesn't include the patch, you will need to compile your own kernel with this patch included.&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169201 bug 169201: &amp;quot;SATA drives fail on laptop suspend&amp;quot;]&lt;br /&gt;
* [http://lkml.org/lkml/2005/11/15/385 Fix to libata.h recommended on LKML] in case you get &amp;quot;ata: abnormal state 0x80 on port 0x1F7&amp;quot;&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183138 bug 183138&amp;quot;: &amp;quot;SATA failure after pm-suspend/resume ata1: handling error/timeout&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Failed resume from suspend to disk==&lt;br /&gt;
&lt;br /&gt;
Suspend to disk (using [[swsusp]] or [[Software Suspend 2]]) needs to load the memory image from the SATA disk. For this to work, you either need an initrd with all the necessary SATA modules, or the SATA drivers compiled into the kernel.&lt;br /&gt;
&lt;br /&gt;
==DVD drive not recognized==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; SATA driver grabs ownership over the IDE ports when it is loaded, but (by default) does not support PATA ATAPI devices such as the Ultrabay optical drives. Thus, if the &amp;lt;tt&amp;gt;ide&amp;lt;/tt&amp;gt; driver is compiled as a module and loaded after &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;, the DVD drive will not be recognized by either driver.&lt;br /&gt;
&lt;br /&gt;
Either of the following configurations will work:&lt;br /&gt;
* For kernel 2.6.14 and newer: enable ATAPI support in the SATA system using {{bootparm|libata.atapi_enabled|1}} (see below; this is experimental).&lt;br /&gt;
* Compile IDE into the kernel (non-module).&lt;br /&gt;
* Compile both IDE and SATA as modules and make sure IDE is loaded first (the module is called 'ide_generic').&lt;br /&gt;
&lt;br /&gt;
Note that the optical drive must be in the Ultrabay during system boot (Ultrabay device swapping is currently unsupported).&lt;br /&gt;
&lt;br /&gt;
==No DMA on DVD drive==&lt;br /&gt;
&lt;br /&gt;
Using the IDE driver, DMA support cannot be enabled on an Ultrabay optical drive:&lt;br /&gt;
&lt;br /&gt;
 # hdparm -d1 /dev/hdc&lt;br /&gt;
 &lt;br /&gt;
 /dev/hdc:&lt;br /&gt;
  setting using_dma to 1 (on)&lt;br /&gt;
  HDIO_SET_DMA failed: Operation not permitted&lt;br /&gt;
  using_dma    =  0 (off)&lt;br /&gt;
&lt;br /&gt;
As a result, the optical drive is slow, and in particular, too slow to play video DVDs.&lt;br /&gt;
&lt;br /&gt;
One workaround is to use the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (instead of the IDE driver) for the optical drive. This requires enabling the ATAPI support of the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver, which is under active development and not yet stable. You must also make sure that the IDE driver (&amp;lt;tt&amp;gt;ide-generic&amp;lt;/tt&amp;gt;) does not grab the devices before &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;. &lt;br /&gt;
Using this will probably devour all your data and go on to eat all the food in your fridge. But if you have full backups and an empty fridge, do the following:&lt;br /&gt;
&lt;br /&gt;
* Grab the latest kernel (must be 2.6.14 or newer; the relevant code is under active development).&lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Enable the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; drivers as built-in, and add {{bootparm|libata.atapi_enabled|1}} to your kernel command line (e.g., in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Enable &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; as modules (this is often the default) and add &amp;quot;&amp;lt;tt&amp;gt;options libata atapi_enabled=1&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution). &lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Disable the IDE system.&lt;br /&gt;
** Build the IDE driver as built-in (this is often the default) and add the {{bootparm|hdc|noprobe}} kernel argument (e.g., in in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Build the IDE driver as module and add &amp;quot;&amp;lt;tt&amp;gt;options ide hdc=noprobe&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution).&lt;br /&gt;
* If you chose to use modules above, regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
Note : If you are using a ''Debian Sid'' system, and want to use Debian precompiled kernels, then type the following command in a ''root'' shell (This creates a new &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; with enabled ATAPI support of &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and loads &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; before the IDE driver): &lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
Note : If your work was successful, your CD-ROM drive will no longer be accesiible through /dev/hdc, but /dev/scd0.&lt;br /&gt;
&lt;br /&gt;
If this all doesn't work, use {{cmd|lspci -vn|}} to check whether one of the following chipsets is used in the Thinkpad:&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;
!PCI ID &lt;br /&gt;
!Name&lt;br /&gt;
|-&lt;br /&gt;
|8086:7111&lt;br /&gt;
|Intel 82371AB/EB/MB PIIX4 IDE&lt;br /&gt;
|-&lt;br /&gt;
|8086:24db&lt;br /&gt;
|Intel 82801EB/ER (ICH5/ICH5R) IDE Controller&lt;br /&gt;
|-&lt;br /&gt;
|8086:25a2&lt;br /&gt;
|Intel 6300ESB PATA Storage Controller&lt;br /&gt;
|}&lt;br /&gt;
If yes, enable support for these chipsets has to be enabled by setting&lt;br /&gt;
 #define ATA_ENABLE_PATA&lt;br /&gt;
in {{path|include/linux/libata.h}} (and report your ThinkPad model in the discussion page).&lt;br /&gt;
&lt;br /&gt;
There have been reports that DVD burning doesn't work under this configuration, but it seems to work with kernel 2.6.14 and later (tested on a ThinkPad {{T43}} and {{T43p}} with a [[UltraBay Slim DVD Multi-Burner Plus]]).&lt;br /&gt;
&lt;br /&gt;
===Problem with kernel 2.6.16 kernel and suspend2 2.2.1===&lt;br /&gt;
DVD access fails with kernel 2.6.16.* and [[Software Suspend 2|suspend2]] 2.2.1. Thia is fixed by later versions of suspend2, or by deleting the 4000-libata-rollup-2616-rc3.patch (see &lt;br /&gt;
[http://lists.suspend2.net/lurker/message/20060322.082452.873dc526.en.html this post notice] by Alexander E. Patrakov).&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=163418 bug 163418: &amp;quot;can't enable DMA on DVD drive&amp;quot;]&lt;br /&gt;
* Enabling DMA on a SATA DVD drive, kernel 2.6.18 [http://thomer.com/howtos/dma_on_sata_dvd.html]&lt;br /&gt;
&lt;br /&gt;
==No DMA on system hard disk==&lt;br /&gt;
&lt;br /&gt;
In recent Linux kernels, there are two modules capable of handling the ICH6 disk controller:&lt;br /&gt;
* &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;: the disk shows as {{path|/dev/sda}} and DMA is enabled.&lt;br /&gt;
* Generic IDE driver (&amp;lt;tt&amp;gt;ide-disk&amp;lt;/tt&amp;gt;): the disk shows as {{path|/dev/hda}} and DMA is disabled.&lt;br /&gt;
&lt;br /&gt;
The simplest way to enable DMA is to force the IDE driver to ignore the system hard disk by passing the {{bootparm|hda|noprobe}} and {{bootparm|hda|none}} kernel argument. The driver will then be handled by the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver. Note that this will change its device name to {{path|/dev/sda}} (which may require changes in {{path|/etc/fstab}} and the boot loader) and may cause other problems as listed above.&lt;br /&gt;
&lt;br /&gt;
(Observed on a ThinkPad T43 with Fedora Core kernel 2.6.13-1.1526_FC4.)&lt;br /&gt;
(Observed on a ThinkPad X40 with Debian kernel 2.6.18-4-686.) [[User:Hendry|Hendry]] 20:05, 11 June 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==No SMART support==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support SMART commands (e.g., via smartctl).&lt;br /&gt;
&lt;br /&gt;
The necessary capability is &amp;quot;libata pass-through&amp;quot;, which was incorporated into Linux 2.6.15-rc1 and later. A patch is available for older kernels:&lt;br /&gt;
* Kernel 2.6.12: http://rtr.ca/dell_i9300/kernel/kernel-2.6.12/03_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.13: http://rtr.ca/dell_i9300/kernel/kernel-2.6.13/02_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.14: http://www.foo.fh-furtwangen.de/~koenigr/02_libata_passthru.fixed.again.patch&lt;br /&gt;
* Kernel 2.6.14 with the above suspend-to-RAM patch: http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch&lt;br /&gt;
&lt;br /&gt;
After applying the patch, run smartctl with the &amp;quot;-d ata&amp;quot; parameter:&lt;br /&gt;
:{{cmdroot|smartctl -d ata -a /dev/sda}}&lt;br /&gt;
&lt;br /&gt;
From smartmontools version 5.37 &amp;quot;-d sat&amp;quot; is preferred to &amp;quot;-d ata&amp;quot;. The smartctl command will auto-detect SATA disks so:&lt;br /&gt;
:{{cmdroot|smartctl -a /dev/sda}}&lt;br /&gt;
should just work. The smartd daemon still requires &amp;quot;-d sat&amp;quot; in /etc/smartd.conf .&lt;br /&gt;
&lt;br /&gt;
==No disk power management==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support power management commands on these models.&lt;br /&gt;
&lt;br /&gt;
The above patches for SMART support resolves this, and in particular enables the following commands:&lt;br /&gt;
* {{cmdroot|hdparm -y}} (spin down)&lt;br /&gt;
* {{cmdroot|hdparm -S num}} (automatic spin down timeout)&lt;br /&gt;
* {{cmdroot|hdparm -B num}} (advanced power management level)&lt;br /&gt;
Note that this command is still rejected:&lt;br /&gt;
* {{cmdroot|hdparm -M num}} (acoustic management)&lt;br /&gt;
(Tested with patched kernels 2.6.13.1 and 2.6.12-4 and a 60GB 7200RPM disk model HTS726060M9AT00.)&lt;br /&gt;
&lt;br /&gt;
Refer to [[How to make use of Harddisk Power Management features]] for details about using&lt;br /&gt;
HD power management.  Refer to [[Laptop-mode]] if you are interested into spinning down your HD.&lt;br /&gt;
&lt;br /&gt;
==No disk information==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, on these models the disk information could not be read by the standard commands such as:&lt;br /&gt;
*{{cmdroot|hdparm -i /dev/sda}}&lt;br /&gt;
*{{cmdroot|hdparm -I /dev/sda}}&lt;br /&gt;
The latter is fixed by the above patch for SMART support.&lt;br /&gt;
&lt;br /&gt;
==No swapping of UltraBay device==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver in mainline Linux kernels supports hot-swapping and warm-swapping of PATA and SATA devices. This requires kernel 2.6.18 or newer (with older kernels, you must power off the laptop before swapping such devices). See [[How_to_hotswap_UltraBay_devices#When_using_the_ata_piix_driver|How_to_hotswap_UltraBay_devices]] for further information.&lt;br /&gt;
&lt;br /&gt;
Swapping of the [[UltraBay Slim Battery]] works out-of-the box.&lt;br /&gt;
&lt;br /&gt;
==BIOS error 2010 on user-installed hard disk==&lt;br /&gt;
&lt;br /&gt;
While not a Linux issue, note that there is an issue with installing alternative PATA (IDE) hard disks as the system drive. Unless the disk is one of the few approved disks listed inside the BIOS, you will get an BIOS error 2010 during system boot, and the disk may operate unreliably. See [[Problem with non-ThinkPad hard disks]].&lt;br /&gt;
&lt;br /&gt;
==RHEL3.0 Update 7 on T60p==&lt;br /&gt;
&lt;br /&gt;
RHEL3.0 Update 7 will install on a {{T60p}}, but you need to make an adjustment.  Both uni-processor and SMP kernels get installed, with the SMP kerrnel the default.  However, the SMP kernel can't seem to find the disk drive.  You can work around this by use &amp;quot;e&amp;quot; at the GRUB kernel prompt, then on the &amp;quot;kernel&amp;quot; line appending &amp;quot; noapic&amp;quot;.  After the system boots, you'll want to edit /boot/grub/grub.conf to add the &amp;quot; noapic&amp;quot; option to the kernel line as well.&lt;br /&gt;
&lt;br /&gt;
==Mandriva 2006 on T60==&lt;br /&gt;
&lt;br /&gt;
Mandriva 2006.0 has a problem with SATA on a {{T60}}, to fix this you need to make an adjustment. The install procedure can't seem to find the SATA disk drive, you can work around this by adding the &amp;quot;noapic&amp;quot; kernel option during CD/DVD boot. You *might* need to add this to lilo or GRUB for normal operations, after install completes. The problem with not using apic during normal operations is that you might have problems with power management, please see article on [[Software Suspend 2]]&lt;br /&gt;
&lt;br /&gt;
==Problem burning CD/DVD==&lt;br /&gt;
&lt;br /&gt;
To a CD/DVD problem, try to burn a CD/DVD as &amp;quot;root&amp;quot;-user on command-line with the option &amp;quot;-dummy&amp;quot; and &amp;quot;-v&amp;quot; enabled, do not use K3B or similar. Doing so you will get more informations and waste less CD/DVD's. &lt;br /&gt;
&lt;br /&gt;
Experiment with the parameters &amp;quot;burnfree&amp;quot; and &amp;quot;dev&amp;quot;. With cdrecord on debian etch, burnfree seems not work, disable it. With wodim on debian etch: try parameter &amp;quot;dev=/dev/scd0&amp;quot;, the default &amp;quot;dev=1,0,0&amp;quot; seems not to work.&lt;br /&gt;
&lt;br /&gt;
==Spurious NCQ completions==&lt;br /&gt;
&lt;br /&gt;
The HDD firmware support for NCQ appears to be buggy ([http://lkml.org/lkml/2007/6/6/15 LKML posting] and [http://lkml.org/lkml/2007/6/6/195 LKML posting]).&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=30550</id>
		<title>Problems with SATA and Linux</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problems_with_SATA_and_Linux&amp;diff=30550"/>
		<updated>2007-06-18T22:46:51Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: Spurious NCQ&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;
Some ThinkPad models use an [[Intel ICH6-M]] SATA/PATA controller for the system hard disk. This causes several complications for Linux installation. The following lists these problems and known workarounds. Note that the details are often version- and distribution-specific.&lt;br /&gt;
&lt;br /&gt;
===Models using a SATA disk interface===&lt;br /&gt;
Models using a SATA controller and a SATA system disk:&lt;br /&gt;
*ThinkPad {{R60}}, {{R60e}}&lt;br /&gt;
*ThinkPad {{T60}}, {{T60p}}&lt;br /&gt;
*ThinkPad {{X60}}, {{X60s}}&lt;br /&gt;
*ThinkPad {{Z60t}}, {{Z60m}}&lt;br /&gt;
*ThinkPad {{Z61e}}, {{Z61t}}, {{Z61m}}&lt;br /&gt;
Models using a SATA controller and a PATA (IDE) system disk with a SATA-to-PATA bridge:&lt;br /&gt;
*ThinkPad {{T43}}, {{T43p}}&lt;br /&gt;
*ThinkPad {{R52}}&lt;br /&gt;
*ThinkPad {{X41}}, {{X41T}}&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Some of these problems (namely SMART support, power management and disk information) are solved in Linux 2.6.15 with the inclusion of libata pass-through. See the SATA driver [http://linux-ata.org/features.html features], [http://linux-ata.org/software-status.html software status] and [http://linux-ata.org/driver-status.html hardware status].}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hang on resume from suspend to RAM==&lt;br /&gt;
&lt;br /&gt;
Linux kernels prior to 2.6.16 (ata_piix) and 2.6.19 (ahci) do not support suspend and resume for SATA devices. As a result, the machine hangs upon the first disk access after resume. A kernel patch ([http://lkml.org/lkml/2005/5/2/46 LKML posting]) fixes this by adding SATA power management support.&lt;br /&gt;
&lt;br /&gt;
Kernel 2.6.16 and later fixes this problem for most systems. The Thinkpad T60 and X60s still need some patches to get resume working using 2.6.16, see [[Talk:Problems with SATA and Linux#Patch against SATA-resume problem with T60|here]]. The T60p resumes properly with 2.6.17-rc6, the T60 and X60 should also.  You need to enable ata_piix and disable AHCI in the bios. The latest fedora (FC5) 2.6.17 kernel seems to have fixed the resume problem on the T60p, still need to disable AHCI though. Applying [http://cvs.fedora.redhat.com/viewcvs/rpms/kernel/FC-5/linux-2.6-console-suspend.patch this FC5 patch] makes suspend-to-ram work with AHCI enabled.&lt;br /&gt;
&lt;br /&gt;
===Patches===&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.12.diff Patch for kernel 2.6.12]&lt;br /&gt;
* [http://shamrock.dyndns.org/~ln/linux/sata_pm.2.6.13-rc5.diff Patch for kernel 2.6.13-rc5]&lt;br /&gt;
* [http://lkml.org/lkml/2005/9/23/97 Patch for kernel 2.6.14]&lt;br /&gt;
* [http://www.xenotime.net/linux/SATA/2.6.15-rc/libata_suspend.patch Patch for kernel 2.6.15-rc4]&lt;br /&gt;
* [http://tpctl.sourceforge.net/tmp/sata_pm.2.6.15-rc6.patch Patch for kernels 2.6.15-rc6 through 2.6.15]&lt;br /&gt;
&lt;br /&gt;
Some distributions already include this patch (e.g., {{Ubuntu}} Breezy, {{Gentoo}}'s gentoo-sources 2.6.15-r1), but some don't (e.g., {{Fedora}} 4). If your distribution doesn't include the patch, you will need to compile your own kernel with this patch included.&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=169201 bug 169201: &amp;quot;SATA drives fail on laptop suspend&amp;quot;]&lt;br /&gt;
* [http://lkml.org/lkml/2005/11/15/385 Fix to libata.h recommended on LKML] in case you get &amp;quot;ata: abnormal state 0x80 on port 0x1F7&amp;quot;&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=183138 bug 183138&amp;quot;: &amp;quot;SATA failure after pm-suspend/resume ata1: handling error/timeout&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
==Failed resume from suspend to disk==&lt;br /&gt;
&lt;br /&gt;
Suspend to disk (using [[swsusp]] or [[Software Suspend 2]]) needs to load the memory image from the SATA disk. For this to work, you either need an initrd with all the necessary SATA modules, or the SATA drivers compiled into the kernel.&lt;br /&gt;
&lt;br /&gt;
==DVD drive not recognized==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; SATA driver grabs ownership over the IDE ports when it is loaded, but (by default) does not support PATA ATAPI devices such as the Ultrabay optical drives. Thus, if the &amp;lt;tt&amp;gt;ide&amp;lt;/tt&amp;gt; driver is compiled as a module and loaded after &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;, the DVD drive will not be recognized by either driver.&lt;br /&gt;
&lt;br /&gt;
Either of the following configurations will work:&lt;br /&gt;
* For kernel 2.6.14 and newer: enable ATAPI support in the SATA system using {{bootparm|libata.atapi_enabled|1}} (see below; this is experimental).&lt;br /&gt;
* Compile IDE into the kernel (non-module).&lt;br /&gt;
* Compile both IDE and SATA as modules and make sure IDE is loaded first (the module is called 'ide_generic').&lt;br /&gt;
&lt;br /&gt;
Note that the optical drive must be in the Ultrabay during system boot (Ultrabay device swapping is currently unsupported).&lt;br /&gt;
&lt;br /&gt;
==No DMA on DVD drive==&lt;br /&gt;
&lt;br /&gt;
Using the IDE driver, DMA support cannot be enabled on an Ultrabay optical drive:&lt;br /&gt;
&lt;br /&gt;
 # hdparm -d1 /dev/hdc&lt;br /&gt;
 &lt;br /&gt;
 /dev/hdc:&lt;br /&gt;
  setting using_dma to 1 (on)&lt;br /&gt;
  HDIO_SET_DMA failed: Operation not permitted&lt;br /&gt;
  using_dma    =  0 (off)&lt;br /&gt;
&lt;br /&gt;
As a result, the optical drive is slow, and in particular, too slow to play video DVDs.&lt;br /&gt;
&lt;br /&gt;
One workaround is to use the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver (instead of the IDE driver) for the optical drive. This requires enabling the ATAPI support of the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver, which is under active development and not yet stable. You must also make sure that the IDE driver (&amp;lt;tt&amp;gt;ide-generic&amp;lt;/tt&amp;gt;) does not grab the devices before &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;. &lt;br /&gt;
Using this will probably devour all your data and go on to eat all the food in your fridge. But if you have full backups and an empty fridge, do the following:&lt;br /&gt;
&lt;br /&gt;
* Grab the latest kernel (must be 2.6.14 or newer; the relevant code is under active development).&lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Enable the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; drivers as built-in, and add {{bootparm|libata.atapi_enabled|1}} to your kernel command line (e.g., in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Enable &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;libata&amp;lt;/tt&amp;gt; as modules (this is often the default) and add &amp;quot;&amp;lt;tt&amp;gt;options libata atapi_enabled=1&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution). &lt;br /&gt;
* Do one of the following:&lt;br /&gt;
** Disable the IDE system.&lt;br /&gt;
** Build the IDE driver as built-in (this is often the default) and add the {{bootparm|hdc|noprobe}} kernel argument (e.g., in in {{path|/boot/grub/menu.lst}} or {{path|/etc/lilo.conf}}. Don't forget to run lilo after changes).&lt;br /&gt;
** Build the IDE driver as module and add &amp;quot;&amp;lt;tt&amp;gt;options ide hdc=noprobe&amp;lt;/tt&amp;gt;&amp;quot; to your {{path|/etc/modprobe.conf}} (or the equivalent in your distribution).&lt;br /&gt;
* If you chose to use modules above, regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
Note : If you are using a ''Debian Sid'' system, and want to use Debian precompiled kernels, then type the following command in a ''root'' shell (This creates a new &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; with enabled ATAPI support of &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; and loads &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; before the IDE driver): &lt;br /&gt;
 '''# echo options libata atapi_enabled=1&amp;gt;/etc/modprobe.d/atapienable &amp;amp;&amp;amp; update-initramfs -u'''&lt;br /&gt;
Note : If your work was successful, your CD-ROM drive will no longer be accesiible through /dev/hdc, but /dev/scd0.&lt;br /&gt;
&lt;br /&gt;
If this all doesn't work, use {{cmd|lspci -vn|}} to check whether one of the following chipsets is used in the Thinkpad:&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;
!PCI ID &lt;br /&gt;
!Name&lt;br /&gt;
|-&lt;br /&gt;
|8086:7111&lt;br /&gt;
|Intel 82371AB/EB/MB PIIX4 IDE&lt;br /&gt;
|-&lt;br /&gt;
|8086:24db&lt;br /&gt;
|Intel 82801EB/ER (ICH5/ICH5R) IDE Controller&lt;br /&gt;
|-&lt;br /&gt;
|8086:25a2&lt;br /&gt;
|Intel 6300ESB PATA Storage Controller&lt;br /&gt;
|}&lt;br /&gt;
If yes, enable support for these chipsets has to be enabled by setting&lt;br /&gt;
 #define ATA_ENABLE_PATA&lt;br /&gt;
in {{path|include/linux/libata.h}} (and report your ThinkPad model in the discussion page).&lt;br /&gt;
&lt;br /&gt;
There have been reports that DVD burning doesn't work under this configuration, but it seems to work with kernel 2.6.14 and later (tested on a ThinkPad {{T43}} and {{T43p}} with a [[UltraBay Slim DVD Multi-Burner Plus]]).&lt;br /&gt;
&lt;br /&gt;
===Problem with kernel 2.6.16 kernel and suspend2 2.2.1===&lt;br /&gt;
DVD access fails with kernel 2.6.16.* and [[Software Suspend 2|suspend2]] 2.2.1. Thia is fixed by later versions of suspend2, or by deleting the 4000-libata-rollup-2616-rc3.patch (see &lt;br /&gt;
[http://lists.suspend2.net/lurker/message/20060322.082452.873dc526.en.html this post notice] by Alexander E. Patrakov).&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
* RedHat Bugzilla [https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=163418 bug 163418: &amp;quot;can't enable DMA on DVD drive&amp;quot;]&lt;br /&gt;
* Enabling DMA on a SATA DVD drive, kernel 2.6.18 [http://thomer.com/howtos/dma_on_sata_dvd.html]&lt;br /&gt;
&lt;br /&gt;
==No DMA on system hard disk==&lt;br /&gt;
&lt;br /&gt;
In recent Linux kernels, there are two modules capable of handling the ICH6 disk controller:&lt;br /&gt;
* &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt;: the disk shows as {{path|/dev/sda}} and DMA is enabled.&lt;br /&gt;
* Generic IDE driver (&amp;lt;tt&amp;gt;ide-disk&amp;lt;/tt&amp;gt;): the disk shows as {{path|/dev/hda}} and DMA is disabled.&lt;br /&gt;
&lt;br /&gt;
The simplest way to enable DMA is to force the IDE driver to ignore the system hard disk by passing the {{bootparm|hda|noprobe}} and {{bootparm|hda|none}} kernel argument. The driver will then be handled by the &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver. Note that this will change its device name to {{path|/dev/sda}} (which may require changes in {{path|/etc/fstab}} and the boot loader) and may cause other problems as listed above.&lt;br /&gt;
&lt;br /&gt;
(Observed on a ThinkPad T43 with Fedora Core kernel 2.6.13-1.1526_FC4.)&lt;br /&gt;
(Observed on a ThinkPad X40 with Debian kernel 2.6.18-4-686.) [[User:Hendry|Hendry]] 20:05, 11 June 2007 (UTC)&lt;br /&gt;
&lt;br /&gt;
==No SMART support==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support SMART commands (e.g., via smartctl).&lt;br /&gt;
&lt;br /&gt;
The necessary capability is &amp;quot;libata pass-through&amp;quot;, which was incorporated into Linux 2.6.15-rc1 and later. A patch is available for older kernels:&lt;br /&gt;
* Kernel 2.6.12: http://rtr.ca/dell_i9300/kernel/kernel-2.6.12/03_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.13: http://rtr.ca/dell_i9300/kernel/kernel-2.6.13/02_libata_passthru.patch&lt;br /&gt;
* Kernel 2.6.14: http://www.foo.fh-furtwangen.de/~koenigr/02_libata_passthru.fixed.again.patch&lt;br /&gt;
* Kernel 2.6.14 with the above suspend-to-RAM patch: http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch&lt;br /&gt;
&lt;br /&gt;
After applying the patch, run smartctl with the &amp;quot;-d ata&amp;quot; parameter:&lt;br /&gt;
:{{cmdroot|smartctl -d ata -a /dev/sda}}&lt;br /&gt;
&lt;br /&gt;
From smartmontools version 5.37 &amp;quot;-d sat&amp;quot; is preferred to &amp;quot;-d ata&amp;quot;. The smartctl command will auto-detect SATA disks so:&lt;br /&gt;
:{{cmdroot|smartctl -a /dev/sda}}&lt;br /&gt;
should just work. The smartd daemon still requires &amp;quot;-d sat&amp;quot; in /etc/smartd.conf .&lt;br /&gt;
&lt;br /&gt;
==No disk power management==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, the Linux SATA system did not support power management commands on these models.&lt;br /&gt;
&lt;br /&gt;
The above patches for SMART support resolves this, and in particular enables the following commands:&lt;br /&gt;
* {{cmdroot|hdparm -y}} (spin down)&lt;br /&gt;
* {{cmdroot|hdparm -S num}} (automatic spin down timeout)&lt;br /&gt;
* {{cmdroot|hdparm -B num}} (advanced power management level)&lt;br /&gt;
Note that this command is still rejected:&lt;br /&gt;
* {{cmdroot|hdparm -M num}} (acoustic management)&lt;br /&gt;
(Tested with patched kernels 2.6.13.1 and 2.6.12-4 and a 60GB 7200RPM disk model HTS726060M9AT00.)&lt;br /&gt;
&lt;br /&gt;
Refer to [[How to make use of Harddisk Power Management features]] for details about using&lt;br /&gt;
HD power management.  Refer to [[Laptop-mode]] if you are interested into spinning down your HD.&lt;br /&gt;
&lt;br /&gt;
==No disk information==&lt;br /&gt;
&lt;br /&gt;
Prior to kernel 2.6.15, on these models the disk information could not be read by the standard commands such as:&lt;br /&gt;
*{{cmdroot|hdparm -i /dev/sda}}&lt;br /&gt;
*{{cmdroot|hdparm -I /dev/sda}}&lt;br /&gt;
The latter is fixed by the above patch for SMART support.&lt;br /&gt;
&lt;br /&gt;
==No swapping of UltraBay device==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;ata_piix&amp;lt;/tt&amp;gt; driver in mainline Linux kernels supports hot-swapping and warm-swapping of PATA and SATA devices. This requires kernel 2.6.18 or newer (with older kernels, you must power off the laptop before swapping such devices). See [[How_to_hotswap_UltraBay_devices#When_using_the_ata_piix_driver|How_to_hotswap_UltraBay_devices]] for further information.&lt;br /&gt;
&lt;br /&gt;
Swapping of the [[UltraBay Slim Battery]] works out-of-the box.&lt;br /&gt;
&lt;br /&gt;
==BIOS error 2010 on user-installed hard disk==&lt;br /&gt;
&lt;br /&gt;
While not a Linux issue, note that there is an issue with installing alternative PATA (IDE) hard disks as the system drive. Unless the disk is one of the few approved disks listed inside the BIOS, you will get an BIOS error 2010 during system boot, and the disk may operate unreliably. See [[Problem with non-ThinkPad hard disks]].&lt;br /&gt;
&lt;br /&gt;
==RHEL3.0 Update 7 on T60p==&lt;br /&gt;
&lt;br /&gt;
RHEL3.0 Update 7 will install on a {{T60p}}, but you need to make an adjustment.  Both uni-processor and SMP kernels get installed, with the SMP kerrnel the default.  However, the SMP kernel can't seem to find the disk drive.  You can work around this by use &amp;quot;e&amp;quot; at the GRUB kernel prompt, then on the &amp;quot;kernel&amp;quot; line appending &amp;quot; noapic&amp;quot;.  After the system boots, you'll want to edit /boot/grub/grub.conf to add the &amp;quot; noapic&amp;quot; option to the kernel line as well.&lt;br /&gt;
&lt;br /&gt;
==Mandriva 2006 on T60==&lt;br /&gt;
&lt;br /&gt;
Mandriva 2006.0 has a problem with SATA on a {{T60}}, to fix this you need to make an adjustment. The install procedure can't seem to find the SATA disk drive, you can work around this by adding the &amp;quot;noapic&amp;quot; kernel option during CD/DVD boot. You *might* need to add this to lilo or GRUB for normal operations, after install completes. The problem with not using apic during normal operations is that you might have problems with power management, please see article on [[Software Suspend 2]]&lt;br /&gt;
&lt;br /&gt;
==Problem burning CD/DVD==&lt;br /&gt;
&lt;br /&gt;
To a CD/DVD problem, try to burn a CD/DVD as &amp;quot;root&amp;quot;-user on command-line with the option &amp;quot;-dummy&amp;quot; and &amp;quot;-v&amp;quot; enabled, do not use K3B or similar. Doing so you will get more informations and waste less CD/DVD's. &lt;br /&gt;
&lt;br /&gt;
Experiment with the parameters &amp;quot;burnfree&amp;quot; and &amp;quot;dev&amp;quot;. With cdrecord on debian etch, burnfree seems not work, disable it. With wodim on debian etch: try parameter &amp;quot;dev=/dev/scd0&amp;quot;, the default &amp;quot;dev=1,0,0&amp;quot; seems not to work.&lt;br /&gt;
&lt;br /&gt;
==Spurious NCQ completions==&lt;br /&gt;
&lt;br /&gt;
The HDD firmware support for NCQ appears to be buggy ([http://lkml.org/lkml/2007/6/6/15 LKML posting]).&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30549</id>
		<title>Category:Z61m</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30549"/>
		<updated>2007-06-18T22:34:33Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Standard Features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== ThinkPad Z61m ===&lt;br /&gt;
This pages gives an overview of all ThinkPad Z61m related topics.&lt;br /&gt;
==== Standard Features ====&lt;br /&gt;
* One of the following processors:&lt;br /&gt;
** [[Intel Core 2 Duo]] T7200 2.0 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T5500 1,66 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T7200 2,00 Ghz CPU (EM64T)&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2300e 1.66 GHz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2500 2.0 GHz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1300 1.66 Ghz CPU&lt;br /&gt;
* One of the following video controllers:&lt;br /&gt;
** [[Intel Graphics Media Accelerator 950]]&lt;br /&gt;
** [[ATI Mobility Radeon X1300]] (64 MB)&lt;br /&gt;
** [[ATI Mobility Radeon X1400]] (128 MB)&lt;br /&gt;
* One of the following displays:&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution (MaxBright)&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WSXGA+ 1680x1050 resolution&lt;br /&gt;
* 256 MB, 512 MB or 1 GB [[PC2-5300]] memory standard upgradable to 3 GB (2 slots)&lt;br /&gt;
* 40, 60, 80, 100 or 120GB 5400 RPM SATA HDD&lt;br /&gt;
* [[AD1981HD]] HD Audio 1.0 controller with 2 speakers&lt;br /&gt;
* [[UltraBay|UltraBay Enhanced]] with one of the following:&lt;br /&gt;
** DVD-ROM/CD-RW Combo&lt;br /&gt;
** DVD±RW DL [Matshita DVD-RAM UJ-850]&lt;br /&gt;
* Ethernet Controller:&lt;br /&gt;
** [[Ethernet Controllers#Intel Gigabit (10/100/1000)|Intel Gigabit Ethernet Controller]]&lt;br /&gt;
** [[Ethernet Controllers#Broadcom Nextreme Gigabit (10/100/1000)|Broadcom Gigabit Ethernet Controller]]&lt;br /&gt;
* [[CDC slot]] (1) with a [[ThinkPad 56K Modem (MDC-1.5)]]&lt;br /&gt;
* [[CDC slot]] (2) with a [[ThinkPad Bluetooth with Enhanced Data Rate (BDC-2)]] on select systems&lt;br /&gt;
* [[MiniPCI slot]] with one of the following:&lt;br /&gt;
** [[Intel PRO/Wireless 3945ABG Mini-PCI Express Adapter]]&lt;br /&gt;
** [[ThinkPad 11a/b/g Wireless LAN Mini Express Adapter]]&lt;br /&gt;
* [[MiniPCI Express slot]] with one of the following:&lt;br /&gt;
** none (empty)&lt;br /&gt;
** [[Verizon 1xEV-DO WWAN]]&lt;br /&gt;
* [[Embedded Security Subsystem|IBM Embedded Security Subsystem 2.0]]&lt;br /&gt;
* [[Active Protection System|IBM Active Protection System]]&lt;br /&gt;
* [[Integrated Fingerprint Reader]] on select systems&lt;br /&gt;
* [[UltraNav]]&lt;br /&gt;
* IEEE1394 (Firewire)&lt;br /&gt;
* 4-in-1 digital media reader ([[SD Card slot|MultiMedia Card]], [[MS Card slot|MemoryStick]], [[SD Card slot|SD]])&lt;br /&gt;
* [[CardBus slot]] (Type 2)&lt;br /&gt;
* [[ExpressCard slot|ExpressCard/54 slot]]&lt;br /&gt;
* [[Intergrated Camera - Optional only with X1400 and 15.4-1680x1050 screen]]&lt;br /&gt;
&lt;br /&gt;
==== Weight &amp;amp; Dimensions ====&lt;br /&gt;
These may vary depending on exact specifications&lt;br /&gt;
357 x 262.5 x 37.3 - 40.2mm (14.0&amp;quot; x 10.3&amp;quot; x 1.4-1.5&amp;quot;)&lt;br /&gt;
2.7kg (5.94lb)/2.9kg (6.33 lb) with optical drive&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
[[image:ThinkPadZ60m.jpg|ThinkPad Z61m]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reviews ====&lt;br /&gt;
* [http://www.pcmag.com/article2/0,1895,1962609,00.asp PCMag.com], 2006-05-16&lt;br /&gt;
&lt;br /&gt;
[[Category:Z Series]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30548</id>
		<title>Category:Z61m</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Category:Z61m&amp;diff=30548"/>
		<updated>2007-06-18T22:32:38Z</updated>

		<summary type="html">&lt;p&gt;Zaphod: /* Standard Features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
=== ThinkPad Z61m ===&lt;br /&gt;
This pages gives an overview of all ThinkPad Z61m related topics.&lt;br /&gt;
==== Standard Features ====&lt;br /&gt;
* One of the following processors:&lt;br /&gt;
** [[Intel Core 2 Duo]] T7200 2.0 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T5500 1,66 Ghz CPU&lt;br /&gt;
** [[Intel Core 2 Duo]] (Merom) T7200 2,00 Ghz CPU (EM64T)&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2300e 1.66 GHz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Duo (Yonah)]] T2500 2.0 GHz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1400 1.83 Ghz CPU&lt;br /&gt;
** [[Intel Core Solo (Yonah)]] T1300 1.66 Ghz CPU&lt;br /&gt;
* One of the following video controllers:&lt;br /&gt;
** [[Intel Graphics Media Accelerator 950]]&lt;br /&gt;
** [[ATI Mobility Radeon X1300]] (64 MB)&lt;br /&gt;
** [[ATI Mobility Radeon X1400]] (128 MB)&lt;br /&gt;
* One of the following displays:&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WXGA 1280x800 resolution (MaxBright)&lt;br /&gt;
** 15.4&amp;quot; wide-screen TFT WSXGA+ 1680x1050 resolution&lt;br /&gt;
* 256 MB, 512 MB or 1 GB [[PC2-5300]] memory standard upgradable to 3 GB (2 slots)&lt;br /&gt;
* 40, 60, 80, 100 or 120GB 5400 RPM SATA HDD&lt;br /&gt;
* [[AD1981HD]] HD Audio 1.0 controller with 2 speakers&lt;br /&gt;
* [[UltraBay|UltraBay Enhanced]] with one of the following:&lt;br /&gt;
** DVD-ROM/CD-RW Combo&lt;br /&gt;
** DVDÂ±RW DL [Matshita DVD-RAM UJ-850]&lt;br /&gt;
* Ethernet Controller:&lt;br /&gt;
** [[Ethernet Controllers#Intel Gigabit (10/100/1000)|Intel Gigabit Ethernet Controller]]&lt;br /&gt;
** [[Ethernet Controllers#Broadcom Nextreme Gigabit (10/100/1000)|Broadcom Gigabit Ethernet Controller]]&lt;br /&gt;
* [[CDC slot]] (1) with a [[ThinkPad 56K Modem (MDC-1.5)]]&lt;br /&gt;
* [[CDC slot]] (2) with a [[ThinkPad Bluetooth with Enhanced Data Rate (BDC-2)]] on select systems&lt;br /&gt;
* [[MiniPCI slot]] with one of the following:&lt;br /&gt;
** [[Intel PRO/Wireless 3945ABG Mini-PCI Express Adapter]]&lt;br /&gt;
** [[ThinkPad 11a/b/g Wireless LAN Mini Express Adapter]]&lt;br /&gt;
* [[MiniPCI Express slot]] with one of the following:&lt;br /&gt;
** none (empty)&lt;br /&gt;
** [[Verizon 1xEV-DO WWAN]]&lt;br /&gt;
* [[Embedded Security Subsystem|IBM Embedded Security Subsystem 2.0]]&lt;br /&gt;
* [[Active Protection System|IBM Active Protection System]]&lt;br /&gt;
* [[Integrated Fingerprint Reader]] on select systems&lt;br /&gt;
* [[UltraNav]]&lt;br /&gt;
* IEEE1394 (Firewire)&lt;br /&gt;
* 4-in-1 digital media reader ([[SD Card slot|MultiMedia Card]], [[MS Card slot|MemoryStick]], [[SD Card slot|SD]])&lt;br /&gt;
* [[CardBus slot]] (Type 2)&lt;br /&gt;
* [[ExpressCard slot|ExpressCard/54 slot]]&lt;br /&gt;
* [[Intergrated Camera - Optional only with X1400 and 15.4-1680x1050 screen]]&lt;br /&gt;
&lt;br /&gt;
==== Weight &amp;amp; Dimensions ====&lt;br /&gt;
These may vary depending on exact specifications&lt;br /&gt;
357 x 262.5 x 37.3 - 40.2mm (14.0&amp;quot; x 10.3&amp;quot; x 1.4-1.5&amp;quot;)&lt;br /&gt;
2.7kg (5.94lb)/2.9kg (6.33 lb) with optical drive&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|style=&amp;quot;vertical-align:top&amp;quot; |&lt;br /&gt;
[[image:ThinkPadZ60m.jpg|ThinkPad Z61m]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reviews ====&lt;br /&gt;
* [http://www.pcmag.com/article2/0,1895,1962609,00.asp PCMag.com], 2006-05-16&lt;br /&gt;
&lt;br /&gt;
[[Category:Z Series]]&lt;/div&gt;</summary>
		<author><name>Zaphod</name></author>
		
	</entry>
</feed>