GR-PEACH + U-Bootでtftpboot


会社帰りにパーツ屋へ閉店時刻ぎりぎりに滑り込んでLANコネクタを買ってきた。んでボードにハンダ付けして早速動作確認。TFTPの使い方をよく知らないのでGoogle先生に聞きながら適当に実施。

まずDHCPIPアドレスを取得する。

=> setenv autoload no
=> dhcp
sh_eth Waiting for PHY auto negotiation to complete.. done
sh_eth: 100Base/Full
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.0.7 (577 ms)

お、取れた。ということはU-Bootで通信はできているということなので一安心。

次に接続先のIPとファイル名を指定。

=> setenv serverip 192.168.0.5
=> setenv bootfile netbsd.bin

tftpbootコマンドで先ほど指定したIPアドレスからファイルをダウンロードして0x20000000に展開。

=> tftpboot
sh_eth:0 is connected to sh_eth.  Reconnecting to sh_eth
sh_eth Waiting for PHY auto negotiation to complete.. done
sh_eth: 100Base/Full
Using sh_eth device
TFTP from server 192.168.0.5; our IP address is 192.168.0.7
Filename 'netbsd.bin'.
Load address: 0x20000000
Loading: #################################################################
         #################################################################
         #################################################################
         ###################################
         2.8 MiB/s
done
Bytes transferred = 3376148 (338414 hex)

ダウンロードは1〜2秒で終わるので後々トライ&エラーする羽目になってもストレスが溜まることは無さそう。

で実行。

=> go 0x20000000
## Starting application at 0x20000000 ...
hey, favstar! ban stop me premiamu! -- @toshi_a

よし動いた。

というわけでなんとか目処は着いたので移植に専念できそう。よかったよかった。