<?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=Toni</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=Toni"/>
	<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/wiki/Special:Contributions/Toni"/>
	<updated>2026-05-02T21:49:01Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=TuxOnIce&amp;diff=23206</id>
		<title>TuxOnIce</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=TuxOnIce&amp;diff=23206"/>
		<updated>2006-07-16T02:39:36Z</updated>

		<summary type="html">&lt;p&gt;Toni: /* Model-specific Status */  format that suggests need for more infot, like kenerl and OS version&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;
===Software Suspend 2 - swsusp2===&lt;br /&gt;
Software Suspend 2, sometimes also called &amp;quot;swsusp2&amp;quot; and &amp;quot;suspend2&amp;quot;, is an implementation of suspend-to-disk functionality in the form of a Linux kernel patch and several userspace utilities. It is an alternative to both the BIOS-driven hibernation feature found on most ThinkPad models, and the [[swsusp]] &amp;quot;software suspend&amp;quot; functionality built into recent Linux kernels.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
Compared to the alternatives, Software Suspend 2 has some unique [http://suspend2.net/features features]:&lt;br /&gt;
* The ability to compress the memory image as it is written to disk, thereby reducing suspend and resume times.&lt;br /&gt;
* Saving the memory image into a swap file, a swap partition or normal a file on any filesystem.&lt;br /&gt;
* Cancelling a suspend in progress&lt;br /&gt;
* Control over amount of RAM written to disk -- can (optionally) discard cached disk blocks to reduce suspend and resume times&lt;br /&gt;
* Textual and graphical UI (optional)&lt;br /&gt;
* Improved reliability under some circumstances -- if the alternatives don't work, try this one!&lt;br /&gt;
&lt;br /&gt;
Since it is implemented purely in software, Software Suspend 2 is in principle machine-independent and should work on all modern ThinkPad models. However, in some cases problematic drivers need to be unloaded before suspension. This is handled by the &amp;lt;tt&amp;gt;hibernate&amp;lt;/tt&amp;gt; script (see below).&lt;br /&gt;
&lt;br /&gt;
==Availability / Project Homepage==&lt;br /&gt;
* [http://suspend2.net/ Project home page]&lt;br /&gt;
&lt;br /&gt;
==Model-specific Status==&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;border:1px; background:grey;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Thinkpad Model &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Type &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Operating System &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Kernel Version&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Suspend2 Version&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Success&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Note&lt;br /&gt;
|- style=&amp;quot;background: white;&amp;quot;&lt;br /&gt;
| {{T42}}&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{T43}}&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{T21}}&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| need to unload the sound module (&amp;lt;tt&amp;gt;snd-cs46xx&amp;lt;/tt&amp;gt;) on suspend. May want to enable UseDummyXServer if running X&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{X41T}}&lt;br /&gt;
| &lt;br /&gt;
| Fedore Core 4&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| requires SATA resume patch and the SATA drivers compiled as built-in or in initrd (see [[Problems with SATA and Linux]]) and a {{path|hibernate.conf}} fix (see [[Installing Fedora Core 4 on a ThinkPad X41 Tablet]])&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{X22}}&lt;br /&gt;
| &lt;br /&gt;
| Ubuntu Breezy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| see [[Installing Ubuntu (Breezy) on a ThinkPad X22]]&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{G41}}&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| see [[Installing Debian on a ThinkPad G41]]&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{R52}}&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| 2.6.17.1&lt;br /&gt;
| 2.2.7&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
| FC5 with kernel [http://mhensler.de/swsusp/download_en.php 2.6.17-1.2145_1.rhfc5.cubbi_suspend2]&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| {{T23}}&lt;br /&gt;
| 2647-9KU &lt;br /&gt;
| Debian Etch&lt;br /&gt;
| 2.6.17.4&lt;br /&gt;
| 2.2.7&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Installation Instructions==&lt;br /&gt;
The [http://suspend2.net/ project home page] has a detailed HOWTO and FAQ. The following are just a few highlights.&lt;br /&gt;
&lt;br /&gt;
===Patching mkinitrd===&lt;br /&gt;
If your systems uses an &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file (most do), you'll need to patch or replace your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt;-creation script.&lt;br /&gt;
&lt;br /&gt;
*{{Fedora}} 4: in {{path|/sbin/mkinitrd}}, find this line:&lt;br /&gt;
 echo &amp;quot;echo Mounted /proc filesystem&amp;quot; &amp;gt;&amp;gt; $RCFILE&lt;br /&gt;
and add the following immediately afterwards:&lt;br /&gt;
 echo &amp;quot;echo &amp;gt; /proc/suspend2/do_resume&amp;quot; &amp;gt;&amp;gt;$RCFILE&lt;br /&gt;
*{{Fedora}} 5: in {{path|/sbin/mkinitrd}}, find this line:&lt;br /&gt;
 mount -t proc /proc /proc&lt;br /&gt;
and add the following immediately afterwards:&lt;br /&gt;
 echo &amp;gt; /proc/suspend2/do_resume &lt;br /&gt;
*{{Debian}}: copy [http://dagobah.ucc.asn.au/swsusp/2.0.0.102/swsusp-initrd.sh swsusp-initrd.sh] script to your {{path|/etc/mkinitrd/scripts}} directory before creating initrd image.&lt;br /&gt;
&lt;br /&gt;
Make sure you regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file (using &amp;lt;tt&amp;gt;mkinitrd&amp;lt;/tt&amp;gt; or by reinstalling the kernel) after patching &amp;lt;tt&amp;gt;mkinitrd&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Hibernate script===&lt;br /&gt;
Software Suspend 2 works best with the &amp;lt;tt&amp;gt;hibernate&amp;lt;/tt&amp;gt; script (available from the project home page), which takes care of auxiliary tasks needed on many systems (e.g., unloading problematic modules and restoring video modes).&lt;br /&gt;
&lt;br /&gt;
====Availability====&lt;br /&gt;
*{{Gentoo}}: emerge hibernate-script&lt;br /&gt;
*{{Fedora}}: kernel and hibernate RPMs are available at http://mhensler.de/swsusp/&lt;br /&gt;
*{{Ubuntu}}: packages for Ubuntu Dapper Drake (kernel, hibernate, suspend2ui-userui): http://dagobah.ucc.asn.au/dapper-kernels/&lt;br /&gt;
*PLD: poldek -iv hibernate&lt;br /&gt;
*Other: check the home page for packages (deb, i386 rpm, tgz, and source rpm) from http://www.suspend2.net&lt;br /&gt;
&lt;br /&gt;
==Configuration tips==&lt;br /&gt;
===RediSafe-like functionality===&lt;br /&gt;
The hibernate functionality on some ThinkPad BIOSes offers the useful &amp;quot;RediSafe&amp;quot; feature, which suspends to both RAM and disk. This way you get quick resumes (directly from RAM), plus the safey of suspend-to-disk in case the battery runs out.&lt;br /&gt;
&lt;br /&gt;
Software Suspend 2 provides this feature too; simply add the following to {{path|/etc/hibernate/hibernate.conf}}:&lt;br /&gt;
 PowerdownMethod 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Patches]] [[Category:Drivers]]&lt;/div&gt;</summary>
		<author><name>Toni</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=TuxOnIce&amp;diff=23205</id>
		<title>TuxOnIce</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=TuxOnIce&amp;diff=23205"/>
		<updated>2006-07-16T02:29:30Z</updated>

		<summary type="html">&lt;p&gt;Toni: /* Model-specific Status */&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;
===Software Suspend 2 - swsusp2===&lt;br /&gt;
Software Suspend 2, sometimes also called &amp;quot;swsusp2&amp;quot; and &amp;quot;suspend2&amp;quot;, is an implementation of suspend-to-disk functionality in the form of a Linux kernel patch and several userspace utilities. It is an alternative to both the BIOS-driven hibernation feature found on most ThinkPad models, and the [[swsusp]] &amp;quot;software suspend&amp;quot; functionality built into recent Linux kernels.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
Compared to the alternatives, Software Suspend 2 has some unique [http://suspend2.net/features features]:&lt;br /&gt;
* The ability to compress the memory image as it is written to disk, thereby reducing suspend and resume times.&lt;br /&gt;
* Saving the memory image into a swap file, a swap partition or normal a file on any filesystem.&lt;br /&gt;
* Cancelling a suspend in progress&lt;br /&gt;
* Control over amount of RAM written to disk -- can (optionally) discard cached disk blocks to reduce suspend and resume times&lt;br /&gt;
* Textual and graphical UI (optional)&lt;br /&gt;
* Improved reliability under some circumstances -- if the alternatives don't work, try this one!&lt;br /&gt;
&lt;br /&gt;
Since it is implemented purely in software, Software Suspend 2 is in principle machine-independent and should work on all modern ThinkPad models. However, in some cases problematic drivers need to be unloaded before suspension. This is handled by the &amp;lt;tt&amp;gt;hibernate&amp;lt;/tt&amp;gt; script (see below).&lt;br /&gt;
&lt;br /&gt;
==Availability / Project Homepage==&lt;br /&gt;
* [http://suspend2.net/ Project home page]&lt;br /&gt;
&lt;br /&gt;
==Model-specific Status==&lt;br /&gt;
* ThinkPad {{T43}} and {{T42}}: works&lt;br /&gt;
* ThinkPad {{T21}}: works; need to unload the sound module (&amp;lt;tt&amp;gt;snd-cs46xx&amp;lt;/tt&amp;gt;) on suspend. May want to enable UseDummyXServer if running X.&lt;br /&gt;
* ThinkPad {{X41T}}: works; requires SATA resume patch and the SATA drivers compiled as built-in or in initrd (see [[Problems with SATA and Linux]]) and a {{path|hibernate.conf}} fix (see [[Installing Fedora Core 4 on a ThinkPad X41 Tablet]])&lt;br /&gt;
* ThinkPad {{X22}}: works (see [[Installing Ubuntu (Breezy) on a ThinkPad X22]])&lt;br /&gt;
* ThinkPad {{G41}}: works (see [[Installing Debian on a ThinkPad G41]])&lt;br /&gt;
* ThinkPad {{R52}}: works (requires SWSusp version &amp;gt;= 2.2.7. FC5 with kernel [http://mhensler.de/swsusp/download_en.php 2.6.17-1.2145_1.rhfc5.cubbi_suspend2])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;border:1px; background:grey;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Model &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Type &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Operating System &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Kernel Version&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Suspend2 Version&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Success&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Note&lt;br /&gt;
|- style=&amp;quot;background: white;&amp;quot;&lt;br /&gt;
|ThinkPad {{T23}}&lt;br /&gt;
| 2647-9KU &lt;br /&gt;
| Debian Etch&lt;br /&gt;
| 2.6.17.4&lt;br /&gt;
| 2.2.7&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Installation Instructions==&lt;br /&gt;
The [http://suspend2.net/ project home page] has a detailed HOWTO and FAQ. The following are just a few highlights.&lt;br /&gt;
&lt;br /&gt;
===Patching mkinitrd===&lt;br /&gt;
If your systems uses an &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file (most do), you'll need to patch or replace your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt;-creation script.&lt;br /&gt;
&lt;br /&gt;
*{{Fedora}} 4: in {{path|/sbin/mkinitrd}}, find this line:&lt;br /&gt;
 echo &amp;quot;echo Mounted /proc filesystem&amp;quot; &amp;gt;&amp;gt; $RCFILE&lt;br /&gt;
and add the following immediately afterwards:&lt;br /&gt;
 echo &amp;quot;echo &amp;gt; /proc/suspend2/do_resume&amp;quot; &amp;gt;&amp;gt;$RCFILE&lt;br /&gt;
*{{Fedora}} 5: in {{path|/sbin/mkinitrd}}, find this line:&lt;br /&gt;
 mount -t proc /proc /proc&lt;br /&gt;
and add the following immediately afterwards:&lt;br /&gt;
 echo &amp;gt; /proc/suspend2/do_resume &lt;br /&gt;
*{{Debian}}: copy [http://dagobah.ucc.asn.au/swsusp/2.0.0.102/swsusp-initrd.sh swsusp-initrd.sh] script to your {{path|/etc/mkinitrd/scripts}} directory before creating initrd image.&lt;br /&gt;
&lt;br /&gt;
Make sure you regenerate your &amp;lt;tt&amp;gt;initrd&amp;lt;/tt&amp;gt; file (using &amp;lt;tt&amp;gt;mkinitrd&amp;lt;/tt&amp;gt; or by reinstalling the kernel) after patching &amp;lt;tt&amp;gt;mkinitrd&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Hibernate script===&lt;br /&gt;
Software Suspend 2 works best with the &amp;lt;tt&amp;gt;hibernate&amp;lt;/tt&amp;gt; script (available from the project home page), which takes care of auxiliary tasks needed on many systems (e.g., unloading problematic modules and restoring video modes).&lt;br /&gt;
&lt;br /&gt;
====Availability====&lt;br /&gt;
*{{Gentoo}}: emerge hibernate-script&lt;br /&gt;
*{{Fedora}}: kernel and hibernate RPMs are available at http://mhensler.de/swsusp/&lt;br /&gt;
*{{Ubuntu}}: packages for Ubuntu Dapper Drake (kernel, hibernate, suspend2ui-userui): http://dagobah.ucc.asn.au/dapper-kernels/&lt;br /&gt;
*PLD: poldek -iv hibernate&lt;br /&gt;
*Other: check the home page for packages (deb, i386 rpm, tgz, and source rpm) from http://www.suspend2.net&lt;br /&gt;
&lt;br /&gt;
==Configuration tips==&lt;br /&gt;
===RediSafe-like functionality===&lt;br /&gt;
The hibernate functionality on some ThinkPad BIOSes offers the useful &amp;quot;RediSafe&amp;quot; feature, which suspends to both RAM and disk. This way you get quick resumes (directly from RAM), plus the safey of suspend-to-disk in case the battery runs out.&lt;br /&gt;
&lt;br /&gt;
Software Suspend 2 provides this feature too; simply add the following to {{path|/etc/hibernate/hibernate.conf}}:&lt;br /&gt;
 PowerdownMethod 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Patches]] [[Category:Drivers]]&lt;/div&gt;</summary>
		<author><name>Toni</name></author>
		
	</entry>
	<entry>
		<id>https://www.thinkwiki.org/w/index.php?title=Problem_with_unauthorized_MiniPCI_network_card&amp;diff=23114</id>
		<title>Problem with unauthorized MiniPCI network card</title>
		<link rel="alternate" type="text/html" href="https://www.thinkwiki.org/w/index.php?title=Problem_with_unauthorized_MiniPCI_network_card&amp;diff=23114"/>
		<updated>2006-07-10T20:05:07Z</updated>

		<summary type="html">&lt;p&gt;Toni: another success with X31 and matther garret's code&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Problem Description==&lt;br /&gt;
Although the MiniPCI slot is an industry standard and can accept any MiniPCI adapter, the IBM BIOS is set to only allow you to boot with an 'authorized' adapter installed. Attempts to install an unsupported card will result in the following message:&lt;br /&gt;
&lt;br /&gt;
   1802: Unauthorized network card is plugged in - Power off and remove the miniPCI network card.&lt;br /&gt;
&lt;br /&gt;
This is because the card's sub-vendor PCI-ID (which can be seen using ''lspci -v'') are checked against a [[Wikipedia:Whitelist|whitelist]] in the BIOS.  IBM's reasoning for this is that the combination of MiniPCI card and the integrated antenna in the ThinkPad needs to be certified by the US FCC (Federal Communications Commission).{{footnote|1}} or similar agencies in other countries.&lt;br /&gt;
&lt;br /&gt;
==Affected Models==&lt;br /&gt;
All machines with integrated WiFi, or machines with WiFi added&lt;br /&gt;
&lt;br /&gt;
==Affected Operating Systems==&lt;br /&gt;
All - problem is in the BIOS&lt;br /&gt;
&lt;br /&gt;
==Status==&lt;br /&gt;
* Workarounds exist for most affected models.&lt;br /&gt;
&lt;br /&gt;
==Solutions==&lt;br /&gt;
It may be possible to use the computer with the unauthorized card deactivated (but not removed).  Press {{key|F1}} to enter the BIOS and deactivate the WLAN card, then attempt to boot with the card disabled.  This does not make the wireless card work, but it may allow you to boot the computer normally.&lt;br /&gt;
&lt;br /&gt;
{{NOTE|Any of the following solutions should suffice to make the wireless card useable.  You only need to perform one of them.}}&lt;br /&gt;
&lt;br /&gt;
* You may can modify the BIOS whitelist to include the PCI-ID of the card you wish to use.  The complete instructions for this procedure are [http://www.paul.sladen.org/thinkpad-r31/wifi-card-pci-ids.html here].&lt;br /&gt;
{{WARN|It is dangerous to mess with your BIOS, you can easily make your machine unbootable, proceed with caution!}}&lt;br /&gt;
&lt;br /&gt;
* A safer method than modifying the BIOS is modifying the PCI-ID of the wlan card.  The instructions are [http://www.dagarlas.org/stuff/computing/article0001.php here].  This page is for Atheros-based cards and HP notebooks, but it applies to Thinkpads as well.  It also has links on how to edit the PCI-ID on Intel Pro Wireless cards.  &lt;br /&gt;
{{NOTE|Modifying your PCI-ID will require either a laptop without a BIOS lock or a PCI adapter for your desktop.  Also, this procedure can render your card useless, but that's better than bricking your laptop.}}&lt;br /&gt;
&lt;br /&gt;
* You can use the [[Problem with error 01C9 - More than one Ethernet devices | no-1802 and no-01C9 Linux Live CD]] without applying the no-01C9 patch. It is very convenient to use and based on the C code below.&lt;br /&gt;
&lt;br /&gt;
* You can use the DOS [http://jcnp.pku.edu.cn/~shadow/1802/no-1802.com no-1802] utility, written by Tisheng Chen.{{footnote|2}} It will set a certain bit in the CMOS memory which disables the whitelist check, but it has been reported not to work on the latest machines, such as the T43&lt;br /&gt;
&lt;br /&gt;
* You can compile and run (as root) the following C-code, which was written by Matthew Garrett. It was based on the code written by Vojtech Pavlik, which in turn was based on the assembly used in the no-1802 program. {{footnote|3}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;sys/types.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;unistd.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;sys/stat.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;fcntl.h&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 int main(void)&lt;br /&gt;
 {&lt;br /&gt;
   int fd;&lt;br /&gt;
   unsigned char data;&lt;br /&gt;
   &lt;br /&gt;
   fd = open(&amp;quot;/dev/nvram&amp;quot;, O_RDWR);&lt;br /&gt;
   if (fd==-1) {&lt;br /&gt;
     printf(&amp;quot;Opening /dev/nvram failed\n&amp;quot;);&lt;br /&gt;
     return 1;&lt;br /&gt;
   }&lt;br /&gt;
   printf(&amp;quot;Disabling WiFi whitelist check.\n&amp;quot;); &lt;br /&gt;
 &lt;br /&gt;
   /* BIG INFORMATIONAL WARNING */ &lt;br /&gt;
   /* The linux nvram driver doesn't give access to the first 14 bytes of&lt;br /&gt;
      the CMOS. As a result, we seek to 0x5c rather than 0x6a. If you're &lt;br /&gt;
      implementing this under another OS, then you'll have to go to whichever&lt;br /&gt;
      address is appropriate for your access method */&lt;br /&gt;
 &lt;br /&gt;
   lseek(fd, 0x5c, SEEK_SET);&lt;br /&gt;
   read(fd, &amp;amp;data, 1);&lt;br /&gt;
   printf(&amp;quot;CMOS address 0x5c: %02x-&amp;gt;&amp;quot;, data);&lt;br /&gt;
   data |= 0x80;&lt;br /&gt;
   printf(&amp;quot;%02x\n&amp;quot;, data);&lt;br /&gt;
   lseek(fd, 0x5c, SEEK_SET);&lt;br /&gt;
   if (write(fd, &amp;amp;data, 1)&amp;lt;0) {&lt;br /&gt;
     printf(&amp;quot;Unable to write to /dev/nvram - hack failed\n&amp;quot;);&lt;br /&gt;
     close(fd);&lt;br /&gt;
     return 2;&lt;br /&gt;
   }&lt;br /&gt;
   close(fd);&lt;br /&gt;
   printf(&amp;quot;Done.\n&amp;quot;);&lt;br /&gt;
   return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
{{NOTE|On T43's and probabily others, the BIOS hacks and the &amp;quot;no-1802&amp;quot; utility don't work.}}&lt;br /&gt;
&lt;br /&gt;
==Sucessful BIOS Modifications==&lt;br /&gt;
{{WARN|This table is meant to give users an idea of what models have been successfully modified and how. As stated before, it is dangerous to mess with your BIOS, you can easily make your machine unbootable. Please proceed with caution!}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following table contains information about ThinkPad models that have been sucessfully modified to run an unauthorized Mini PCI card. {{footnote|4}} &lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;border:1px; background:grey;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Model &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Type &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| BIOS Version &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Operating System &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Method &lt;br /&gt;
! style=&amp;quot;background:#efefef;&amp;quot;| Success&lt;br /&gt;
|- style=&amp;quot;background: white;&amp;quot;&lt;br /&gt;
|ThinkPad A31p&lt;br /&gt;
| 2653-R9G &lt;br /&gt;
| 1.09 (04-15-2005) &lt;br /&gt;
| Debian Etch / Windows XP Pro SP2&lt;br /&gt;
| no-1802 Linux Live CD&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot; &lt;br /&gt;
| ThinkPad R31&lt;br /&gt;
| 2656-6FG &lt;br /&gt;
| 3.11 (12-01-2004) &lt;br /&gt;
| Windows XP Boot Disk &lt;br /&gt;
| no-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad R40&lt;br /&gt;
| 2896-J3U &lt;br /&gt;
| 1.24 (10-18-2005) &lt;br /&gt;
| Fedora Core 4 &lt;br /&gt;
| Vojtech Pavlik code&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad R40&lt;br /&gt;
| 2681-L7U &lt;br /&gt;
| 1.24 (10-18-2005) &lt;br /&gt;
| Windows XP Pro &lt;br /&gt;
| no-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad R40&lt;br /&gt;
| 2681-CFM &lt;br /&gt;
| 1.24 (10-17-2005) &lt;br /&gt;
| Gentoo &amp;amp; XP Pro&lt;br /&gt;
| no-1802 utility (boot from USB key to apply)&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad R40&lt;br /&gt;
| 2724 &lt;br /&gt;
| 1.30 (10-19-2005) &lt;br /&gt;
| FreeBSD 6.1-p1&lt;br /&gt;
| code by Matthew Garrett, compiled and run on bactrack&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad R50p&lt;br /&gt;
| 1832-2AG&lt;br /&gt;
| 3.19 (13-10-2005)&lt;br /&gt;
| Ubuntu 5.10 (kernel 2.6.12-10-686)&lt;br /&gt;
| Vojtech Pavlik code&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
|ThinkPad R51&lt;br /&gt;
| 2887-W2C &lt;br /&gt;
| 1.27 (03-03-2006) &lt;br /&gt;
| Windows XP Pro SP2&lt;br /&gt;
| no-1802 utility (boot from USB key to apply)&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes &lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T30 &lt;br /&gt;
| 2366-97G &lt;br /&gt;
| 2.09 (08-08-2005) &lt;br /&gt;
| Windows XP Pro &lt;br /&gt;
| no-1802 utility &lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T30 &lt;br /&gt;
| 2366-N6G &lt;br /&gt;
| 2.09 (08-08-2005) &lt;br /&gt;
| Windows XP Pro &lt;br /&gt;
| no-1802 utility &lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T30 &lt;br /&gt;
| 2366-N6G &lt;br /&gt;
| 2.10 (26-06-2006) &lt;br /&gt;
| Windows XP Pro &lt;br /&gt;
| no-1802 utility &lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T40&lt;br /&gt;
| 2373-82U &lt;br /&gt;
| 3.18 (09-15-2005)&lt;br /&gt;
| Windows XP/ SUSE 10.1&lt;br /&gt;
| No-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T40&lt;br /&gt;
| 2373-PU7 &lt;br /&gt;
| 3.21 (09-12-2006)&lt;br /&gt;
| Windows XP Professional&lt;br /&gt;
| No-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T40&lt;br /&gt;
| 2373-42G &lt;br /&gt;
| 3.20 (11-05-2006) &lt;br /&gt;
| Windows 2000 Pro &lt;br /&gt;
| no-1802 utility &lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
|ThinkPad T41&lt;br /&gt;
| 2373-9HU&lt;br /&gt;
| n/a&lt;br /&gt;
| Ubuntu 6.10 w/Atheros 5212 a/b/g&lt;br /&gt;
| no-1802 Linux Live CD&lt;br /&gt;
! style=&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T42&lt;br /&gt;
| 2378-EXU &lt;br /&gt;
| 3.18 (09-15-2005)&lt;br /&gt;
| Windows XP Pro SP2&lt;br /&gt;
| No-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X30 &lt;br /&gt;
| 2672-41j &lt;br /&gt;
| 1.08 (08-09-2005)&lt;br /&gt;
| Gentoo Kernel 2.6.15 &lt;br /&gt;
| no-1802 utility&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X31 &lt;br /&gt;
| 2673-C27 &lt;br /&gt;
| 3.02 (22-09-2005) &lt;br /&gt;
| Ubuntu 5.10 (kernel 2.6.12-9-386) &lt;br /&gt;
| Matthew Garrett code {{footnote|3}}&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X31 &lt;br /&gt;
| 2672-1UG &lt;br /&gt;
| 3.02 (22-09-2005) &lt;br /&gt;
| FreeBSD 6-STABLE&lt;br /&gt;
| no-1802 Linux Live CD&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X31 &lt;br /&gt;
| 2672-CXU &lt;br /&gt;
| 2.04&lt;br /&gt;
| Windows XP Pro&lt;br /&gt;
| no-1802 DOS boot CD&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X31 &lt;br /&gt;
| 2672-PBU &lt;br /&gt;
| 3.02&lt;br /&gt;
| Windows XP Pro&lt;br /&gt;
| no-1802 DOS boot CD&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad X31 &lt;br /&gt;
| 2672-C8G&lt;br /&gt;
| 3.02&lt;br /&gt;
| Debian (kernel 2.6.16.20-386)&lt;br /&gt;
| Matthew Garrett code {{footnote|3}}&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes&lt;br /&gt;
|- style=&amp;quot;background: white; color:black;&amp;quot;&lt;br /&gt;
| ThinkPad T40 &lt;br /&gt;
| 2373-7CU &lt;br /&gt;
| 3.21&lt;br /&gt;
| Windows XP Pro&lt;br /&gt;
| no-1802 Linux Live CD&lt;br /&gt;
! style =&amp;quot;color:green;&amp;quot;| Yes!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==External Sources==&lt;br /&gt;
* Additional Information about &amp;quot;Unauthorised&amp;quot; MiniPCI adapters can be found on [http://www.srcf.ucam.org/~mjg59/thinkpad/wireless.html Matthew Garrett's website].&lt;br /&gt;
&lt;br /&gt;
* Thinkpad Mini PCI Wireless [http://www.srcf.ucam.org/~mjg59/thinkpad/tables.html compatibility matrix].&lt;br /&gt;
&lt;br /&gt;
* Bootable &amp;quot;no-1802&amp;quot; [http://www.command-tab.com/2006/02/26/unauthorized-wireless-cards/ CD and floppy image]&lt;br /&gt;
&lt;br /&gt;
{{footnotes|&lt;br /&gt;
#This is explained in a [http://lkml.org/lkml/2003/6/3/162 message to the LKML] and subsequently [http://lkml.org/lkml/2003/6/9/50 clarified].&lt;br /&gt;
#The no-1802 tool was announced and explaned in a [http://mailman.linux-thinkpad.org/pipermail/linux-thinkpad/2004-June/018253.html message to the Linux-Thinkpad ML].&lt;br /&gt;
#Vojtech Pavlik's C-code was originally posted in a [http://lkml.org/lkml/2004/6/13/69 message to the LKML]. It was based on the assembly used in the no-1802 program. Matthew Garrett [http://www.srcf.ucam.org/~mjg59/thinkpad/hacks.html rewrote] the code to provide more error checking.&lt;br /&gt;
#This information has been added by users. Please feel free to add systems if you have had personal success or failure.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Toni</name></author>
		
	</entry>
</feed>