[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してしまうためにこうしてあり
ます。
	
篠原