最新更新日 2002'05.12.
更新項目  FreeBSD 5.0-CURRENT-20020506-JPSNAP の情報を新規に作成しました。

 基本的に、トップページに手を加えることはもうしないと思うので、その後にリリースされる FreeBSD の情報に付いてはこちらに、バージョン毎に書いていきたいと思います。書くネタ尽きたらもう終わりです(^^;;。

5.0-CURRENT-20020506-JPSNAP のお話。
  まぁ、CURRENT と言うのは生き物でありまして、日々進化しているわけです。そんなこんなで CURRENT-DP1 リリース以降をインストールする時の FIVA MPC-206 のおまじない的インストールに付いて追加してみましょう。

  基本的に、4 系 RELEASE などの方は更新せず、CURRENT ネタとしてこっちが更新になります。去年末以来 CURRENT のバージョンを上げていない人に参考にしていただければ。と思います;-)。

  さて、本題ですが、私は HDD を一旦 format してしまったのでサラからの状態から CURRENT をインストールしています。カーネル部分に付いて、基本的には 岩崎さん が作成したパッチがベースとなり、それを最新 CURRENT に適用したパッチを利用します。FIVA の ML で最新版へ対応したパッチが流れたのでそれを利用すると良いでしょう。

http://ml-ar1.infoseek.co.jp/MLarchive/user/7887/html/msg000008374.php3

  このページへもリンクしてくださっている 川島さん 作のパッチです。

  ここからパッチを持ってきてカーネルに当ててから make すれば OK です。一部、/usr/src/sys/pci/vga_pci.c と、/usr/src/sys/modules/vga_pci/Makefile が生成されないのでその部分を手パッチで作成してからカーネルを再構築しましょう。これで 5.0-CURRENT-20011211-JPSNAP の頃と同等の機能は動く様になるかと思います。

・カーネルのコンフィグファイル
  CURRENT では二つのファイルが必要になっています。これらに付いては、藤田さん のサイトに掲載されているので詳しくはそちらを参考にしてください。以下は hits ファイルの差分です。ま、FD 無いでしょ。パラレルポート無いでしょ。シリアルポート無いでしょ。的設定です;-)。

----------------
# diff GENERIC.hints Chibi_5.0_Kernel.hints
43c43
< hint.pcic.1.irq="11"
---
> #     hint.pcic.1.irq="11"
46c46
< hint.pcic.1.disabled="1"
---
> #     hint.pcic.1.disabled="1"
50c50
< hint.sio.0.irq="4"
---
> hint.sio.0.irq="0"
53c53
< hint.sio.1.irq="3"
---
> hint.sio.1.irq="0"
86a87,90
> #
> hint.fdc.0.disabled="1"
> hint.sio.1.disabled="1"
> hint.ppc.0.disabled="1"
----------------

  GENERIC はほぼ今まで通りと言う事で;-)。以下は速く動く様に、デバッグオプションをはずしている所です。hints はヒントファイルを指定しています。

----------------
#To statically compile in device wiring instead of /boot/device.hints
hints           "Chibi_5.0_Kernel.hints" #Defaultplaces to look for devices.
---
# Debugging for use in -current
#makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols

#options        DDB                     #Enable the kernel debugger
#options        INVARIANTS              #Enable calls of extra sanity checking
#options        INVARIANT_SUPPORT       #Extra sanity checks of internal structures, require
d by INVARIANTS
#options        WITNESS                 #Enable checks to detect deadlocks and cycles
#options        WITNESS_SKIPSPIN        #Don't run witness on spinlocks for speed
----------------

・ハイバネーション
  基本的に、BIOS の設定で "Save To Disk" にするのはお約束です。その後、4 番目のパーティションに 0xa0 のパーティションを作成するのも変わりません。その手順を書いておきます。

1. FreeBSD のインストール時、FDISK Partition Editor の画面で作業を行います。
2. その時、まずは四つのパーティションを切ってしまいます。そして、最後の 4 番目のパーティションはハイバネ領域のサイズ分を確保して sysid を 160 として書き込みます。
3. 例えば 1 番目のパーティションは sysid 7 を書き込んだとして、その後で 2,3 番目のパーティションを削除します。
4. 一旦削除してから新たに一つのパーティションを作成してして sysid を 165 にします。
5. こうすると、パーティション 1,2,4 と言う風に出来たかと思います。

  これでインストールしましょう。インストールが終わった後で、PHDISK な領域をフォーマットしてあげる必要があります。 岩崎さん が作成した、FreeBSD 上からフォーマット出来るツールを使う事にしましょう。使い方は 藤田さん の所に書いて有ります。簡単に書いておくと、

1. gcc -o phformat phformat.c で make する。
2. ./phformat と実行。phformat.dump と言うファイルができる。
3. root で # cp phformat.dump /dev/ad0s4 と実行。これには時間が掛かる。

  これでおしまいです。早いですねぇぇ。DOS から phdisk.exe を実行する必要はありません。ありがたい事です。phformat.dump のサイズは 0xa0 で切られたパーティションサイズの大きさとなります。自分で積んでいるメモリからサイズを決めましょう。

  尚、S4 でサスペントする時には、「ぴっぴっぴっ」で止まってしまうかもしれないので、BIOS の HDD の設定の所で、UDMA のモードを MODE3 としておきましょう。ブート時には一応 UDMA66 として認識されるので問題は無いです。

  それにしても MPC-206 系の IDE ケーブルは UDMA33 までにしか対応していないケーブルを使っています。なので、実はあんまり転送モードを気にすることは無かったりします;-P。

・起動の準備
  カーネルができて、サスペンドの準備ができたので後は、ブート時の設定を行います。/boot/loader.conf に以下の設定を記入してからブートしてみましょう。

----------------
hw.ata.wc=1
hw.pcic.intr_path="1"
hw.pcic.irq="0"
----------------

  更に /etc/sysctl.conf には以下の設定を書き込みます。

----------------
hw.acpi.cpu.economy_speed=8
hw.acpi.lid_switch_state=NONE
hw.acpi.standby_state=S4
hw.acpi.suspend_state=S4
hw.acpi.power_button_state=S4
hw.acpi.sleep_button_state=S4
hw.acpi.thermal.min_runtime=300
hw.acpi.battery.info_expire=30
----------------

  これでブートすると幸せになるのではないでしょうか;-)。

・XFree86 と KDE-2.2.2
  5/6 版の CURRENT は XFree86 が 4.2.0 になっています。それをそのまま pkg_add して使う事にしましょう。XF86Config は 4.1.0 のがそのまま使えます。嬉しい事ですね。とはいっても /etc/X11 が無いので、XF86Config は /etc に、XftConfig は /usr/X11R6/X11 に格納する事にしましょう。

  KDE についてですが、CURRENT では既に KDE3 の ports が用意されています。そちらを使っても問題は無いかと思いますが、私は KDE2 の方をチョイスしました。これが正解でしたねぇぇ。FreeType や QT はデェフォルトでアンチエイリアス対応しているのか、サクッと表示してくれます。すごっ!!でもって 4.5-RELEASE などでは MS ゴシックなど、固定幅フォントが一部のサイズで表示できなかったのが、全てのサイズで表示出来る様になりました。すげーー。

  さらに嬉しい事に、konqueror で一部 "・" として文字化けしていた文字が正しく表示出来る様になっています。こらまた嬉しいですね;-)。尚、詳しいKDE2 のアンチエイリアスについては FreeBSD PRESS No.10 を参考にしてください;-)。

・最後におまけ。
  GKrellM のプラグインである、gkrellmwireless-0.2.2 の make が通らなくなりました。これは、wi/an のヘッダファイルの持ち方に一部変更が出た為です。wireless.h を以下の様に変更すれば OK でしょう。

----------------
diff -c  wireless.h.ORG wireless.h
*** wireless.h.ORG      Sun Sep  9 23:25:55 2001
--- wireless.h  Mon May 13 16:03:11 2002
***************
*** 21,29 ****
--- 21,35 ----
  #include <gkrellm/gkrellm.h>
  #ifdef __FreeBSD__
    #include <net/if.h>
+ /*
    #include <machine/if_wavelan_ieee.h>
+ */  
+   #include <machine/if_wl_wavelan.h>
+   #include <machine/ieeefp.h>
+ 
    #define ANCACHE
    #include <dev/an/if_aironet_ieee.h>
+   #include <dev/wi/if_wavelan_ieee.h>
  #endif
  
  #ifdef __NetBSD__
----------------

  そして、他にもプラグインを使っている様であれば、全てのプラグインを一旦、全部 make し直して上げましょう。これで動く様になるかと思います;-)。

  うーうー。一応駆け足で書いてきましたがこれで動きます。ここは覚え書き程度に書かれています。参考にさせて頂いた皆さんの URL はリンクしてあるのでそれを参考にしてください。ここではそれを寄せ集めてまとめただけです;-)。皆さん、有り難うございました。

  

5.0-CURRENT-20011211-JPSNAP のお話。
  と、言う事で、事の発端は横浜で開かれた Internet Week2001 になるわけですが、T.ogasawara さん が ワーナーさん に MPC-205 開発版を贈呈し、私は MPC-206 で 発表を終えた段階で 5.0-CURRENT に移行しました。それにしても RELEASE がインストールされた NotePC は必要だと思い、専用に SONY VAIO PCG-C1R を中古で購入したのですが、CURRENT はサクサクと動いてしまい、なんか、無理して APM にしか対応していない PCG-C1R を購入する必要は無かったかな。と、思っていますが・・(^^;;。

  ま、基本的なインストールについては、以下の 藤田さん と T.ogasawara さん の URL に書かれています。私はこれをみてインストールしただけです。なぁんも自分からはしていません(^^;;。皆さんもここをみてインストールしてみてください。

藤田さん の URL:http://fjts.org/~m/Install/FIVA206/
T.ogasawara さん の URL:http://csc.jp/~cassiopeia/fiva/20x/freebsd_5.html

  この二つを読んでインストール、設定すれば文句無く、MPC-206 で 5.0-CURRENT で幸せになれます。これらのためにハックしてくださったのはもとを正すと 岩崎さん なので、パッチは岩崎さんの所にあります。上記の URL にも書かれていますが、ここにも一応書いておきます。

岩崎さん のパッチ URL: http://people.freebsd.org/~iwasaki/acpi/

  上記の URL から acpi-mutex-20011204.diffと、fiva-20011216.diffをダウンロードしてパッチを当てれば OK です。   前者の方はもしかしたら既に本家にマージされているかもしれません。パッチを当てる前にソースを見て確認してください。

  さて、今回、5.0-CURRENT を MPC-2 シリーズにインストールするにあたり、岩崎さん 藤田さん T.ogasawara さん そして 梅本さん のお力沿いがありました。有り難うございました。梅本さん とは去年の年末にかけてほぼ毎週会っていたのですが、その度に「もう FIVA で ACPI はばっちりだよ。」と何回もお話を伺っていたりします(^^;;。本当にもうばっちりです。

  と、言う事で、じゃ、お前は何をやったんだ?と聞かれれば・・。うぅぅみゅ。実はなぁんもしていないんですな。ま、しいて言うなら、強引に KDE-2.2.2 の make を通した事くらいでしょうか・・(^^;;。その辺り、ちびっとだけ書いてみたいと思います。

・KDE-2.2.2 を使う。
  まぁ、CURRENT を使うとは言っても実用レベルではいろいろなアプリケーションが必要になるわけですが、packages が全然ない状態ではどうしようもないので自分の力で、ports から make するわけです。今回は、カーネルのお話は無しで、XFree86 4.1.0+KDE-2.2.2 だけを make すると、MPC-206 では優に 24H 掛かります;-)。

  しかも、KDE-2.2.2 の場合は make が通らないのでソース修正が一部必要に なりました。と、言っても比較的簡単な修正で済みましたが・・;-)。

  KDE-2.2.2 のインストール手順を簡単に書くと、

1. XFree86 を自力で make けどインストールはまだしない
2. 依存関係解消のため XFree86-4.1.0_10.tgz を pkg_add
3. imake が古い(3.3.6)のを要求されるので自力で make した XFree86 からインストール
4. /usr/ports/x11/kde2 を make;install
5. /usr/ports/japanese/kde2-i18n を make;install
6. /usr/ports/japanese/kde2 を make;install

  これで関連する物も全部インストールしてくれますが、さすがに時間がかかるので、既に packacges として存在しているモノは pkg_add してしまった方がちょっとは早く終わるでしょう(^^;;。けど、もしかしたらこうする事の方が返って問題を大きくする可能性大だったりするかも知れません・・。

  KDE-2.2.2 のアプリケーションは本家版を先に make;make install してから、日本語版を make;make install しないとダメです。でもって更に、kdegraphics2 なんかは make が途中でエラーになって止まってしまいます。font.cpp とかでとまります。これらを回避するためにはソース修正するのですが、エラーをみて「なんか変だぞ。」と思ったあなた、それは大正解;-)。#include malloc.h と言う行をコメントアウトして make するとまたガンガン進み出します;-)。これを KDE 全体で 3 個位編集すると make が通るようになります。ね。簡単でしょ;-)

  まぁ、COMPAT-4x があるので 4.4-R の packages をつかっても良いのですが、libc を古いバージョンで済ませる。ってのもちとやな気分ですよね。

  こんな感じでおしまいです。KDE-2.2.2 を使ってみた感想ですが、konsole が良く落ちます:-(。kdm は /etc/pam.conf に kde の設定がデェフォルトで入りました。また、/usr/local/share/config/kdm の xdm の各種設定ファイルは参照しない様になりました(KDE-2.1 の様になったと言う事です)。と、言う事である意味では非常に使いやすくなりました;-)。

・USB について。
  ACPI が動く様になった MPC-206 ですが、起きた後、USB マウスとかが動作しないんですね。なんじゃそら。と、言う事ですが、起き上がった後、USB マウスを一旦抜いてまた差し直せば動き出します。なんか話によると、FreeBSDの USB 関係はへぼくて初期化されていないのが原因だそうです。

  ACPI にたずさわっている某氏は「修正したパッチを書いたけど、それは USB な人にとってでしゃばりに相当するので公開はしない。」と申しておりました;-)。今のと頃は、起き上がったら差し直す。と、言う手順を踏みましょう;-)。


4.4-RELEASE のお話。
・PCMCIA が使えない?
  むぁず、何と言っても、PCMCIA が使えなくて驚くことでしょう;-)。FreeBSD 的には CardBus 対応に移行しつつあるんですが、その時、PCI として認識すると動かないんですね。sysctl で ISA として認識する様に設定すると、PCMCIA が復活します;-)。/boot/loader.conf に以下の行を追加すると動く様になります。

----------------
hw.pcic.irq="0"
hw.pcic.intr_path="1"
----------------

  これで、NotePC の PCMCIA が無事に動く様になると思います。めでたしめでたし;-)。

  では、インストールの時にはどうしたか?と、言うと、私の場合は USB 接続の FDD でブートして、オンボードの NIC を利用して ftp インストールしました。これだと、pcic 絡みでトラブルが起きることは無いので安心です;-)。インストールの時に PCMCIA カード経由の CD などを利用する場合は、ブート時の ok? プロンプトで

----------------
set  hw.pcic.irq=0
set  hw.pcic.intr_path=1
----------------

  と、してあげましょう。

  しかし、一旦サスペンドから起き上がると PCMCIA が使えない。と、言う問題点が残っている様です。これを回避するために 川島さん と言う方がパッチを作って下さいました。それを当てるとばっちり使えるようになます。

・CF スロットが使えない・・。
  確かに使えなくなりました。CardBus を PCI として利用する様にコードが入ったおかげで、カーネルの設定では、IRQ と iomem を任意の値に設定できなくなってしまったためです。カーネルの設定は基本的には以下の設定だけで OK です。

----------------
# PCCARD (PCMCIA) support 
device         card 
device         pcic0
device         pcic1
----------------

なので、勝手に IRQ と iomem が設定されます。4.3-RELEASE の頃はこれを任意の値で設定する事が出来たので CF カードが無事に使えていました。ちょっと悲しいですが、ま、ZVBus から CardBus への移行期間中と、言う事で諦めることにしましょう。

・LongRun がマージされました。
  服部さん が作成された LongRun ドライバ(Crusoe CPU の判別)が本家にマージされました。なのでデェフォルトで LongRun の機能が有効となります。状態は sysctl コマンドで制御できます。sysctl でのパラメータは

----------------
hw.crusoe.longrun: 1
hw.crusoe.frequency: 600
hw.crusoe.voltage: 1600
hw.crusoe.percentage: 100
----------------

  になりますが、CPU 速度は hw.crusoe.longrun を 1 〜 3 で変更する事により変えられます。

  藤田さん が作成された GKreiiM のプラグインは 4.4-RELEASE でもそのまま利用できます。しかし、速度の設定では 服部さん 作の longrunctl と言うのが必要になるので、服部さん の web から ports をダウンロードしてインストールする必要があります。その時、Set-uid が必要になります。

・サウンドに付いて。
  基本的には 横川さん と言う方が、Acer Labs M5451 と言うチップに対応したパッチを公開してくださいました。所が、「良くソースを追ってみると Trident 4D と同じなので、そっちに組み込んだが方が良いだろう。」と、言う事で、/usr/src/sys/dev/sound/pci/t4dwave.c に当てるパッチを公開して下さいました。このパッチは、既に 4.4-RELEASE にはマージされているので、サウンド回りはもうパッチを当てる必要がありません。

  しかし、このパッチにも問題点があり、サスペンドから起き上がった後は音が出ない。と、言う問題が残りました。なので、川島さん と言う方が更にパッチを書いてくださいました。初期化をちゃんとやるパッチの様です。このパッチを当てると、サスペンドから起きた時でも音がなるはずです・・(^^;;。

・APM に付いて。
  いわさきさん が書いてくださったパッチは FIVA MPC-20* 特有のパッチなので本家にはマージできません。STABLE を追いかける人はずっとこのパッチを適用する必要があります。

  ちなみに いわさきさん の MPC-206VL では、リリースが一年延びた 5-CURRENT がインストールされ、ACPI ばバリバリ動いていました;-)。

  と、言う事ですが、MPC-206VL を持っている人はサスペンドで寝る時には HDD の転送速度が UDMA66 の場合でも問題無く動作すると思います。以前の「ピッピッピッ」問題は無いかと思います。

  私の MPC-206 は実は、MPC-206VL と同じ(正確には同じく無いらしいですが)BIOS が載っているので、BIOS レベルで UDMA66 転送の設定があります;-)。これを利用すると HDD は UDMA66 で動作しています。寝るときにも問題は発生していません;-)。

  と、言う事で、MPC-206 で 4.4-RELEASE を使うための方法を解りやすくまとめたつもりですがいかがだったでしょうか。皆さんいろいろなパッチを書いてくださるので助かりますね。有り難うございます。

  NetBSD 方面では、塩崎さん がパッチキットを公開し下さりました。こいつは凄いっ!!なんと、APM の情報を無理くり拾って来てでっちあげてバッテリの残量を見る事が出来たりします。皆さん、各方面で頑張っている。と、言う事ですね。嬉しいかぎりです。はい。


Copyright (c) 1997-2004 takachan@running-dog.net All Rights Reserved.