Linuxを起動する

Linux起動の手順

Linux起動するにはM32R用のGNUツールのクロスツール、カーネル、 ユーザランドの全てがインストールされている必要があります。
あらかじめインストールしておいて下さい。

必要なものが全てインストールされている場合は、次の手順でLinux/M32Rを起動することが出来ます。

  1. gdbinitを作成
  2. sdiserverを起動
  3. シリアルコンソールを準備
  4. gdbからカーネルを起動

gdbinitを作成

Linuxカーネルをビルドしたディレクトリに移動します。 以下の作業は全てLinuxカーネルをビルドしたディレクトリで行います。

プラットフォームに対応したgdbinitファイルをLinuxカーネルソースのルートディレクトリに .gdbinitという名前でコピーします。

cp arch/m32r/mappi2/dot.gdbinit .gdbinit
プラットフォームとgdbinitファイルの対応は以下の通りです。

プラットフォームファイル名
μT-Engine arch/m32r/m32700ut/dot.gdbinit
Mappi-Ⅱ(M3A-ZA36) arch/m32r/mappi2/dot.gdbinit

gdbinitファイルは環境依存の設定が含まれているため、あらかじめ修正しておく必要があります。 88行目にある以下のような行がその設定です。

set {char[0x200]}($param + 0x100) = "console=ttyD0,115200n8x root=/dev/nfsroot
nfsroot=192.168.0.1:/project/m32r-linux/export/root.2.4 nfsaddrs=192.168.0.101:192.168.0
.1:192.168.0.1:255.255.255.0:mappi001: \0"
これはカーネルの起動パラメータです。詳細は以下のようになっています。

パラメータ名機能
console ターゲットがコンソール出力に使うデバイスと出力ボーレートの設定。
root ターゲットのルートファイルシステムの設定。 デフォルトではNFSルートファイルを使用。
nfsroot NFSルートファイルシステムの設定。 順にNFSルートを提供するホストのIPアドレスとそのディレクトリ。
nfsaddrs ネットワークの設定。 順にターゲットのIPアドレス、NFSルートを提供するホストのIPアドレス、 ゲートウェイのIPアドレス、ネットマスク、ターゲットのホスト名。

通常はnfsrootとnfsaddrsの設定のみを変更すれば良いでしょう。

sdiserverを起動

gdbはM32Rの評価ボードと直接接続する事が出来ません。 gdbとM32Rの評価ボードの通信を仲介するsdiserverをあらかじめ起動して下さい。 sdiserverは直接ポートにアクセスするため、スーパーユーザ権限で起動する必要があります。
> su
> /usr/local/m32r-linux-3.2/bin/sdiserver
sdiserver 1.5
Copyright (c) 2003 Renesas Technology Co. All rights reserved.
Waiting for connection to port 3232

シリアルコンソールの準備

ターゲットのコンソール出力はシリアルポートを使ってホストと接続します。 あらかじめcuコマンドを起動しておいて下さい。
 cu -s 115200 -l /dev/ttyS0

gdbからカーネルを起動

Linuxカーネルをビルドしたディレクトリに移動し、m32r-linux-gdbを起動します。
> m32r-linux-gdb 
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i586-pc-linux-gnu --target=m32r-linux".
(gdb) 
targetコマンドを使ってgdbをターゲットと接続します。 targetコマンドの引数にはm32rsdiと指定して下さい。
(gdb) target m32rsdi
Remote m32rsdi connected to M32R/XNUX
このように「Remote m32rsdi connected to ~」と表示された場合は正しく接続が行われています。 エラーメッセージが表示された場合はPCとターゲットボードが正しくプリンタケーブルで接続されているか、 sdiserverが正しく起動されているか等をお確かめ下さい。

restartコマンドを実行します。 restartコマンドはgdbinitファイル内で定義されたユーザ定義のコマンドであり、 ターゲットボードの設定やカーネルのロードを行った後、カーネルを起動します。

(gdb) restart
restartコマンドが正しく実行されればカーネルが起動されます。 シリアルコンソールの表示を確認して下さい。

ログイン

カーネルが起動したらターゲットにログイン出来ます。 sloginコマンドを使ってログインして下さい。 スーパーユーザの初期パスワードは「root」となっています。

戻る


Last modified: 2004/03/24 webmaster@linux-m32r.org