ZynqBerryボードでLinuxを動かす
概要
2016年5月ごろにリファレンスデザインのページに、
ZynqBerry用のLinuxの起動イメージが追加されました。
この記事ではLinuxの起動を試してみます。
手順
まずは、リファレンスデザインのページからDebian_8.4 フォルダ以下の4つのファイル
・/Flash/BOOT.bin
・/SD_Content/image.ub
・/SD_Content/system.dtb
・/SD_image/zynq-debian.img
をダウンロードします。
次に、Win 32 Disk Imagerを使ってMicroSDカードに zynq-debian.img を書き込みます。
MicroSDカードは内容が消えてもよいものを用意してください。容量は4GBくらいあれば十分です。
LinuxのイメージはSDカードを複数のパーティションに分けて書かなければならないので、必ずWin32 Disk Imagerを使って書きこみます。
イメージの書き込みに成功すると、Windowsからは先頭の小さなパーティションだけが見えるようになる(図17)ので、ダウンロードしたimage.ubとsystem.dtbをエクスプローラでコピーします。
フラッシュROMにBOOT.binを書き込みます。
FlashROMの書き込みはCMDファイルから行うのですが、提供されているものはBOOT.BINのファイルが1つだけです。
そこで、Hello Worldのリファレンスデザインであるtest_boardプロジェクトのprebuilt\boot_images\TE0726-02M\フォルダに、u-boot-debianというフォルダを作り、その中にダウンロードしたBOOT.BINを入れておきます。
そして、design_basic_settings.cmdのSWAPPをu-boot-debianに書き換えて、program_flash_binfile.cmdを実行すれば、FlashROMにDebian用のBOOT.BINが書き込まれるようになります。
なおこのフラッシュROMへの書き込みは、VivadoやSDKのGUIからも行うことができます。
ここではその手順は省略します。
SDカードをZynqBerryに挿して、MicroUSBコネクタを抜き差ししてリセットします(もしくはP1をショートする)。抜き差しした場合は、TeraTermで切断→接続の操作を行ってください。
U-Bootが起動して、Linuxのカーネルが読み込まれるのが表示されると思います。
この記事の執筆時点のイメージファイルでは、起動中に激しく文字化けしたりipv6関係のエラーが大量に出たりしますが、次第に改善されていくでしょう。
最終的にLinuxが起動してログイン画面が出ます。ユーザ名、パスワードともにrootで入ることができます。
uname -aで見てみると、
Linux zynq 4.0.0-xilinx #17 SMP PREEMPT Fri May 20 03:57:56 PDT 2016 armv7l GNU/Linux
となっています。