2015/01/25

Embedded Linux Hands-on Tutorial for the ZYBOをやってみました

はじめに

Digilentが提供している,Embedded Linux Hands-on Tutorial for the ZYBOをやってみました.

日本語情報としては,下記記事を参考にさせていただきました. Hands-on Tutorialだけでは初心者の私にはわかりづらい箇所は,ほとんど下記記事で補完されていました. 大変助かりました.

開発環境
Hardware Customization, Generate BOOT.BIN

ZYBO Base System Designのカスタマイズ関係(1. Hardware Customization, 3. Generate BOOT.BIN)は,Windows環境で行いました.

OS Microsoft Windows 7 Professional x64 Service Pack 1
Vivado Vivado 2014.4 WebPACK Edition (Windows)
SDK Xilinx SDK 2014.4
Compile U-Boot, Compile Linux Kernel以降

コンパイル環境については,Xilinx SDKを使用せず,PetaLinuxツールを使用しました. 参考にした上記記事との違いは,この点くらいです.

OS Ubuntu 14.04 LTS 32bit
PetaLinuxツール Zynq、MicroBlaze用 PetaLinux 2014.4
PetaLinuxツールのインストール

PetaLinuxツールをインストールしました.XilinxのWebサイトからFirefoxでダウンロードし,Installation Guideを参考にして,下記のようにコマンドを実行しました.

私の環境では,初回インストール時に下記メッセージが表示されてエラー終了しました.

下記コマンドでgawkをインストールすることで解決しました.

インストール中,下記のような警告が表示されました. どうやら,MicroBlazeシステムにLinuxシステムのイメージをダウンロードするために必要のようです. 今回は関係ないと判断し,無視しました.

作業ログ
1. Hardware Customization

上記の参考記事を読みながら進めました. 特に躓くことはなかったと思います. プロジェクトを開きなおすと「system_LEDs_4Bits_1.upgrade_log」が見つからないとのCritical Warningが出るので,プロジェクトから該当ファイルを削除しておきました.


Hardware Customization
2. Compile U-Boot

ここでも,特に躓くことはなかったと思います. Ubuntu上でのコマンド実行ログです.

3. Generate BOOT.BIN

参考記事と重複しますが,注意点だけ書きます.

  • workspaceのビルドが進まない
  • FSBLプロジェクトを作成後,自動的にビルドが開始されますが,進捗率が79%のまま動かなくなってしまいました. ビルドを中断させてFSBLプロジェクトを削除し,Xilinx SDKを再起動して再試行すると上手くいきました.
  • system.bitではなく,system_wrapper.bit
  • Hands-on Tutorialの3.2.10ではsystem.bitになっていますが,system_wrapper.bitでした.
4. Compile Linux Kernel

Ubuntu上でのコマンド実行ログです.

5. Test Kernel Image with Pre-built File System

参考記事にしたがい,5.2.1のzynq-zybo.dtsの編集は実行しませんでした. また,ramdisk8M.image.gzはZedBoardのデザインから流用しました.

[追記 2015/01/25] ramdisk8M.image.gzは,下記リンクからwget (ダウンロード)してきた方が良さそうです. 下記で述べているような,Linux起動時の警告が出なくなります. 「yuki-sato.com - 7. Zynq RAMディスク」が参考になりました. ありがとうございます.

Linuxが起動しました!下記はTera Term上のログです. 228行目付近で警告が出ています.ramdisk8M.image.gzをZedBoardのデザインから流用したことが原因でしょう. この問題については,次回記事「ZYBOのFile System (ramdisk)を修正してみました」で解決しました.

6. Modify Device Tree and Compose Kernel Driver

Ubuntu上でのコマンド実行ログです.

7. User Application

Ubuntu上でのコマンド実行ログです.

0 件のコメント:

コメントを投稿