Difference between revisions of "Installing Fedora Core 4 on a ThinkPad X41 Tablet"
(→Bluetooth) |
(→Wireless Card) |
||
Line 278: | Line 278: | ||
:{{cmdroot|apt-get update && apt-get dist-upgrade}} | :{{cmdroot|apt-get update && apt-get dist-upgrade}} | ||
:{{cmdroot|apt-get install ipw2200}} | :{{cmdroot|apt-get install ipw2200}} | ||
+ | |||
+ | Some (newer) X41 Tablets use the Atheros chipset. Download and build the drivers from http://sourceforge.net/projects/madwifi/ | ||
== Bluetooth == | == Bluetooth == |
Revision as of 02:57, 6 November 2005
Success Chart
Item | Working | Notes | |
Installation | Network Installation | Yes | |
USB Installation | Not Tested | ||
Display | Laptop Screen | Yes | both vesa driver, and i810 (with Intel 915 support) |
CRT / Projector | Yes | with i810 driver. (screen/crt are exclusive with vesa) | |
On-the-fly Screen Rotation | No | ||
Stylus | Yes | wacom serial driver. | |
Power Management | Software Suspend (hibernate) | Yes | swsusp2 |
Suspend to Memory (ACPI sleep) | No | Tested on 2.6.12-1.1398 | |
Audio | Yes | ALSA intel8x0 driver | |
Wireless | 802.11b/g | Yes | ipw2200 driver |
Bluetooth | Not tested | ||
Extra Buttons | Keyboard Section | Yes | ibm-acpi driver |
Tablet buttons | Yes | setkeycodes | |
Fingerprint Scanner | No | See Integrated Fingerprint Reader. | |
Harddisk Active Protection | No | See Active Protection System. |
Installation
The X41 Tablet requires a dock to use an optical drive. The BIOS can, however, boot from USB or the network.
Preparation
The X41 Tablet comes installed with Windows XP Tablet edition. Before installing Fedora Core, the harddrive needs to be repartitioned and certain parameters need to be written down for later use.
- Use Powerquest Partition Magic, QTParted or some software that can partition a basic disk with NTFS partitions to create room for Fedora Core 4.
- Under windows, note the serial port and the irq used by the Wacom stylus device. This information is listed under Control Panel > System > Hardware > Device Manager > HID > Wacom Stylus > Resources. On the 18695CU model, the port is 0200-0207 and irq is 5.
- Note the MAC address of the ethernet card and the wireless card. These are on a stickers under the laptop labled LAN MAC Address and 802.11b/g MAC Address.
USB Boot Preparation
From the Fedora Core 4 DVD, write the bootimage to a USB device.
dd if=images/diskboot.img of=/dev/sdb
where /dev/sdb is the USB device. Note: The destination is /dev/sdb and not /dev/sdb1. Also perhaps due to a BIOS problem or image problem, USB booting may not always work.
PXE Boot Preparation
PXE boot requires the X41 Tablet to be connected to a wired ethernet network that is configured for DHCP and TFTP. This can be accomplished by connecting the tablet to another host over a ethernet corssover cable.
Configure the DHCP server to hand out boot instructions. In the /etc/dhcpd.conf file, include:
host pxeclient { hardware ethernet 00:0a:e4:35:a9:12; # X41 Tablet LAN MAC Adress noted above filename "/pxelinux.0"; fixed-address 192.168.1.60; # IP Address for X41 Tablet next-server 192.168.1.1; # IP Address of TFTP server }
Note: Replace the italicized fields above with appropriate values for your hardware. A sample dhcpd.conf file can be found here.
Configure the TFTP server. If the TFPT server uses xinetd, you may need to enable it in /etc/xinetd.d/tftp by setting disable = no
. Also note root of the server. This is usually /tftpboot. Copy the pxelinux files present on the FC4 disk in images/pxelinux/ to the TFTP root. You will need two additional files pxelinux.0 and pxelinux.cfg/default.
$ find /tftpboot
/tftpboot
/tftpboot/pxelinux.0
/tftpboot/initrd.img
/tftpboot/vmlinuz
/tftpboot/pxelinux.cfg
/tftpboot/pxelinux.cfg/default
Contents of /tftpboot/pxelinux.cfg/default:
DEFAULT vm SERIAL 0 9600 label vm kernel vmlinuz append initrd=initrd.img ramdisk_size=9372 root=/dev/rd/0
Installing
Restart the X41 Tablet. If you are using a USB key, insert it before switching on the tablet. Press F12 during startup to display the temporary boot device screen. Select either USB HDD or Netowkr Boot based on your medium of choice. This should bring up the Fedora Core installer. Once the installer has started up, Fedora Core can be installed over the web, ftp, nfs, USB disk etc. The rest of the installation is straight forward and described in detail here.
Configuration
X Server
The X41 Tablet, uses an Intel integrated 915 video device. This is supported by the i810 driver and can be selected from the graphical xserver screen by selecting the Intel 915 option. Note: The i810 driver on xorg-6.8.2 and earlier DO NOT support the card. Use the vesa (generic) option for such servers. The LCD screen is a 1024x768 display. The stylus requires the linuxwacom package. This should automatically be installed as part of FC4.
- The first time vesa (generic) is selected, there may appear to be some screen corruption or shimmering effects. It should go away after a reboot.
- The stylus may not work as a mouse immidiately. See the Stylus section below.
- Screen rotation on-the-fly currently does not work. It may be possible to pass a kernel parameter at boot time to rotate the framebuffer into a portrait orientation, but this has not been confirmed.
Sample /etc/X11/xorg.conf
Section "ServerLayout" Identifier "single head configuration" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "cursor" "SendCoreEvents" InputDevice "stylus" "SendCoreEvents" EndSection Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "unix/:7100" EndSection Section "Module" Load "dbe" Load "extmod" Load "fbdevhw" Load "glx" Load "record" Load "freetype" Load "type1" Load "dri" EndSection Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us" EndSection Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5" Option "Emulate3Buttons" "yes" EndSection Section "InputDevice" Driver "wacom" Identifier "cursor" Option "Device" "/dev/ttyS0" Option "Type" "cursor" Option "ForceDevice" "ISDV4" Option "Mode" "Absolute" Option "Button3" "2" Option "Button2" "3" Option "TPCButton" "on" EndSection Section "InputDevice" Driver "wacom" Identifier "stylus" Option "Device" "/dev/ttyS0" Option "Type" "stylus" Option "ForceDevice" "ISDV4" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Monitor Vendor" ModelName "LCD Panel 1024x768" HorizSync 31.5 - 48.5 VertRefresh 40.0 - 70.0 Option "dpms" EndSection Section "Device" # The i810 driver under xorg-6.8.2 and earlier DO NOT support the # Intel Integrated 915 chipset. Use the generic vesa driver on old # versions. Identifier "Videocard0" Driver "vesa" # Driver "i810" VendorName "Intel" BoardName "Intel 915" # Once the i810 supports the chipset, this section can be changed # to use the new driver by using the appropriate Driver line EndSection Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 16 SubSection "Display" Viewport 0 0 Depth 16 Modes "1024x768" "800x600" "640x480" EndSubSection EndSection Section "DRI" Group 0 Mode 0666 EndSection
Stylus
The stylus is not recognized in Fedora Core at startup. Connect /dev/ttyS0 to the stylus by including the following line in /etc/rc.d/rc.local.
setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
If stylus problems persist, try upgrading to the latest linuxwacom package: linuxwacom-0.6.8-5.i386.rpm
- When the stylus goes out of range from the screen, the mouse cursor warps to the top-left corner. When the mouse comes back in range, the cursor should warp back to the right spot. This can be particularly annoying if the temporary jump causes focus and menus to change. This is a known bug in the wacom X driver.
Audio
Audio works out of the box on X41 Tablets with the ALSA intel8x0 driver. Note: Sometimes the mixer settings are muted on startup resulting in no sound. This can be fixed using any alsa mixer such as aumix, amixer, gnome-volume-control etc. If the mixers are being repeatedly muted, then first unmute them and set them to desirable levels. As root, execute the command # /usr/sbin/alsactl store
. Finally, add the following line to /etc/rc.d/rc.local.
/usr/sbin/alsactl restore
ACPI
ACPI events are supported out of the box with ibm-acpi. Install it by executing:
$ wget http://www.cs.cornell.edu/~saikat/ibm-acpi-0.11-2.fc4.i386.rpm
# rpm -Uvh ibm-acpi-0.11-2.fc4.i386.rpm
Change the button bindings in /etc/acpi/events. If you do not plan to use Suspend to Disk (below), set the power button to halt the system instead of hibernating by changing /etc/acpi/events/hibernate.
Suspend
Suspend to Disk (Hibernation)
Software suspend works using swsusp2. Follow the installation directions at http://mhensler.de/swsusp/. To automatically fix the stylus lock-up after resuming, add the following line to /etc/hibernate/hibernate.conf
OnResume 96 setserial /dev/ttyS0 port 0x0200 irq 5 autoconfig
If the stylus still locks up, see the Stylus section for the latest driver. ACPI power events are not delivered if AC status changes during hibernation. To tune the laptop after resume, add the following line to /etc/hibernate/hibernate.conf
OnResume 20 /etc/acpi/actions/battery.sh
Suspend to Memory (ACPI Sleep)
ACPI suspend to memory does not work with the 2.6.12 and earlier kernels because the X41 Tablet uses SATA access to the harddisk and the kernel SATA driver is not power-aware. See Problems with SATA and Linux for further discussion and solutions.
In any case, in /etc/grub.conf append the kernel parameter: acpi_sleep=s3_bios
This is required to fix the problem where the screen doesn't turn back on after resuming from ACPI sleep.
Extra Buttons
Extra buttons work out-of-the-box. The package tpb provides some on-screen feedback for the volume, brightness and thinklight buttons. # setkeycodes
can be used to map the tablet buttons (details).
To map the Tablet Up and Down buttons to Page Up and Page Down keys, and the Tablet Enter and Esc buttons to their respective counterparts, add the following to /etc/rc.d/rc.local.
setkeycodes 6e 109 6d 104 69 28 6b 1
Wireless Card
The 802.11b/g card is supported by the ipw2200 driver. The easiest way to install it is to get the package from ATRpms.
$ wget http://dl.atrpms.net/all/atrpms-kickstart-28-1.rhfc4.at.i386.rpm
# rpm -Uvh atrpms-kickstart-28-1.rhfc4.at.i386.rpm
# apt-get update && apt-get dist-upgrade
# apt-get install ipw2200
Some (newer) X41 Tablets use the Atheros chipset. Download and build the drivers from http://sourceforge.net/projects/madwifi/
Bluetooth
Some (newer) X41 Tablets support bluetooth. My 18695CU, unfortunately, does not. So I have no clue.
Software
Network Manager
NetworkManager is a rather useful utility included in Fedora Core 4 that provides windows-like ease of configuring wireless and wired network as and when they are available. Give it a try by enabling it in the initscripts by running # chkconfig NetworkManager on && /etc/init.d/NetworkManager restart
as root and running $ NetworkManagerInfo
from a X session. The first command needs to be executed only once, while the second should be executed after every login. This can be automated by adding it to the list of startup programs in Desktop > Preferences > More Preferences > Sessions > Startup Programs.
Sun's Java
Sun's Java VM is needed by the Jarnal application below. Due to licensing issues, the JVM cannot be packaged but needs to be build by the end user. JPackage provides a build environment as follows:
- Download the build:
$ wget http://mirrors.dotsrc.org/jpackage/1.6/generic/non-free/SRPMS/java-1.5.0-sun-1.5.0.05-1jpp.nosrc.rpm
- Create the build environment:
# rpm -Uvh java-1.5.0-sun-1.5.0.05-1jpp.nosrc.rpm
- Download the JVM from Sun's Java page and download jdk-1_5_0_05-linux-i586.bin to /usr/src/redhat/SOURCES
- Build the RPMs:
# rpmbuild -ba /usr/src/redhat/SPECS/java-1.5.0-sun.spec
- Install the JVM:
# rpm -Uvh /usr/src/redhat/RPMS/i586/java-1.5.0-sun-1.5.0.05-1jpp.i586.rpm
- Install the fonts:
# rpm -Uvh /usr/src/redhat/RPMS/i586/java-1.5.0-sun-fonts-1.5.0.05-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
Jarnal is a Notetaking application, much like Microsoft Journal for windows. It requires Sun's Java VM above.
- Download the RPM:
$ wget http://www.cs.cornell.edu/~saikat/jarnal-6.60-1sg.noarch.rpm
- Install it:
# rpm -Uvh jarnal-6.60-1sg.noarch.rpm
It should create a menu entry Notes under Applications > Graphics.