オープンソース・ソフトウェアの開発とダウンロード

秋月 H8/3068 ボードで動かすの表示

カテゴリ(タグ)ツリー

ファイル情報

カテゴリ(タグ)
ルート
ファイル名
uclinux-aki3068net
最終更新
2004-02-26 23:37
種類
HTML
作成者
佐藤 嘉則
概要
uClinuxを秋月通商製のH8/3068ボードで動かすための方法です。
言語
英語
日本語
翻訳する

uClinux H8/300H を秋月 H8/3068ボードで動かす

uClinuxを秋月通商のH8/3068 or H8/3069ネットワークマイコンで動作させるための手順です。
それなりに安定した(と思う)ので、まとまった文章を作りました。
よくわからんというところは、検索すれば多分出てきます。

2.0.39カーネル用です。2.4は一部違います。

ファイルのダウンロード

次のものをダウンロードしてください。

カーネルとルートイメージは、何種類か用意してあるので、環境に併せて選んでください。 よく分からない場合は、NFSで無いものを使ってください。


機材の準備

  • H8/3068ボード
    メモリの増設とRTL8019ASの割り込みラインの改造が必要です。
    初回版の人は適当に改造してください。
  • 電源(念のため)
  • ホストPC
    ネットワークがつかえたほうが便利です。
  • RS232Cケーブル
    ないと何も出来ません。
  • LANケーブル
    無くても動かすことは出来ます
普通に必要な物です。特に変わったものはありません。

H8/3068ボードの改造

  • RAMの増設
    運悪くおまけのDRAMが付いていない場合は、 H'400000 - H'5FFFFF にRAMを増設してください。
    裏面のパターンにメモリを載せれば、そうなります。
    これ以外の方法で増設してもかまいませんが、RedBootでBSCを初期化しているので、 その部分を適宜変更してください。
  • RT8019ASの割り込み
    CPUのIRQ5にRTL8019ASの割り込み要求(INT4)を入れてください。
    初回版の場合は、INT4出力を反転してIRQ5に入れてください。 CPUはレベルセンスで拾っているので、タイミングはそれほどうるさくないはずです (タイミングチャートをあたっていないので、正確なところはわかりません)。
    第2ロット以降は、改造しなくてもいいみたいです。

ホストPCの準備

ネットワークを使う場合は、いろいろ準備があります。
使わない場合は、飛ばしてください。
  • BOOTPサーバーの用意
    RedBootが起動時にBOOTPでIPアドレスを取得します。
    私はISC dhcpdを使っています。 fixed-addressを設定するとBOOTPが使えるようになります。 (何もしないと、BOOTPは無視されます)
    他のDHCPサーバーは使えるかどうか良くわかりません。
    ちなみに、BOOTPに応答してもらえなかった場合、 IPアドレスを手動設定する必要があります。
  • TFTP/HTTPサーバーの用意
    600Kぐらいのバイナリをシリアルダウンロードする事に 耐えられない場合は、必要です。
  • NFSサーバー
    当然NFSRootを使う場合に必要です。
Diskless Bootの設定と同じなので、 その方面にもっと親切な文章があると思います。

各機器の接続

普通につないでください。よくわからない場合は、ボードの説明書に書いてあります。

RedBootの書き込み

今の所uClinuxをブートできるのはRedBootだけなので、 ダウンロードしたROMイメージを解答して、ROMに焼いてください。
でかいので、結構時間がかかります。気長に待ってください。
これで、動かすための下準備は終わりです。


RedBootの起動

  1. シリアル端末プログラムを起動して、通信手順を38400BPS B8S1PNに設定してください。
  2. ボードの電源を入れると、RedBootの起動メッセージが出てきます。
    BOOTPが使える場合は、取得したIPアドレスが表示されているはずです。 その時に、ポート9000にtelnetで接続すると、そっちでも操作できます。
    BOOTPが使えなくても、ネットワークを使う場合は、"ip_address"コマンドで設定してください。

うまく行かない場合は、どこか間違えているので、悩んでください。

RedBootの操作は、Helpを見るかRedBootのドキュメントを読んでください。


uClinuxのロード

あらかじめ
  • ファイルが圧縮されている場合は、展開してください。
  • TFTPでダウンロードする場合は、TFTPのルートディレクトリにファイルを配置してください。
で、カーネルをH'400000、ルートイメージをH'4A0000にロードします。 NFSの場合は、ルートイメージをロードする必要はありません。
コマンドは、
RedBoot> load -r -b 0x400000 [any options] linux.bin
で、カーネルのロード、
RedBoot> load -r -b 0x4a0000 [any options] rootimage.bin
で、ルートイメージのロードです。
何も指定しない場合は、
ネットワークがつかえない場合YMODEMでダウンロード
ネットワークがつかえる場合デフォルトのサーバーから、 TFTPでダウンロード
になります。

XMODEM/YMODEMでダウンロードする場合は、コマンドを実行した後、 アップロード操作を行ってください。多分5分ぐらいかかります。
ちなみにZMODEMはHELPに出てきますが、実際は使えません。


uClinuxの起動

単純に
RedBoot> go 0x400000
でも起動できますが、コマンドラインを渡せないので、いろいろ不便です。
ということで、起動コマンドを追加しました(非公式)。
RedBoot> exec [-c "コマンドライン"]
です。

シリアル端末が、H8/3068ボードのRS232Cコネクタにつながっている場合は、 "console=/dev/ttyS1"をコマンドラインに指定してください。
指定しないと、コンソールが/dev/ttyS0になるので、操作できなくなります。 注意してください。

NFSRootを使う場合は、"nfsroot=〜"をコマンドラインに指定してください。
詳しい事は、HOWTOを参照してください。普通のlinuxカーネルと同じです。

うまくいけば、そのうち起動します。
後はごく普通のlinuxです。
/binの下にコマンドがいくつか入れてあります。 テスト用なので、大した物ははいっていません。
基本的にはuClinuxのユーザーランドなので、使い方はそっちをあたってください。
あと、危ないテストプログラムもそのまま入れているので、 こけた場合は、素直に再起動してください。


最後に

まとまった文章とか言いつつ、全然まとまってません。 抜けているところもたくさん有りそうだし…。
特に、環境設定(BOOTP,TFTP)関係はDiskless Bootと同じなので、かなり省略しています。

少しずつ書き足していきたいと思いますが、優先順位はかなり低めです。 他にもまとめないといけない文章があるので…。

各種指摘・質問・「書き直してやったぞ」というありがたい報告等は、 出来ればML に送ってください。


Project Page
Yoshinori Sato