必要なものが全てインストールされている場合は、次の手順でLinux/M32Rを起動することが出来ます。
プラットフォームに対応した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の設定のみを変更すれば良いでしょう。
> 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 -s 115200 -l /dev/ttyS0
> 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) restartrestartコマンドが正しく実行されればカーネルが起動されます。 シリアルコンソールの表示を確認して下さい。