Index Top Page Mail Form

Linuxメモ LOOX S9/70W + Vine Linux 2.5 + kernel 2.4.23

 最終更新日 2003.12.27

使えない内蔵デバイス

 富士通の LOOX S9/70Wに Vine Linux 2.5をインストールした。内蔵デバイスのほとんどが Linuxで使用可能だが、以下のものは使えない。

 AirH"INと内蔵モデムは1枚の miniPCIカードになっているので、それをを取り外し、ThinkPad T20用 miniPCI内蔵モデムに交換してみたのだが使えなかった。LTModemをインストールすると ATコマンドを受け付けるようになるのだが、どうしても発信ができない。ThinkPad用モデムが 3.3Vだけでなく 5V電源も必要な為ではないかと思われるが、未確認。

ALI15x3ドライバの不具合

 最近のカーネルだと、IDEドライバ ALI15x3の不具合により、起動時にハングアップする。機種は違うが、Linuxに挑戦(VAIO C1MRX編)と同じ方法で対処が可能。なお、一通りインストールが終わったらパッチをあててカーネルコンパイルすれば HDDを Urtra DMAモードで使える。

 現在の設定:

●カーネルオプション
idebus=50 apm=on

●/etc/rc.d/rc.localの最後に以下を追加
sync
sleep 2
hdparm -d1 -X66 /dev/hda

 カーネル 2.4.19でもこのパッチは有効なようだ。

 わたしは試してませんが、こちらのページによるとパッチをあてなくてもカーネルオプションの設定だけでいける可能性があるようです。以下の設定でもいいかもしれません。試してみて下さい。

ide0=ata66 ide1=ata66 ata2=0x180,0x386 nousb

 2003.7.6追記。カーネル 2.4.21ではこの不具合は修正されたらしく、パッチ無しで問題無く動きました。

XFree86の設定

 富士通のページの設定で利用可能。ただし、うちの環境では画面左端の横数ドット×縦600ドットのエリアだけ全体に1ドット上にずれた状態になってしまっている。Windows2000やコンソールでは異常無いので XFree86だけの問題のようだ。しかし、特に支障が無いのでそのまま放置している。

 KONはそのままだと表示が上下にずれるようだ。うちの場合はタックス君を表示させる為にフレームバッファを使う設定にしたので、KONの代わりに jfbtermを使っている。

APMとハイバネーション

 最近の機械にはめずらしく、ちゃんと APM BIOSが使え、サスペンドもメモリーサスペンド、Save To Disk共に利用可能。ただし、Vine Linux 2.5の場合、以下のようにする必要があった。

 まず、/etc/sysconfig/apm-scripts/apmcontinueを作成する。APMイベント(電源ボタンを押すとか ACアダプタの抜き差しなど)が発生するたびにこのスクリプトが呼び出される。現在の中身は以下のとおり。

#!/bin/bash
PROG1 = "$1"
PROG2 = "$2"

. /etc/apm/event.d/longrun $PROG1 $PROG2
. /etc/apm/event.d/usb $PROG1

 ネット検索してみると、apmdは /etc/apm/evnet.d/ の中のスクリプトを自動的に呼び出すように書いてある所がほとんどだが、Vine Linux 2.5では呼び出さなかったので上記の通り記述して呼び出すようにした。longrun は後述の Crusoeの LongRun機能を ACアダプタの抜き差しで切り替えるスクリプト。usbはそのままだとサスペンド/リジュームすると USBが使えなくなることへの対処。ついでにこの中で HDDの設定も行っている。現在の /etc/apm/evnet.d/usb の内容:

#!/bin/bash

case "$1,$2" in
suspend,*)
	/sbin/modprobe -q -r usb-ohci
	/sbin/hdparm -v >&/dev/null
	sleep 1
	sync
	sync
	sync
	/sbin/hdparm -q -d0 -q -c0 /dev/hda
	;;
resume,*)
	sync
	sync
	sync
	/sbin/hdparm -q -d1 -q -c1 -q -X66 /dev/hda
	/sbin/modprobe -q usb-ohci
	;;
esac

 ハイバネーション領域はわたしの場合、Windows2000用のパーテーションを FAT32にしておき、そこで DOSを起動し、PHDISK.EXE にて作成しました。

LongRun

 LOOXは CPUに Crusoe TM5500を使っているので当然 LongRunが使用可能だが、以下の設定を ONにしてコンパイルしたカーネルが必要。

Processor type and features --->
	(Crusoe)Proccesor family
	<*> /dev/cpu/*/msr - Model-specific register support
	<*> /dev/cpu/*/cpuid - CPU information support

 更に、上記と同様に ACアダプタの抜き差しで CPUスピードを変更するようにする。わたしの /etc/apm/event.d/longrun の記述は以下のとおり。

#! /bin/sh

case "$1,$2" in
change,power|suspend,*|resume,*|start,*)
    /usr/bin/apm | /bin/grep on-line > /dev/null 2>&1
    case $? in
    0)
	/usr/local/bin/longrun -s 0 100
	/usr/local/bin/longrun -f performance
	;;
    *)
	/usr/local/bin/longrun -s 0 50
	/usr/local/bin/longrun -f economy
	;;
    esac
    ;;
esac

 ACアダプタ使用時はパフォーマンス優先モード。しかし、パフォーマンスウインドウを 0〜100にして、あまり使っていない時はクロックを落とす設定。バッテリー駆動時はエコノミーモード。クロックも最大 50(実際は 58の 533MHz)にしてある。

 以上は Linux on LOOX Sを参考にしています。

サウンド設定

 OSSの場合は Tridentで使用可能だったと思うが、現在は ALSA 0.9.0rc1を使っている。/etc/modules.conf の内容:

alias char-major-116 snd
alias snd-card-0 snd-ali5451
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss

 ALSAの場合は Tridentではなく、ALI5451を使う。

メルコ WLI-PCM-L11GPで無線LAN

 Vine Linux 2.5では最初から無線LANの設定がされている。しかし、ドライバはコンパイルする必要があるようだ。メルコの WLI-PCM-L11GPの場合、orinoco_cs.o, orinoco.o, hermes.o が必要となる。

 通常なら /etc/pcmcia/wireless.opts の Lucent Wavelan IEEE の所で ESSIDや KEY(WEP)を設定すればいいらしいのだが、うちの環境ではなぜか呼び出してくれなかった。仕方がないので /etc/pcmcia/network に以下のように追加した。これで起動時やレジューム時にも自動的に設定される。

case "${action:?}" in
'start')
    if [ `/sbin/iwconfig ${device} | grep 802.11-DS | wc -l` > 0 ]; then  # 追加
        /sbin/iwconfig ${device} essid ***** key s:*************          # 追加
    fi                                                                    # 追加
    ;;
'stop')

 こちらのページを見てわかったのだが、/etc/sysconfig/network に

ESSID=*****
MODE=Managed
KEY=s:*************

と追記するだけでも OK。 この方がスマートでいいと思う。なお、128bit WEPが問題なく使えてます。