Maxの日記: knoppix - hwdata
ちょっと中を分析した結果。
本来はpci.idsからmakeidsスクリプトでpcitableを生成するように
なっている。しかし、ビルド時には使用されていない感じ。
hwsetupが動作に使用するのもpcitableだけのようだ。
で、元のhwdataとKnoppixのhwdataのpcitableをソートして差分を
取ってみた。たとえば次のようになっている。
-0x1013 0x1200 "Card:Cirrus Logic GD754x (laptop)" "Cirrus Logic|GD 7542 [Nordic]"
+0x1013 0x1200 "Server:XF86_SVGA" "GD754x (laptop) GD 7542 [Nordic]"
この差分がknoppix-pcitableに存在している。
knoppixとして元のhwdataでのマッピングでは適切ではないものに対する
差分ということになる。オリジナルのpcitableにできるだけタッチしない
ように考えているのだろうと思う。
一旦通常通りにhwdataをビルドした後に、この差分を併合(同一IDの重複
エントリは除外する)。そのデータベースを元に/etc/sysconfig/に、
それぞれのハードウェアの認識結果を格納する。
X Windowのドライバの場合は、この結果(/etc/sysconfig/xserver)を元に
mkxf86configでXF86Config*を生成することで行われる。これがXのドライバ
の自動識別ロジックの大筋で、起動時にknoppix name="**"の形で与えられ
た指定は、mkxf86configの中でオーバライドされる。
ドライバがきちんと動くという前提だが、もしパラメータ無しで起動
できない環境があったとしたら、knoppix-hwdataに正しいマッピングを
与えることでかいけつできるという事になりそうだ。
行うべき作業としては、
1) hwdata-0.61と0.44との差分の把握
2) knoppixとしてのマッピングの妥当性検証
3) 必要に応じてknoppix-pcitableにエントリ追加
という事になる。
1)についてはすべて個人作業可能
2)についてはこれまでの報告を元に、現0.44で検討するべきマッピング
を洗い出し、1)で明らかになった差分に無いかを見る
とりあえずここまでの内容で3)の作業を実施、hwdataを配布。
あとはフィードバックに基づき、これらを繰り返す事になるな。
knoppix hwdata More ログイン