CASIOPEA FIVA 206Vine Linuxを導入したメモ
   
FIVA 206無印スペック
Transmeta Crusoe プロセッサー(TM5600 600MHz)
メモリ128MB+GH-SDH256BG(増設)←CASIOのCMSアップデートを施すと動かない機種のようです。アップデートしなかったのでとりあえず動作中。BIOSなどはXP用の?最新版にしています。

プレインストールのWinMeはデスクトップ機で散々苦労したので購入直後に削除。
このへんを参考に(Thanx!)Win2000に速攻で入れ替えました。電源管理はFIVACtrlを使わせてもらっていましたが、最近になって本家CASIOでモバイルコックピットIIIが公開されたので(上のXP用リンクからたどれます)、今はそいつを使ってます。
で、デフォルトのBモードで動くLinuxは、MP3 PlayerとFTPだけしかなく、コンソールにも落ちられないものだったので消すか入れ替えたかったのですが、パーテーションの切り直しが面倒だし、時間がなくて長らくそのままでした。ある日突如思い立ってFIVA 206XLに搭載されたMidoriのCDイメージ(このへん)をみつけ、早速入れてみましたが、これまた中途半端な仕様にがっくり。一日で消えました。
LinuxをFIVAに入れた理由は、これまでWindows一辺倒でUnix環境は無かったにもかかわらず、iPAQ(COMPAQのPDAね)でLinuxが動くってのを知って、Melonを買ってしまったから(意味無し)。で、このMelon、CFカードに入ってるんですけど、そのバックアップもしたかった訳。これについてももう少し遊んでから書いてみたいけど…
CASIOってばE-700も持ってるんだけど、今はワイフのもの。
ま、せっかくやり始めたので?当初の目的も果たしたいしってことで、 FIVA206はVineでも入れたろうかいと…
Vineを選んだ理由は…特になしです。(^^;
Midori CASIO版を入れてみたり、プラモ入れてみたり試行錯誤もしましたが、うまくいった方法だけ書き残しておきます。ともかくLinuxのインストールに関してはド初心者なもんで、内容はきわめていいかげんだときっぱり言い切れますから、当然at own riskでね。
Install
 ★ブートディスクの作成法
 ★パーテーションの準備
 ★ではインストール
Kernelを2.2.19-0v10.23にアップグレード
サウンドの設定
ハイバネの設定(未完)
LongRun(省電力)
pcmcia
 
CDドライブ(Pioneer CD-ROM ATAPImodel PCP-PR24A)
 
純正CDドライブ(MPC-142CDD)を認識させる
 
無線LANカード(IO-DATA)WN-B11/PCM


Vine Linux 2.1.5 Install

まずはVineのInstall情報を斜め読みしときます。
ブートディスクとインストールCD作成
ftp://ftp.riken.go.jp/pub/Linux/vine/
から2.1.5のCDIMAGEを丸ごと貰ってくる。
Vine215-i386.isoを使ってWinCDR(市販もの)でCDを焼く。

純正CDドライブ又は純正互換CDドライブの場合はCDブートでOK。以下のブートディスクは無くとも入れられますが、緊急用にブートディスクは作っておいた方がいいと思います。

ブートディスクの作成法
CD内imagesのpcmcia.imgをdosutils内にあるrawrite.exeを使ってFDに入れ、PCMCIAのCD経由でInstallするためのブートディスクを作成。FDを入れて置いてWinのコマンドラインから
rawrite.exe -n -f pcmcia.img -d a:
とかで(パスは通してね)カタカタと作れます。


パーテーションの準備
FIVAの方ですが、デフォルトではhda1にWindowsMeが、hda3にLinuxが入っています。この入れ場所の番号さえ変わらないようにしておけばモード切替スイッチのAでWindows(MBR)、BでLinux(hda3)が立ち上がりますので、なるべくそのままにしておきましょう。モード切替スイッチを見てBIOSがactive flagを切り替えてるらしいので。
liloで切り替えようってひとはこれにこだわらなくてかまいません。
Windows2000にパーテーションマジック(市販)をインストールしてパーテーションの切り直しをしました。(Partition magic Pro 7.0英語版)とりあえずLinux用で2G調達し、残りはWindows2000にしてリサイズ。Linux2Gの内容についてはインストール中にも変更出来るので1パーテーションのままでもかまいません。PM7.0はExt2フォーマットも出来るので、ついでにLinux用パーテーションはExt2でフォーマット。変更を加えたたあとWindowsが何回かrebootして、実際に変更されます。(いやー、PMはすこぶる便利になりましたね。持ってると何かと便利ですよ。)


ではインストール
FIVAのBiosに入って、OS Switchを一応Disableにしておきましょう。(このときたぶんフラグはMBRがhda1だけONになるんでしょうか??)FDブートしますので、Bootの項目でPCMCIA BOOTはDisableで、Hard DriveよりRemovable Deviceが上に来るようになっていればOK。
------


○純正又は純正互換CDドライブの場合
純正CDドライブからのブートでで導入する場合は、なにもしないと途中でCDを認識しなくなるので、プロンプトが出たところで
boot: text ide2=0x190
とおまじないを追加してやるといいそうです。(Install出来るのを確認済)
------
○私の場合
おまじないを知らなかった私は以下の方法でした。
CDドライブ付けて(うちで使ったのはLibretto用に買ってたPioneerのPCP-PR24A)USBの純正FDドライブも付けます。CDドライブにはもちろんVineのCDを入れます。FDDにブート用に作ったFDも入れて電源をON。うまくブート出来てCDも自動認識できればわーい!ってなもんで。


Install中の設定でパーテーションを操作出来ます。"/"、"/home"、"/swap"と、後で設定するハイバネ用領域(メモリサイズ+アルファ)をhda4とかに作っておけばいいんじゃないでしょうか。
まぁテキトー
ビデオは"LynxEM+"がリストにありますのでそれをとりあえず選択。あとで変更も出来るのでこれまたテキトーでいいです。ディスプレーはsvgaで。あとなんかあったっけ?まあ結構すんなり入るはず。
Xの設定はこんなもんで動いてます。一応証拠の画面キャプチャ


Kernelを2.2.19-0v10.23にアップグレード
サウンドも一応使いたいのでカーネル2.2.18から2.2.19にアップグレードしました。
$uname -r
でバージョン確認。
ftp://ftp.riken.go.jp/pub/Linux/vine/updates/2.1/RPMS/i386/

から
kernel-2.2.19-0vl0.23.i386.rpm
kernel-headers-2.2.19-0vl0.23.i386.rpm
kernel-pcmcia-cs-2.2.19-0vl0.23.i386.rpm

あたりをgetしてきまして、この辺この辺を参照しながらrootでログインし、シングルユーザモードになってrpmコマンドで更新。
# rpm -ivh kernel-2.2.19-0vl0.23.i386.rpm
# rpm -Uvh kernel-pcmcia-cs-2.2.19-0vl0.23.i386.rpm
とかして
/etc/lilo.conf

image=/boot/vmlinuz-2.2.19-0v10.23
など新しいのを追加変更などして(このへんの手順は"はしょって"ますので、やるときはちゃんとこことか見てね)
# /sbin/lilo
で有効にしたら
# /sbin/shutdown -r now
で再起動しませう。


サウンドの設定
ALSAのサイトから最新版ドライバ0.5.12aを持ってきました。
0.5.11以上でALi 5451がサポートされています。
rpmでもいいのかもしれませんけど、Kernel入れ替えると元に戻るとかいう情報も見たのでソースからまじめにコンパイルすることにしました。
Alsa-sound-mini-HOWTOを斜め読みしながら
# ./configure
# make
# make install

で導入。
同じくLibrary Utilities Toolsも取ってきて、同様にインストールしましょう。
特に変更は無しでそのままいけます。
# /sbin/snddevices
とやってスクリプトを実行しといて一応再起動。
# /sbin/modprobe snd-card-ali5451
でドライバが無事ロードされれば成功です。lsmodで確認出来ます。

このままだと再起動でロードされないので、/etc/modules.conf に

alias sound-card-0 snd-card-ali5451
alias sound-slot-0 sound-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
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
options snd snd_major=116 snd_cards_limit=1 snd_device_mode=0666 snd_device_uid=0


という行をよくわからないなりに追加。(^^; このへんはここを参考にしました。感謝。
modules.confに書いて読んでくれない時は
cp /etc/modules.conf /etc/conf.modules
してみて下さい。ALSAのThe kerneld approachにはconf.modulesを読むと書いてあるので整合性が取れていないかも。

ALSAのサイトではconf.modulesに書けと書いてありますが、この方法は古いのでWarningが出ます。modules.confに書きましょう。設定はまあこんなもんでOKでした。再起動後X上のktermからlsmodすると

Module Size Used by
snd-pcm-oss 17708 0 (autoclean)
snd-pcm-plugin 14576 0 (autoclean) [snd-pcm-oss]
snd-mixer-oss 4412 0 (autoclean) [snd-pcm-oss]
snd-card-ali5451 11424 0
snd-pcm 30016 0 [snd-pcm-oss snd-pcm-plugin snd-card-ali5451]
snd-timer 8660 0 [snd-pcm]
snd-ac97-codec 23624 0 [snd-card-ali5451]
snd-mixer 27268 0 [snd-mixer-oss snd-card-ali5451 snd-ac97-codec]
snd 36512 1 [snd-pcm-oss snd-pcm-plugin snd-mixer-oss snd-card-ali5451 snd-pcm sn
d-timer snd-ac97-codec snd-mixer]
soundcore 2852 2 [snd]

みたいな感じで無事読み込まれています。ALSAはデフォルトでは全てミュートになっていますのでamixerというコマンドラインユーティリティ又はalsamixerを使って音が出るようにしないといけないみたいです。コンソールで
# alsamixer
とやるとミキサー画面になりますので設定しましょう。矢印キーで次の画面になります。この設定は保存されます。

サウンドデバイスがうまく認識されていない場合、X上のオーディオミキサーなんかも起動しないはずです。
これでXMMSでMP3も聞けます。Winamp常用者には嬉しいっす(笑

その後の調べで(^^; ALSAを入れたから?xconfigでこんなメニューが出てきました。で、これをロードするようにしてKernelを再構築したら、上記にあるmodules.confでの記述なしで音が出ました。ntsysvでalsasoundはチェックしてあります。外すとどうなるかやってみてないし、結果オーライなんで理由は調べてませんのでよくわからないです。(^^;

messagesのサウンドが読み込まれた部分

FIVA kernel: Trident 4DWave/SiS 7018/Ali 5451 PCI Audio, version 0.14.6a, 10:25:44 Jan 26 2002
FIVA kernel: PCI: Enabling bus mastering for device 00:20
FIVA kernel: trident: ALi Audio Accelerator found at IO 0x1000, IRQ 10
FIVA kernel: ac97_codec: AC97 Audio codec, vendor id1: 0x4144, id2: 0x5348 (Unknown)
FIVA kernel: ac97_codec: AC97 Modem codec, vendor id1: 0x5349, id2: 0x4c27 (Unknown)


現在のlsmodは

Module Size Used by
ethertap 2372 0 (autoclean) (unused)
msr 1244 0 (autoclean) (unused)
cpuid 1116 0 (autoclean) (unused)
ide_cs 3364 1
mousedev 3760 0 (unused)
hid 11436 0 (unused)
input 3068 0 [mousedev hid]
ds 6268 2 [ide_cs]
i82365 22056 2
pcmcia_core 50592 0 [ide_cs ds i82365]
autofs 9440 1 (autoclean)
rtl8139 12144 1 (autoclean)
usb-ohci 12496 0 (unused)


ハイバネの設定
とりあえずハイバネらしきものが動作するまでは来ました。でもこれまだちゃんと動かない。復帰で死にます。


LongRun(省電力)
最初GKrellMのRedHat 6.x RPMを入れて、そのPlug-InでGKrelLongRunを使おうとしましたが、GKrellMは使えるものの、GKrelLongRunが何故かうまくPlug-Inとして認識出来なくて…なじぇ?
まあ、GKrellMはなかなかカッコイイんですが、800X600狭いウインドウだし色々立ってない方が幸せかなと。
で結局 ここからLongRun0.9を取ってきてmakeし、手動でInstall
こいつはそのまま使えました(と思う)。

cpuidとmsrが動いてる必要があります。

mkdir -m 0755 -p /dev/cpu/0
mknod /dev/cpu/0/msr -m 0600 c 202 0
mknod /dev/cpu/0/cpuid -m 0444 c 203 0


でデバイスノード作成。 /etc/modules.conf に

alias char-major-202 msr
alias char-major-203 cpuid


を追加して起動時に読み込ませます。
rc.localとかに

if [ -f /usr/bin/longrun ]; then
echo "Starting longrun..."
/usr/bin/longrun -s 0 100
fi


とか書き加えて可変モードで自動起動させませう。

# longrun -f economy


で省電力モード (発熱しません!わーい)

# longrun -f performance

でばりばりモードになります。

pcmcia
内蔵NIC
自動認識しました。

フラッシュカードスロット
試しにCanonのカメラに付いていたFC-8Mを挿入すると

ide2: unexpected interrupt, status=0xff, count=1
hde: Hitachi CV 7.2.2, ATA DISK drive
ide2 at 0x100-0x107,0x10e on irq 15
hde: Hitachi CV 7.2.2, 7MB w/1kB Cache, CHS=246/2/32


てな感じで認識します。

# mkdir /mnt/cf
# mount -t vfat /dev/hde1 /mnt/cf

で読めるようになりました。

hde: Hitachi CVM1.3.3, ATA DISK drive
ide2 at 0x100-0x107,0x10e on irq 15
hde: Hitachi CVM1.3.3, 61MB w/1kB Cache, CHS=978/4/32
hde: hde1 hde2
ide_cs: hde: Vcc = 3.3, Vpp = 0.0

これはiPAQ用Linuxの64MCFカード で、IO-DATAのPCCF-H64MSです。一応OKです。

CDドライブ(Pioneer CD-ROM ATAPImodel PCP-PR24A)



ide2: unexpected interrupt, status=0xff, count=2
hde: Pioneer CD-ROM ATAPImodel PCP-PR24A0101, ATAPI CDROM drive
ide2 at 0x180-0x187,0x386 on irq 15
hde: ATAPI 24X CD-ROM drive, 128kB Cache


は認識しました。
# mount -t iso9660 /dev/hde /mnt/cdrom
でマウント出来ます。

CDドライブとフラッシュカードを一緒に差していると、IRQ15でバッティングし、片方しか使えません。カードの存在は2つとも認識しています。
Jan 23 01:48:08 FIVA kernel: ide_cs: RequestIRQ: Resource in use
Jan 23 01:48:09 FIVA cardmgr[537]: get dev info on socket 1 failed: Resource temporarily unavailable

まあ、使えるからいいけど。

純正CDドライブ(MPC-142CDD)を認識させる

ブートには使えるCDドライブですが、そのままでは問題があって使えません。pcicmaカードの実体はPanasonic KME KXLC005のようです。
ここにあるパッチ(fiva.pcmcia.patch)を貰ってきてpcmcia-csに当ててやります。
パッチをpcmcia-csのディレクトリへcpしたら、シングルユーザーモードになって

# init S
# cd /usr/src/linux/pcmcia-cs-3.1.29/clients
# cp ide_cs.c ide_cs.c.old  ←一応パッチ当てるソース"ide_cs.c"のバックアップ
# cd ../
# patch -p0 < fiva.pcmcia.patch


でパッチが当たります。ちゃんと当たっているか中身を確認したら

# make config all install

で再コンパイルしてInstall

/etc/sysconfig/pcmcia

にpcmciaが使うirq 15を予約追加


PCIC_OPTS="pci_irq_list=15"

/etc/pcmcia/config

に、このCardが正しく認識されるように

card "Panasonic KME KXLC005 CD-ROM"
version "KME", "KXLC005"
bind "ide_cs"


を追加しておきましょう。
再起動しておもむろに純正CDドライブを付けたカードを差してみると、電源ランプが点灯し、dmesgを見ると

Detected: KME KXLC005
hde: UJDB130, ATAPI CDROM drive
ide2 at 0x190-0x197,0x396 on irq 15
hde: ATAPI 20X CD-ROM drive, 128kB Cache
Uniform CD-ROM driver Revision: 3.11
ide_cs: hde: Vcc = 5.0, Vpp = 0.0

と見事認識されました!
マウントして使える事を確認!(翌日談:KXL-830ANでも使えたそうです)
patchを公開してくださったHiroshi MIURAさんと、ポインタを教えてくれた2ちゃんねるLinux板の名もないlogin:Penguinさんに感謝!この件落着!

無線LANカード(IO-DATA)WN-B11/PCM

※カードの設定

/etc/pcmcia/config

に以下を追加

card "IO DATA WNB11PCM Version 01.02"
manfid 0x028a,0x0002
bind "wvlan_cs"


設定はこれだけ。ちょと文句を言われるが、使えるので良し

/etc/modules.conf

に以下を追加(いらないと思うけど)
alias eth1 wvlan_cs

※ネットワークの設定

# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-eth1
←eth1も内蔵LANと同じ設定にしたかったので単純にコピー

カードを挿して

# cardctl ident



Socket 0:
product info: "IO DATA", "WNB11PCM", "Version 01.02", ""
manfid: 0x028a, 0x0002
function: 6 (network)


とばっちり認識されたら

# /etc/rc.d/init.d/network restart

でネットワーク再起動

# ifconfig -a

eth1 リンク方法:イーサーネット ハードウェアアドレス xx:xx:xx:xx:xx:xx
inetアドレス:192.168.0.3 ブロードキャスト:192.168.0.255 マスク:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RXパケット:300 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:177 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:100
割り込み:15 ベースアドレス:0x100


とかで動くことが確認できます。


   
ほとんど見に行かないけどとりあえず私のメールアドレス Bannai_T