buildroot

 mc68000uClinuxを2012年に移植した方のhpがあって存在を知ったのは5年程前な気がするが先日ドキュメントをよく読んで見ると十年越しの懸案たるm68030_v0のLinux(MMUあり)の実装に参考になる要素を見つける。見直しを必要とするのはFT245の追加(USB-serialでダウンロード時間の短縮:kernelだけで5MB以上有るのでシリアルではキツイ)、割り込みはAutovector(最大6要因:ft245txe,ft245rxf,16550,systimer,nic,予備,(level7))で良いかなと。割り込みベクトル生成するのは可能だけどCPLDのマクロセル数鑑みるとオートベクターで足りるのであればそれで良いかなと。もっともFT245用のlinuxドライバは存在しないのであくまで開発用でlinuxで使用可能なデバイスには出来ない(理由:linuxドライバをスクラッチで起こすスキルは今の私には無い)との割り切りが必要でその観点からすればft245割り込みは必須では無い(フラグセンスで良い)との「割り切り方」も無いでは無い。これはベクトル割り込みでもautovectorでも関係無いから規定事項とする。実はbuildrootで形式的にもビルド正常終了でoutput/images/vmlinuxが生成出来ているのはcpuが68030の場合だけでnommu(FLAT)の68020,68000はuclibc系でエラーが出ているので何らかの対処が必要だが目的の68030では問題無いのでこれで由。buildrootのkernel configで調べなければならないのは割り込み資源の定義方法とハードウェアドライバ(16550,timer,nic,ata)の資源定義とハードウェアデザイン(具体的にはドライバにハードウェアを合わせる形になる)の整合方法で十年前に買い込んだオライリー本の電子書籍版(LinuxカーネルLinuxドライバの各名著)を読み返している。十年以上掛かってるのだから更に半年でも数年掛かっても何とも無いので思考麻痺・停滞を起こさぬ様にしつつ地味にコツコツ進める。まあ来週になったら生活パタンが変わる(サラリーマンに復帰出来る予定・・・)からこんな寝言は書けなくなるのだろうけどね。世の中得る物があれば失う物があるが思考麻痺・停滞を起こさぬ様に勤めれば失う物を減らす事は出来る筈で両者が相反関係にあるとは限らない。

f:id:aki_iic:20200604215938p:plain

buildroot linux-menuconfig m68030