[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[pbsd-mg2] userland & kernel change
userlandとカーネルを少し変更しました。
カーネルの変更は、主にMC-R700のシリアルコンソールを使えるようにするため
のものと、APA-1460のドライバの更新です。
MC-R700では、シリアルポートの制御がGIUのGPIO46で行なわれているらしいので、
MC-R700の場合はそこを叩くようにしました。R700以外のMC-Rシリーズについて
は動作の変更はないつもりです。
また、GIUの割り込みがCEが設定したままになっていると、NetBSDが知らない割
り込みが入って止まってしまうので、これもR700の場合は最初に全部disableに
するようにしました。他の機種では従来のままです。
APA-1460のドライバは内山さんの情報を元に、-currentから持ってきました。
userlandの修正は、softfloat関係と、単にコンパイルが通るようにしただけの
ものと、カーネルのデバイス番号の変更に対応したMAKEDEVの修正です。
softfloat関係は、当座しのぎとして、MIPS用のコンフィグファイルを直接変更
しています。正しくは、新しいMACHINE_ARCHを定義して、NetBSD 1.4のmipsel,
mipsebのように分けるべきだと思いますが、そういう作業は1.4なり-currentな
りにマージする際に一気にやればいいと思ってこうしてあります。
現在、CVSのソースから作ったカーネルと、クロスコンパイルして作った
userlandを使ってdisklessで起動し、NFSでマウントしたソースツリーを自分で
make buildしていますが、結構快調に動作しています。
もっとも、怪しいところがないわけではなく、
options HPCMIPS_FLUSHCACHE_XXXを指定している
シリアルコンソールに大量に出力していると(?)ゴミのデータをコンソール
に出力し続けることがあるので、他のマシンからrloginして作業している
という点で、絶好調とは言いがたいところがあります。
HPCMIPS_FLUSHCACHE_XXXは、これを指定しないとSCSI HDDをルートファイルシス
テムとして起動したときに、cc -O2がcore dumpしてしまうためにこうしてあり
ます。
篠原