Difference between revisions of "Installing OpenSUSE 10.0 on a ThinkPad X41"

From ThinkWiki
Jump to: navigation, search
(removed suspend-to-ram from "doesn't work yet".)
(see also: added external sources section)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
Installing {{OpenSUSE}} 10.0 on your {{X41}} is straightforward.
 
Installing {{OpenSUSE}} 10.0 on your {{X41}} is straightforward.
  
SUSE uses a patched 2.6.13 kernel, so most of the things described here should also work on other distros if you're prepared to roll your own kernel, but the amount of integration the SUSE folks did (nice GUI tools, YaST configurator) is what makes it so painless and fun.
+
OpenSUSE uses a patched 2.6.13 kernel, and most of the things described here should also work on other distros if you're prepared to roll your own kernel, but the amount of integration the SUSE folks did (nice GUI tools, YaST configurator) is what makes it so painless and fun.
  
 
==Installation==
 
==Installation==
Line 16: Line 16:
 
* Battery and AC status
 
* Battery and AC status
 
* Bluetooth enable/disable via {{key|Fn}}{{key|F5}}
 
* Bluetooth enable/disable via {{key|Fn}}{{key|F5}}
* Bluetooth
+
* Bluetooth modem (tested with UMTS cell phone Sony Ericsson K600i)
 
* WLAN  
 
* WLAN  
 
* Audio playback/recording.
 
* Audio playback/recording.
Line 33: Line 33:
 
  keycode 234 = XF86Back
 
  keycode 234 = XF86Back
  
===Getting suspend-to-ram to work...===
+
===Getting suspend-to-RAM to work...===
I checked it only on Ubuntu Breezy Badger, but it seems, that if you compile kernel 2.6.15 with
 
SATA suspend patch http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch and also add patch ata_idle_wait after Andrew Morton's advice at http://lkml.org/lkml/2005/11/16/403, then you should have working suspend-to-RAM.
 
  
You may also want to use 2.6.15 because it has a driver to Harddisk Protection System built-in.
+
====Good news - it works in principle:====
 +
:''I checked it only on Ubuntu Breezy Badger, but it seems, that if you compile kernel 2.6.15 with SATA suspend patch http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch and also add patch ata_idle_wait after Andrew Morton's advice at  http://lkml.org/lkml/2005/11/16/403, then you should have working suspend-to-RAM.''
  
The first patch fixes problem with screen not being switched on, the second fixes cryptic error message:
+
:''You may also want to use 2.6.15 because it has a driver to Harddisk Protection System built-in.''
"ata: abnormal status 0x80 on port 0x1F7".
+
 
 +
:''The first patch fixes problem with screen not being switched on, the second fixes cryptic error message: "ata: abnormal status 0x80 on port 0x1F7".''
 +
 
 +
====Suspend-to-RAM on OpenSUSE====
 +
 
 +
Currently suspend-to-RAM will not work with the stock SUSE kernel. It can be made to work with a custom kernel package provided by Jan Engelhardt of [http://alphagate.hopto.org/AS_kernel/ alphagate.hopto.org]. You can download the RPM [ftp://ftp4.gwdg.de/pub/linux/misc/suser-jengelh/SUSE-10.0/i586/kernel-default-2.6.16-AS24.i586.rpm here].
 +
 
 +
Before you enable suspend-to-RAM, be sure to add the kernel parameter
 +
acpi_sleep=s3_bios
 +
to your /boot/grub/menu.lst, otherwise your screen will stay blank when the system resumes.
 +
 
 +
{{WARN|This new kernel will temporarily break your WLAN support.}}
 +
 
 +
The 2.6.16 kernel contains a newer (and better) [[ipw2200]] module which requires an updated firmware package. You can download it [http://ipw2200.sourceforge.net/firmware.php?fid=6 from the ipw2200.sourceforge.net project site].
 +
 
 +
Then drop it into the directory where the hotplug firmware loader is expecting it (may be different on other distros):
 +
 
 +
{{cmdroot|cd /lib/firmware}}
 +
 
 +
{{cmdroot|tar xvzf /where/you/downloaded/ipw2200-fw-2.4.tar.gz}}
 +
 
 +
Now that the firmware is in place, the interface should work the next time you boot (or reload the module).
  
 
===Getting Dual head Xinerama to work on X41===
 
===Getting Dual head Xinerama to work on X41===
Line 46: Line 66:
  
 
Question: Did anyone get 1280x1024 on external flat panel and 1024x768 on internal monitor on the same desktop with DRI? I happen to succeed with Xinerama, but not with cloning.
 
Question: Did anyone get 1280x1024 on external flat panel and 1024x768 on internal monitor on the same desktop with DRI? I happen to succeed with Xinerama, but not with cloning.
 +
 +
===Switching the WLAN radio===
 +
 +
There is no pre-defined function key to switch the WLAN radio transmitter on and off during runtime (unlike Bluetooth, which uses {{key|Fn}}{{key|F5}}).
 +
 +
The [[Ipw2200]] page has detailed instructions on [[Ipw2200#Power Management | how to do it via sysctl]].
  
 
==The following things don't work yet:==
 
==The following things don't work yet:==
 
* Dual Head in Xinerama mode.
 
* Dual Head in Xinerama mode.
  
==Not tested yet:==
+
 
* serious bluetooth usage
 
  
 
==Oddities:==
 
==Oddities:==
Line 57: Line 82:
  
 
==Open Issues:==
 
==Open Issues:==
* How can one disable the WLAN hardware in order to save battery power? Setting the WLAN interface to "Radio Off" in the BIOS requires a reboot in order to use WLAN. Bluetooth can be switched on and off at runtime by using {{key|Fn}}{{key|F5}}, I'm looking for something similar for the WLAN radio transmitter.
+
 
 
* Try manual X11 config to enable Xinerama.
 
* Try manual X11 config to enable Xinerama.
 
* Try making use of the [[How to get special keys to work | special keys]].
 
* Try making use of the [[How to get special keys to work | special keys]].
Line 65: Line 90:
 
Additional hints about OpenSuSE 10 (although on different hardware) can be found here:
 
Additional hints about OpenSuSE 10 (although on different hardware) can be found here:
 
[[Installing SUSE 10 on a ThinkPad TransNote]]
 
[[Installing SUSE 10 on a ThinkPad TransNote]]
 +
 +
=External Sources=
 +
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)].

Latest revision as of 12:04, 26 October 2006

Installing OpenSUSE 10.0 on your X41 is straightforward.

OpenSUSE uses a patched 2.6.13 kernel, and most of the things described here should also work on other distros if you're prepared to roll your own kernel, but the amount of integration the SUSE folks did (nice GUI tools, YaST configurator) is what makes it so painless and fun.

Installation

You might want to shrink the existing Windows partition in case you would later want to revert back to Windows in order to find out about hardware peculiarities and maybe get firmware installed, but since things just work under OpenSUSE 10.0, you might as well nuke it.

During the SUSE installation process, be sure to check "Mobile Computing" in addition to your usual choice of packages.

The following things Just Work(tm):

  • suspend to disk
  • suspend to RAM works with the current (Feb. 2006) SuSE kernel updates
  • mute, volume up and down buttons (but that's probably a hardware thing since it does not affect the ALSA mixer)
  • FnPgUp switches on the light (again, probably done in hardware)
  • acpid gets events from the lid, power button and FnF1 to Fn12, some of which you can assign to suspend, poweroff etc. in the yast power management configurator
  • Battery and AC status
  • Bluetooth enable/disable via FnF5
  • Bluetooth modem (tested with UMTS cell phone Sony Ericsson K600i)
  • WLAN
  • Audio playback/recording.
  • 3D graphics acceleration (enabled via YaST->Graphics Card and Monitor). Works, but causes the fan to stay on almost all the time, although at low rpm.
  • External VGA works in Clone mode after activating Dual Head support in YaST. For some reason, Xinerama didn't work so far, it stays greyed out. The external VGA on/off button FnF7 does not do anything.
  • UltraBase X4 docking station (UltraBay Slim drive not tested)

These things work, but require extra configuration

Modem

Numlock and Browse keys

To get numlock and browse keys to work, please add the following lines to $HOME/.Xmodmap:

keycode  77 = Num_Lock
keycode 233 = XF86Forward
keycode 234 = XF86Back

Getting suspend-to-RAM to work...

Good news - it works in principle:

I checked it only on Ubuntu Breezy Badger, but it seems, that if you compile kernel 2.6.15 with SATA suspend patch http://linux.spiney.org/system/files?file=02_libata_passthru.fixed.patch and also add patch ata_idle_wait after Andrew Morton's advice at http://lkml.org/lkml/2005/11/16/403, then you should have working suspend-to-RAM.
You may also want to use 2.6.15 because it has a driver to Harddisk Protection System built-in.
The first patch fixes problem with screen not being switched on, the second fixes cryptic error message: "ata: abnormal status 0x80 on port 0x1F7".

Suspend-to-RAM on OpenSUSE

Currently suspend-to-RAM will not work with the stock SUSE kernel. It can be made to work with a custom kernel package provided by Jan Engelhardt of alphagate.hopto.org. You can download the RPM here.

Before you enable suspend-to-RAM, be sure to add the kernel parameter

acpi_sleep=s3_bios

to your /boot/grub/menu.lst, otherwise your screen will stay blank when the system resumes.

ATTENTION!
This new kernel will temporarily break your WLAN support.

The 2.6.16 kernel contains a newer (and better) ipw2200 module which requires an updated firmware package. You can download it from the ipw2200.sourceforge.net project site.

Then drop it into the directory where the hotplug firmware loader is expecting it (may be different on other distros):

# cd /lib/firmware

# tar xvzf /where/you/downloaded/ipw2200-fw-2.4.tar.gz

Now that the firmware is in place, the interface should work the next time you boot (or reload the module).

Getting Dual head Xinerama to work on X41

On Ubuntu, you can use advice from http://eko.one.pl/index.php?page=Xinerama to configure two devices and two screens and omit Option "Xinerama" "On" line to get xinerama working on X.org 6.8.

Question: Did anyone get 1280x1024 on external flat panel and 1024x768 on internal monitor on the same desktop with DRI? I happen to succeed with Xinerama, but not with cloning.

Switching the WLAN radio

There is no pre-defined function key to switch the WLAN radio transmitter on and off during runtime (unlike Bluetooth, which uses FnF5).

The Ipw2200 page has detailed instructions on how to do it via sysctl.

The following things don't work yet:

  • Dual Head in Xinerama mode.


Oddities:

  • In order to get into the BIOS, you can either hit F1 or press the weird blue Access IBM Button, and then choose "BIOS" in IBM's pre-boot environment. There is no message on bootup about the F1 option, but it works.

Open Issues:

see also

Additional hints about OpenSuSE 10 (although on different hardware) can be found here: Installing SUSE 10 on a ThinkPad TransNote

External Sources