Configure RedHat Linux Beta Severn for the TC1000
by David K. Levine
Download the zip file containing the configuration and other files.
- Note that the beta kernel loads very slowly and will appear to hang during and after "Finding module dependencies."
ACPI: Make sure to install
the acpi rpm from the iso, it is not installed by default. ACPI is
compiled in modules that do not load by default, and must be explicitly
loaded using modprobe. The myxinit script loads the modules ac,
processor, button, battery and longrun. The ac and battery modules must be
loaded to use the gnome battery monitor panel applet - it will crash if
these are not loaded. Redhat did not compile the longrun module, but a compiled longrun.o is in the zip file. See here for how is was compiled without rebuilding the entire kernel. Install it by copying to /lib/modules/2.4.21-20.1.2024.2.1.nptl/kernel/arch/i386/kernel.
Make sure the user/group are both root, and set permissions to 722 then run /sbin/depmod.
- Using >echo
1>/proc/acpi/sleep only works if the longrun module is loaded. It
wakes up when you jog the power button, but the system will be frozen
until then. Unfortunately when the system wake up, the side buttons and
jog dial do not. You will probably need to restart the wifi after
sleeping.
- The
default script in /etc/acpi/events shuts the system down if you jog the
power button. You will probably want to remove this if you are planning
on putting the system do sleep: when you use the power button to wake
up the system, you will also be shutting it down. Do man acpid for
information in writing scripts.
- Various methods of turning the screen off blank the screen but do not turn off the backlight.
- There
is a longrun utility that can be installed from an iso rpm. This should
be able to change the system from "economy" to "performance" mode. In
addition to loading the longrun modules, you will also need to load the
cpuid and msr modules. However, the longrun utility still does not work
giving the error message "longrun:
error reading /dev/cpu/0/cpuid: Invalid argument." Possibly the kernel
needs to be compiled explicitly for crusoe for this utility to work.
Certainly using the other arch/i386/kernel modules compiled with
longrun.o does not help.
Wifi: Unpack the directory atmelwlandriver
and make the module. Since the module is already compiled, you should be
able to do make install as root. Copy ifcfg-eth1 to
/etc/sysconfig/network-scripts and edit it to provide the wireless and
tcpip options relevant to your setup. The driver works fine with WEP.
Do not load eth1 during boot, since the wlan driver isn't yet loaded.
If you /sbin/modprobe pcifvnet this will load the driver and bring up
eth1. The script radioon does this, and is suitable for adding to
toolbars.
- The atmel driver builds and loads, but apparently doesn't work with the 2.4.20 kernel.
- This is the 5-17-2003 version of the driver, because it was
reported to work with the TC1000. Likely more recent versions do to. If
you download a different version, make sure to change depmod in the
Makefile to /sbin/depmod.
- >/sbin/ifdown
eth1; /sbin/rmmod pcifvnet removes the pcifvnet module - but the radio
light on the front panel remains on, so it probably doesn't turn the
radio off.
Touch keyboard: Install xvkbd
from the rpm. Replace the existing /etc/X11/xdm/Xsetup_0 with the
version in the zip file. This adds a line to the end of the script that
will load xvkbd at the logon screen. You will also likely want to put a
button for xvkbd on a toolbar. This setup will leave the keyboard on the screen after login.
- For obscure reasons if you create a script file #!/bin/bash; exec
xvkbd and run the script (with &) from Xsetup_0 you will get the
keyboard during login, but it will be gone when gnome is finished
initializing.
Screen and Pen: Three
drivers are used: the XFree86 nv and vesa drivers and the tc1000 xvesa
driver from kdrive. The instructions below install both and scripts for
switching between them.
-
Make sure you know how to use grub to boot into run level 3 in case you make a mistake.
- Unpack
the directory fpi2002-0.1 and make the module. This program is from Michael Rolig. Since the module is
already compiled, you should be able to do make install as root.
- Copy
XFConfig.land, XFConfig.port, XFConfig.dual to /etc/X11.
- Copy myxinit to /etc/init.d and make a symbolic link to it named
S30myxinit in /etc/rc5.d. This makes it possible to choose the video
mode at bootup by setting kernel parameters myorient=xvesa for the
xvesa driver, myorient=port for the nv driver in portrait (sideways)
orientation, myorient=dual to clone the lcd screen to the vga connection
using the vesa driver. The default is to use XFConfig.land, which uses
the nv driver in landscape mode. The myxinit script also loads the
fpi2002 module, configures the serial port used by the pen, and loads
the needed the acpi modules.
- Make sure in /boot/grub/grub.conf to set the kernel parameter
nogui or the pen won't work. You can look at the included grub.conf for
a sample of how to set up grub properly.
- Copy Xmodmap to .Xmodmap
in your home directory. I have it set so the scroll wheel does page up
and page down; you may wish to change this, and set other options found
in Michael Rolig's xmodmaprc file.
Note that the pen works differently than under Windows XP - under XP
holding down the pen for a short time is equivalent to the right mouse
button; under Linux, holding down the pen and clicking the pen button
is equivalent to the right mouse button.
- Copy
tck1_drv.o to /usr/X11R6/lib/modules/input. This program is from Michael Rolig.
- Copy Xvesa and runXvesa to /usr/X11R6/bin. The Xvesa file is from Matthew Allum, the scripts adapted from Jamey Hicks
- For both files chown root:root, chmod 711, chmod u+s
- mv XFree86 to XFree86.sve
- The
script tab-switch-screen, which must be run as root (for example using
sudo) will switch between portrait and landscape modes. If you are
using the xvesa driver the switch is immediate. If you are using the nv
drivers it will bring up the gnome logout screen. If you logout and log
backin, the orientation will be switched. I suggest creating a button
for it on a toolbar. If you are courageous, you can use the autologin
feature and /usr/sbin/gdm-restart. This will speed things up and switch
orientation without having to intervene. It will also kill any data you
are working on if you forget to save first.
Screen and Pen Comments:
- The fpi2002 Makefile had to be tweaked a bit to get it to work on RH.
- I haven't been able to build the nvidia driver,
and I cannot get the nv driver to support two heads. However, the vesa
and Xvesa drivers nicely clone the lcd display to the vga - and the pen works
fine in this mode.
- If you do not set the kernel
parameter nogui Severn will by default load an Xwindows startup screen
in the boot process before fpi2002 has loaded. This makes it impossible
to configure /dev/ttyS0 later. If you want to keep the graphical boot,
it should be possible to modify the script /etc/rc.init/rc.sysinit to
load fpi2002 prior to the beginning of the graphical boot.
- If you are using xvesa you may switch modes by using the command line utility xrandr or the gnome applet grandr to switch video modes. Or you may use the provided script.
- Don't copy Rolig's XFConfig files - they do not work with RedHat installations.
- In rolling your own configuration
files to use with the nv drivers - make sure in portrait mode you turn off the xrandr extensions
explicitly, and make sure that you puta reference to the pen driver in
the ServerLayout section.
- Xvesa
does not generate any events for any of the side-buttons or the scroll
wheel, except that depressing the scroll wheel is equivalent to the
enter key. Running xev shows that the three "pen" buttons generate from left to right the
keydown/keyup events 121, 122 and 125. The CVS version of Xvesa may now
support the mouse wheel, but this has not been tested.
- Also
from xev, using nv/vesa with the tc1k driver scroll wheel left 134,
right 135, down 36 (enter), escape button 133, tab button 132, Q button
131, "schedule" button 130, red ctrl-alt-del 107 (ctrl-alt-del), the
three "pen" buttons do not generate any events, regardless of how the
"KeyEvent" driver option is specified.
- Calibrating the pen in the BIOS has no effect whatsoever on the pen in Linux.
- The Xvesa driver is reported to be slow, but I haven't noticed this.
driver
|
switch orientation
|
clone external display
|
mouse wheel
|
scroll wheel
|
dpms
|
pen calibration
|
view console
|
nv
|
log in and out of X
|
no
|
yes |
yes
|
can't turn off backlight
|
awkward
|
no
|
Xvesa
|
yes
|
yes
|
no
|
no
|
no
|
no
|
yes
|
vesa
|
no, landscape only
|
yes
|
yes
|
yes |
can't turn off backlight
|
awkward
|
yes
|
NTFS: Install the module ntfs.o as root. Redhat did not compile the module, but it is the zipfile and also available as a standalone file. First, create the directory /lib/modules/2.4.21-20.1.2024.2.1.nptl/kernel/fs/ntfs. Then copy the ntfs.o module to /lib/modules/2.4.21-20.1.2024.2.1.nptl/kernel/fs/ntfs/ntfs.o. See here
for how it was compiled without rebuilding the kernel. Make sure the
user/group are both root, and set permissions to 722. Finally run
/sbin/depmod. To use the module, load it as root using /sbin/modprobe
ntfs. Then mount your ntfs partition with mount -t ntfs /dev/hda1
/mymountdirectory -o umask=0222. Note that this module allows read only
access.
Wayv: wayv
is a gesture recognition program. This version is modified so that it
can also be used to annotate the screen during presentations (using the
vesa or Xvesa configurations). Unpack the wayv directory and make the
program. Because it is already compiled, you should be able to do make
install as root. Copy the wayv.conf and DEFAULT.wkey files to some
convenient directory such as your home directory (both in the same
directory). To run >wayv /path/to/wayv.conf mandatory-option. If
mandatory-option is annotate it opens in annotation mode; if it
anything else (except blank) it will open in gesture recognition mode.
- The setup.h file needed some fixing to compile under Severn; the
backend.c file was modified to support annotation, and the command line
convention changed.
- There are two other gesture recognition programs, xstroke and xscribble, but I couldn't manage to build either of them.
Vmware: You will have to
recompile the modules of course. You must use the gcc32 compiler,
rather than the default gcc compiler. Install the gcc32 from the rpm if
necessary. Then set "CC=gcc32; export CC" before running
vmware-config-tool.pl. Running vmware, NT 4.0 has a protection error
almost immediately, probably due to the new stack protection. Windows
98SE runs without any noticeable problem.