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

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

カテゴリ(タグ)ツリー

ファイル情報

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

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

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


ファイルのダウンロード

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

機材の準備

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

H8/3068ボードの改造

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

ホストPCの準備

ネットワークを使う場合は、いろいろ準備があります。
使わない場合は、飛ばしてください。
  • BOOTPサーバーの用意
    RedBootが起動時にBOOTPでIPアドレスを取得します。
    私はISC dhcpdを使っています。 fixed-addressを設定するとBOOTPが使えるようになります。 (何もしないと、BOOTPは無視されます)
    他のDHCPサーバーは使えるかどうか良くわかりません。
    ちなみに、BOOTPに応答してもらえなかった場合、 RedBootのネットワーク機能は動きません。
    IPアドレスを設定したRedBootをコンパイルすればすむ話ですが。
  • TFTPサーバーの用意
    無理にとはいいませんが、あった方が楽です。
    inetd.conf/xinetd.confを適当に設定してください。
    Windowsの場合は、Cygwinを入れれば使えるんじゃないかと思います。
Diskless Bootの設定と同じなので、 その方面にもっと親切な文章があると思います。

各機器の接続

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

RedBootの書き込み

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


RedBootの起動

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

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

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


uClinuxのロード

あらかじめ
  • ファイルが圧縮されている場合は、展開してください。
  • TFTPでダウンロードする場合は、TFTPのルートディレクトリにファイルを配置してください。
で、カーネルをH'400000、ルートイメージをH'4A0000にロードします。
コマンドは、
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になるので、操作できなくなります。 注意してください。

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


最後に

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

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

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


Project Page
Yoshinori Sato