Difference between revisions of "Installing Fedora 7 on a ThinkPad X41 Tablet"

From ThinkWiki
Jump to: navigation, search
(Configuration)
(Tested and Verified on Fedora 7)
 
(22 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Page Not Accurate! =
+
= Page May Not Be Accurate! =
This page is not accurate; I've just copied it over from [[Installing Fedora Core 5 on a ThinkPad X41 Tablet]] in order to start editing/updating it for Fedora 7. Please feel free to help out with that if you stumble across this page while it is still a work in progress.
+
This page may not be completely accurate; it was originally copied from [[Installing Fedora Core 5 on a ThinkPad X41 Tablet]] and may still be a work in progress.
  
 
== Success Chart ==
 
== Success Chart ==
Line 18: Line 18:
 
| CRT / Projector ||class="diff-addedline"| Yes ||  
 
| CRT / Projector ||class="diff-addedline"| Yes ||  
 
|-
 
|-
| Screen Rotation ||class="diff-addedline"| Yes ||  
+
| Screen Rotation ||class="diff-addedline"| Yes || Resizes display, but not workspace properly.
 
|-
 
|-
 
| Stylus ||class="diff-addedline"| Yes || Requires configuration changes.
 
| Stylus ||class="diff-addedline"| Yes || Requires configuration changes.
Line 29: Line 29:
 
|colspan=2| Audio ||class="diff-addedline"| Yes ||
 
|colspan=2| Audio ||class="diff-addedline"| Yes ||
 
|-
 
|-
|rowspan=2| Wireless || 802.11b/g ||class="diff-addedline"| Yes ||
+
|rowspan=3| Wireless || 802.11b/g ||class="diff-addedline"| Yes ||
 
|-
 
|-
 
| Bluetooth ||class="diff-context"| Not Tested (should work) || See [[Installing_Fedora_Core_4_on_a_ThinkPad_X41_Tablet#Bluetooth|Bluetooth on Fedora Core 4]]
 
| Bluetooth ||class="diff-context"| Not Tested (should work) || See [[Installing_Fedora_Core_4_on_a_ThinkPad_X41_Tablet#Bluetooth|Bluetooth on Fedora Core 4]]
 +
|-
 +
| Infrared ||class="diff-addedline"| Yes || irda, /etc/modprobe.conf
 
|-
 
|-
 
|rowspan=2|Extra Buttons || Keyboard Section ||class="diff-addedline"| Yes || ibm-acpi driver
 
|rowspan=2|Extra Buttons || Keyboard Section ||class="diff-addedline"| Yes || ibm-acpi driver
Line 57: Line 59:
 
==== Desktop Effects ====
 
==== Desktop Effects ====
 
'Desktop Effects' work but are not enabled by default; to enable them run 'desktop-effects' and click 'enable desktop effects'. Note that these conflict with working rotation- you get either desktop effects or tablet rotation; not both.
 
'Desktop Effects' work but are not enabled by default; to enable them run 'desktop-effects' and click 'enable desktop effects'. Note that these conflict with working rotation- you get either desktop effects or tablet rotation; not both.
 +
 +
==== Tablet Buttons ====
 +
 +
Activate mappings for the tablet buttons by adding the following lines to {{path|/etc/rc.d/rc.local}}:
 +
 +
# Map tablet hardware buttons
 +
setkeycodes 6e 109 6d 104 69 28 6b 1 6c 120
  
 
==== Enabling the Stylus ====
 
==== Enabling the Stylus ====
Line 95: Line 104:
 
  '''EndSection'''
 
  '''EndSection'''
  
==== Enabling Screen Rotation ====
+
If the style stops working after a suspend/resume cycle, (as root) create the following file {{path|/usr/lib/pm-utils/sleep.d/40wacom}}
Download (and verify) the following script into your path:
+
 
 +
#!/bin/bash
 +
 +
. /usr/lib/pm-utils/functions
 +
 +
suspend_wacom() {
 +
}
 +
 +
resume_wacom() {
 +
    # Reset serial port for stylus
 +
    setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
 +
}
 +
 +
case "$1" in
 +
        hibernate|suspend)
 +
                suspend_wacom
 +
                ;;
 +
        thaw|resume)
 +
                resume_wacom
 +
                ;;
 +
        *)
 +
                ;;
 +
esac
 +
 +
exit $?
 +
 
 +
 
 +
=== Wireless Network ===
 +
 
 +
The wireless card works out of the box- no additional drivers necessary.
 +
 
 +
Network Manager is installed by default, but may not be enabled by default depending on your mode of installation. To turn it on, do as root:
 +
 
 +
{{cmdroot|chkconfig NetworkManager on}}
 +
 
 +
=== Infrared ===
 +
 
 +
The infrared subsystem supports NSC Fast IR (FIR), which transmits at speeds of up to 4 Mbps.
 +
 
 +
First things first: Go to your BIOS and enable the infrared and manually set up IO to be '''0x2f8''' and IRQ to be '''3'''. Typically, the default manual config is this so you probably don't need to edit it. Then go ahead an grab any irda-related packages from YUM.
 +
 
 +
Then I copied the section on Infrared for the T60:
 +
 
 +
Edit {{path|/etc/modprobe.conf}}, add the following two lines:
 +
<pre>
 +
alias irda0 nsc-ircc
 +
options nsc-ircc dongle_id=0x09
 +
</pre>
  
{{cmduser|wget http://www.cs.cornell.edu/~saikat/rotate}}
+
Edit {{path|/etc/sysconfig/irda}}:
{{cmduser|chmod a+x rotate}}
+
<pre>
 +
IRDA=yes
 +
DEVICE=irda0
 +
DISCOVERY=yes
 +
</pre>
  
Rotate the screen using the script:
+
Start IRDA
  
{{cmduser|rotate -h}}
+
{{cmdroot|service irda start}}
Useage:
 
    rotate [left|right|inverted|normal]
 
 
 
If no option is given, rotates the screen 90 degrees to the right.
 
  
To bind the tablet's {{key|Rotate}} button to rotate the screen on-the-fly, add the following line to {{path|/etc/X11/Xmodmap}}
+
If You want IRDA to be enabled during system boot, turn it on like this:
keycode 139 = XF86RotateWindows
 
  
{{HINT|'''Update:''' Check to make sure you are using the new <tt>setkeycodes</tt> line in the Tablet Buttons section (one with <tt>6c 120</tt> in the command).}}
+
{{cmdroot|chkconfig irda on}}
  
=== Wireless Network ===
+
That should set you up. You can then set up things like remote controls that operate through the LIRC daemon, which Fedora has a package and a kernel module for. This can useful for xmms, which has a plugin to allow you to change songs with the remote and other nifty features. You can define the controls as well. The choice is yours.
  
The wireless card works out of the box- no additional drivers necessary.
+
For more information, see [http://lirc.sourceforge.net Linux Infrared Remote Control Project]
  
 
=== tpb/on-screen display ===
 
=== tpb/on-screen display ===
Line 128: Line 183:
 
Once installed, no configuration is necessary.
 
Once installed, no configuration is necessary.
  
 +
=== Fingerprint Reader ===
 +
 +
The fingerprint reader is supported by the thinkfinger package.
 +
 +
To install thinkfinger execute:
 +
 +
{{cmdroot|yum install thinkfinger}}
 +
 +
=== Suspend in memory and disk ===
 +
swsusp nicely works in Fedora Core 7.
 +
 +
to suspend on disk add the line
 +
<pre>
 +
resume=/dev/sdaN
 +
</pre>
 +
 +
where N is the number of your swap partition
 +
to your kernel parameters
 +
 +
example with grub:
 +
 +
edit {{path|/boot/grub/grub.conf}} such that it looks like:
 +
<pre>
 +
kernel /boot/vmlinuz-xxxxxxx ro resume=/dev/sda6  rhgb quiet
 +
</pre>
 +
to suspend in memory you have just to fix a problem with a blank display after resuming:
 +
create and edit the file {{path|/etc/pm/config.d/config}}
 +
adding the line:
 +
<pre>
 +
DISPLAY_QUIRK_S3_BIOS="true"
 +
</pre>
 +
To use the special Fn-F? keys add the following line to your {{path|/etc/rc.local}}
 +
<pre>
 +
echo enable > /proc/acpi/ibm/hotkey
 +
</pre>
 +
Without this line only the Fn-F4 (suspend to memory) key will be enabled.
 +
 +
 +
 +
== Tablet Software ==
  
Network Manager is installed by default, but is not enabled by default. To turn it on, do as root:
+
=== Xournal ===
  
{{cmdroot|chkconfig NetworkManager on}}
+
<tt>Xournal</tt> is a gnome-based journaling tool for tablets; you can get packages for Fedora 7 from [http://koji.fedoraproject.org/koji/packageinfo?packageID=4460 here].
  
 
= Untested on Fedora 7 =
 
= Untested on Fedora 7 =
 
Information below this line is merely copied from the Fedora Core 5 guide and has not been tested on Fedora 7.
 
Information below this line is merely copied from the Fedora Core 5 guide and has not been tested on Fedora 7.
 +
 +
==== Enabling Screen Rotation ====
 +
Download (and verify) the following script into your path:
 +
 +
{{cmduser|wget http://www.cs.cornell.edu/~saikat/rotate}}
 +
{{cmduser|chmod a+x rotate}}
 +
 +
Rotate the screen using the script:
 +
 +
{{cmduser|rotate -h}}
 +
Useage:
 +
    rotate [left|right|inverted|normal]
 +
 
 +
If no option is given, rotates the screen 90 degrees to the right.
 +
 +
To bind the tablet's {{key|Rotate}} button to rotate the screen on-the-fly, add the following line to {{path|/etc/X11/Xmodmap}}
 +
keycode 139 = XF86RotateWindows
 +
 +
{{HINT|'''Update:''' Check to make sure you are using the new <tt>setkeycodes</tt> line in the Tablet Buttons section (one with <tt>6c 120</tt> in the command).}}
 +
 +
{{HINT|'''Update:''' This script uses xrandr 1.1 command line options, which only partly work with the latest Fedora 7 updates (which include xrandr 1.2). To fix the problem, edit the script, replacing 'xrandr -o' with 'xrandr --output LVDS --rotate'. I have not tested the fix on a clean install of F7, though. --LuisVilla}}
  
 
=== Hibernation ===
 
=== Hibernation ===
Line 193: Line 309:
 
  #!/bin/sh
 
  #!/bin/sh
 
  setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
 
  setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
 
=== Tablet Buttons ===
 
 
Activate mappings for the tablet buttons by adding the following lines to {{path|/etc/rc.d/rc.local}}:
 
 
# Map tablet hardware buttons
 
setkeycodes 6e 109 6d 104 69 28 6b 1 6c 120
 
 
=== Fingerprint Reader ===
 
 
The fingerprint reader is supported through the BioAPI framework. The BioAPI framework and the UPEK fingerprint reader driver can be installed as follows:
 
 
wget http://www.cs.cornell.edu/~saikat/libbiometrics-1.2.2-1.sg.i386.rpm
 
wget http://www.cs.cornell.edu/~saikat/libbiometrics-tfmess-1.0-1.sg.i386.rpm
 
yum localinstall libbiometrics-1.2.2-1.sg.i386.rpm libbiometrics-tfmess-1.0-1.sg.i386.rpm
 
 
{{NOTE|This is still work-in-progress. Currently you can enroll fingerprints, and verify them through a test application. Integrating
 
this support into pam (and therefore logins, gdm, screensaver etc.) is in the works. Those interested in developing biometrics applications
 
can install [http://www.cs.cornell.edu/~saikat/libbiometrics-devel-1.2.2-1.sg.i386.rpm libbiometrics-devel-1.2.2-1.sg.i386.rpm]. SRPMS for the above are available [http://www.cs.cornell.edu/w8/~saikat/packages/SRPMS/ here].}}
 
 
To try out enrollment and verification, run: {{cmdroot|useraddbio}}
 
  
 
=== Harddrive Active Protection System (HDAPS) ===
 
=== Harddrive Active Protection System (HDAPS) ===
Line 219: Line 314:
 
Harddrive active protection system requires the <tt>hdaps</tt> kernel module (included in stock Fedora kernels), and
 
Harddrive active protection system requires the <tt>hdaps</tt> kernel module (included in stock Fedora kernels), and
 
a kernel capable of parking disks (patch included in <tt>kernel-suspend2</tt> RPMs from the Hibernation section above).
 
a kernel capable of parking disks (patch included in <tt>kernel-suspend2</tt> RPMs from the Hibernation section above).
It also requires a userspace daemon to monitor the accleration sensor and park the disk head when excessive motion is detected. To install  
+
It also requires a userspace daemon to monitor the accleration sensor and park the disk head when excessive motion is detected. To install the userspace daemon, do the following:
the userspace daemon, do the following:
 
  
 
{{HINT|This requires kernel support for <tt>hdaps</tt> and head parking. Install <tt>[http://mhensler.de/swsusp/download/yum/development/fc5/kernel-suspend2-2.6.16-1.2084_2.rhfc5.cubbi_suspend2.i686.rpm kernel-suspend2-2.6.16-1.2084_2]</tt> or [http://mhensler.de/swsusp/download/yum/development/fc5/ higher]}}
 
{{HINT|This requires kernel support for <tt>hdaps</tt> and head parking. Install <tt>[http://mhensler.de/swsusp/download/yum/development/fc5/kernel-suspend2-2.6.16-1.2084_2.rhfc5.cubbi_suspend2.i686.rpm kernel-suspend2-2.6.16-1.2084_2]</tt> or [http://mhensler.de/swsusp/download/yum/development/fc5/ higher]}}
Line 237: Line 331:
  
 
{{NOTE|SRPMS for the above are available [http://www.cs.cornell.edu/w8/~saikat/packages/SRPMS/ here].}}
 
{{NOTE|SRPMS for the above are available [http://www.cs.cornell.edu/w8/~saikat/packages/SRPMS/ here].}}
 
== Software ==
 
 
=== tpb/on-screen display ===
 
 
tpb, which controls the onscreen display of thinkpad buttons, is not installed by default.
 
 
To install tpb execute:
 
 
{{cmdroot|yum install tpb}}
 
 
Once installed, no configuration is necessary.
 
 
== Tablet Software ==
 
 
=== Java 1.5 ===
 
 
Install Sun's JRE 1.5. This is required for the <tt>jarnal</tt> program below.
 
 
* Download the build: {{cmduser|wget http://mirrors.dotsrc.org/jpackage/1.6/generic/non-free/SRPMS/java-1.5.0-sun-1.5.0.06-1jpp.nosrc.rpm}}
 
* Create the build environment: {{cmdroot|rpm -Uvh java-1.5.0-sun-1.5.0.05-1jpp.nosrc.rpm}}
 
* Download the JVM from [http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&PartDetailId=jdk-1.5.0_06-oth-JPR&SiteId=JSC&TransactionId=noreg Sun's Java page] and download <tt>jdk-1_5_0_06-linux-i586.bin</tt> to {{path|/usr/src/redhat/SOURCES}}
 
* Build the RPMs: {{cmdroot|rpmbuild -ba /usr/src/redhat/SPECS/java-1.5.0-sun.spec}}
 
* Install the JVM: {{cmdroot|yum localinstall /usr/src/redhat/RPMS/i586/java-1.5.0-sun-1.5.0.06-1jpp.i586.rpm}}
 
* Install the fonts: {{cmdroot|yum localinstall /usr/src/redhat/RPMS/i586/java-1.5.0-sun-fonts-1.5.0.06-1jpp.i586.rpm}}
 
 
Note: This is tailored for the latest JVM as of writing this article. Substitute the latest version numbers if this doesn't work.
 
 
=== Jarnal Note-Taking ===
 
 
Install the [http://www.dklevine.com/general/software/tc1000/jarnal.htm Jarnal] note-taking application:
 
 
{{cmdroot|wget http://www.cs.cornell.edu/~saikat/jarnal-8.14-1sg.noarch.rpm}}
 
{{cmdroot|yum localinstall jarnal-8.14-1sg.noarch.rpm}}
 
 
{{NOTE|SRPMS for the above are available [http://www.cs.cornell.edu/w8/~saikat/packages/SRPMS/ here]}}
 
 
=External Sources=
 
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)] and the [http://tuxmobil.org/tablet_unix.html Linux on Tablet PCs and webpads survey].
 
 
  
 
[[Category:X41 Tablet]][[Category:Fedora]]
 
[[Category:X41 Tablet]][[Category:Fedora]]

Latest revision as of 18:44, 21 October 2007

Page May Not Be Accurate!

This page may not be completely accurate; it was originally copied from Installing Fedora Core 5 on a ThinkPad X41 Tablet and may still be a work in progress.

Success Chart

Item Working Notes
Installation Network Installation Yes
USB Installation Yes (DVD)
Display Laptop Screen Yes
CRT / Projector Yes
Screen Rotation Yes Resizes display, but not workspace properly.
Stylus Yes Requires configuration changes.
Power Management Software Suspend (hibernate) Yes Software Suspend 2
Suspend to Memory (ACPI sleep) Yes (mostly) Software Suspend 2
Audio Yes
Wireless 802.11b/g Yes
Bluetooth Not Tested (should work) See Bluetooth on Fedora Core 4
Infrared Yes irda, /etc/modprobe.conf
Extra Buttons Keyboard Section Yes ibm-acpi driver
Tablet buttons Yes setkeycodes
Fingerprint Scanner Yes bioapi
Harddisk Active Protection Yes kernel 2.6.16, hdapsd

Tested and Verified on Fedora 7

Information in this section has been tested and verified using Fedora 7.

Installation

Installation is straight forward; you can use the generic install instructions here.

Configuration

X Server

Basic X server functionality should work out of the box.

Desktop Effects

'Desktop Effects' work but are not enabled by default; to enable them run 'desktop-effects' and click 'enable desktop effects'. Note that these conflict with working rotation- you get either desktop effects or tablet rotation; not both.

Tablet Buttons

Activate mappings for the tablet buttons by adding the following lines to /etc/rc.d/rc.local:

# Map tablet hardware buttons
setkeycodes 6e 109 6d 104 69 28 6b 1 6c 120

Enabling the Stylus

Add the following lines to /etc/rc.d/rc.local:
(Note: You will need to be root to perform these two edits)

# Map stylus to a serial port
setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig


Add the lines in bold font to /etc/X11/xorg.conf:

 Section "ServerLayout"
        Identifier     "default"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "cursor" "SendCoreEvents"
        InputDevice    "stylus" "SendCoreEvents"
EndSection

Section "InputDevice"
      Driver        "wacom"
      Identifier    "cursor"
      Option        "Device"        "/dev/ttyS0"
      Option        "Type"          "cursor"
      Option        "ForceDevice"   "ISDV4"
      Option        "Mode"          "Absolute"
      Option        "TPCButton"     "on"
EndSection

Section "InputDevice"
      Driver        "wacom"
      Identifier    "stylus"
      Option        "Device"        "/dev/ttyS0"
      Option        "Type"          "stylus"
      Option        "ForceDevice"   "ISDV4"
EndSection

If the style stops working after a suspend/resume cycle, (as root) create the following file /usr/lib/pm-utils/sleep.d/40wacom

#!/bin/bash

. /usr/lib/pm-utils/functions

suspend_wacom() {
}

resume_wacom() {
    # Reset serial port for stylus
    setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
}

case "$1" in
        hibernate|suspend)
                suspend_wacom
                ;;
        thaw|resume)
                resume_wacom
                ;;
        *)
                ;;
esac 

exit $?


Wireless Network

The wireless card works out of the box- no additional drivers necessary.

Network Manager is installed by default, but may not be enabled by default depending on your mode of installation. To turn it on, do as root:

# chkconfig NetworkManager on

Infrared

The infrared subsystem supports NSC Fast IR (FIR), which transmits at speeds of up to 4 Mbps.

First things first: Go to your BIOS and enable the infrared and manually set up IO to be 0x2f8 and IRQ to be 3. Typically, the default manual config is this so you probably don't need to edit it. Then go ahead an grab any irda-related packages from YUM.

Then I copied the section on Infrared for the T60:

Edit /etc/modprobe.conf, add the following two lines:

alias irda0 nsc-ircc
options nsc-ircc dongle_id=0x09

Edit /etc/sysconfig/irda:

IRDA=yes
DEVICE=irda0
DISCOVERY=yes

Start IRDA

# service irda start

If You want IRDA to be enabled during system boot, turn it on like this:

# chkconfig irda on

That should set you up. You can then set up things like remote controls that operate through the LIRC daemon, which Fedora has a package and a kernel module for. This can useful for xmms, which has a plugin to allow you to change songs with the remote and other nifty features. You can define the controls as well. The choice is yours.

For more information, see Linux Infrared Remote Control Project

tpb/on-screen display

tpb, which controls the onscreen display of thinkpad buttons, is not installed by default.

To install tpb execute:

# yum install tpb

Once installed, no configuration is necessary.

Fingerprint Reader

The fingerprint reader is supported by the thinkfinger package.

To install thinkfinger execute:

# yum install thinkfinger

Suspend in memory and disk

swsusp nicely works in Fedora Core 7.

to suspend on disk add the line

resume=/dev/sdaN 

where N is the number of your swap partition to your kernel parameters

example with grub:

edit /boot/grub/grub.conf such that it looks like:

kernel /boot/vmlinuz-xxxxxxx ro resume=/dev/sda6  rhgb quiet

to suspend in memory you have just to fix a problem with a blank display after resuming: create and edit the file /etc/pm/config.d/config adding the line:

DISPLAY_QUIRK_S3_BIOS="true" 

To use the special Fn-F? keys add the following line to your /etc/rc.local

echo enable > /proc/acpi/ibm/hotkey

Without this line only the Fn-F4 (suspend to memory) key will be enabled.


Tablet Software

Xournal

Xournal is a gnome-based journaling tool for tablets; you can get packages for Fedora 7 from here.

Untested on Fedora 7

Information below this line is merely copied from the Fedora Core 5 guide and has not been tested on Fedora 7.

Enabling Screen Rotation

Download (and verify) the following script into your path:

$ wget http://www.cs.cornell.edu/~saikat/rotate
$ chmod a+x rotate

Rotate the screen using the script:

$ rotate -h
Useage:
   rotate [left|right|inverted|normal]
 
If no option is given, rotates the screen 90 degrees to the right.

To bind the tablet's Rotate button to rotate the screen on-the-fly, add the following line to /etc/X11/Xmodmap

keycode 139 = XF86RotateWindows
Hint:
Update: Check to make sure you are using the new setkeycodes line in the Tablet Buttons section (one with 6c 120 in the command).
Hint:
Update: This script uses xrandr 1.1 command line options, which only partly work with the latest Fedora 7 updates (which include xrandr 1.2). To fix the problem, edit the script, replacing 'xrandr -o' with 'xrandr --output LVDS --rotate'. I have not tested the fix on a clean install of F7, though. --LuisVilla

Hibernation

Software suspend works using Software Suspend 2. To install:

# cd /etc/yum.repos.d
# wget http://mhensler.de/swsusp/download/suspend2.repo
# yum install userui-suspend2-fbsplash userui-suspend2-theme-fedorabubbles kernel-suspend2

Edit the appropriate kernel line in /etc/grub.conf and add the parameters vga=0x317 and acpi_sleep=s3_bios. For example:

title Fedora Core (<kernel.version-build>.rhfc5.cubbi_suspend2)
       root (hd0,1)
       kernel /vmlinuz-<kernel.version-build>.rhfc5.cubbi_suspend2 ro root=/dev/VolGroup00/LogVol00 rhgb quiet vga=0x317 acpi_sleep=s3_bios
       initrd /initrd-<kernel.version-build>.rhfc5.cubbi_suspend2.img

Comment out the following line in /etc/hibernate/hibernate.conf:

# ProcSetting userui_program /sbin/suspend2ui_text

Add the following lines in /etc/hibernate/hibernate.conf:

ProcSetting userui_program /sbin/suspend2ui_fbsplash
OnResume 96 setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig

Add the following lines in /etc/hibernate/ram.conf:

Distribution fedora

Comment out the following lines in /etc/hibernate/ram.conf:

# EnableVbetool yes
# VbetoolPost yes

Make the following changes (i.e. comment out the two vbetool lines, and add the return 0 line in the resume_video function) in /etc/pm/functions-intel:

resume_video()
{
(
        # /usr/sbin/vbetool post
        # /usr/sbin/vbetool vbestate restore < /var/run/vbestate
        return 0
) >/dev/null 2>&1
}

Force the use of suspend2 by editing the appropriate lines in /etc/sysconfig/pm:

HIBERNATE_METHOD="suspend2"
HIBERNATE_RESUME_POST_VIDEO="no"

Problems with a black screen after resuming can sometimes be fixed by adding the following line to the device section in /etc/X11/xorg.conf:

Option "VBERestore" "true"

Add the following file /etc/pm/hooks/40wacom:

#!/bin/sh
setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig

Harddrive Active Protection System (HDAPS)

Harddrive active protection system requires the hdaps kernel module (included in stock Fedora kernels), and a kernel capable of parking disks (patch included in kernel-suspend2 RPMs from the Hibernation section above). It also requires a userspace daemon to monitor the accleration sensor and park the disk head when excessive motion is detected. To install the userspace daemon, do the following:

Hint:
This requires kernel support for hdaps and head parking. Install kernel-suspend2-2.6.16-1.2084_2 or higher
# wget http://www.cs.cornell.edu/~saikat/hdapsd-20060326cvs-1.sg.i386.rpm
# yum localinstall hdapsd-20060326cvs-1.sg.i386.rpm

If software suspend is enabled, add the following line to /etc/hibernate/hibernate.conf

UnloadModules hdaps

To install the Gnome panel applet that monitors the state of the harddisk, install:

# wget http://www.cs.cornell.edu/~saikat/gnome-applet-hdaps-20060120cvs-1.sg.i386.rpm
# yum localinstall gnome-applet-hdaps-20060120cvs-1.sg.i386.rpm
NOTE!
SRPMS for the above are available here.