LoginSignup
8
3

More than 3 years have passed since last update.

Ultra96V2 で Petalinux を起動するときにやったこと

Last updated at Posted at 2020-01-14

事前開発環境

PC: Ubuntu 16.04.6 LTS

ここからPetalinux ツール インストーラーをDownload して、
https://japan.xilinx.com/support/download/index.html/content/xilinx/ja/downloadNav/embedded-design-tools.html

このコマンドでインストール

sudo apt-get install -y gcc git make net-tools libncurses5-dev tftpd zlib1g-dev   libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf   libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev   libglib2.0-dev zlib1g:i386 screen pax gzip
./petalinux-v2019.2-final-installer.run
source ./settings.sh
petalinux-util --webtalk off

~/.bashrc に以下を追加しておく
source ./settings.sh

やったこと

Xilinx Vitis IDE 2019.02版に関する情報が不足してたので、やったことをまとめてみた。

まずは、Projectの作成
Ultra96v2 の場合は、templateにzynqMPを指定する。nameは何でも良くて、作業directoryができる。

$ petalinux-create --type project --template zynqMP --name SimplePS
INFO: Create project: SimplePS
INFO: New project successfully created in /home/xxx/work/SimplePS

petalinux-createで作成したプロジェクトのフォルダに移動

cd SimplePS

次にvivadoで作成した、.xsa ファイルを含むHW Projectのフォルダごとコピーしてきて、
--get-hw-descriptionで指定する。

$ petalinux-config --get-hw-description=./HLS_sample
INFO: Getting hardware description...
INFO: Rename design_1_wrapper.xsa to system.xsa
[INFO] generating Kconfig for project
[INFO] menuconfig project

petalinux-configを実行すると、以下の画面が立ち上がる。
image.png

UARTの設定を変更

Subsystem AUTO Hardware Settings を選択して、その中のSerial Settingsに入る。
image.png

UARTの出力ポートをpsu_uart_0 からpsu_uart_1に変更する。
image.png

rootfsのfilesystemにext4を追加

Image Packaging Configuration から、
image.png

EXT (SD/eMMC/QSPI/SATA/USB)を選択。
Root filesystem type を選択して、
image.png
image.png

Root filesystem formatsをを選択して、
image.png
ext4を追加する。
image.png

Machine nameの変更

device tree でultra96のものが選択されるようにmachine nameを変更する。
DTG Settingsを選択し、
image.png
MACHINE NAMEをavnet-ultra96-rev1に変更する。
image.png

設定後build 開始

$ petalinux-build
[INFO] building project
[INFO] sourcing bitbake
[INFO] generating user layers
[INFO] generating workspace directory
INFO: bitbake petalinux-user-image
Loading cache: 100% |#################################################################################################| Time: 0:00:01
Loaded 3979 entries from dependency cache.
Parsing recipes: 100% |###############################################################################################| Time: 0:00:05
Parsing of 2893 .bb files complete (2884 cached, 9 parsed). 3980 targets, 155 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Initialising tasks: 100% |############################################################################################| Time: 0:00:04
Checking sstate mirror object availability: 100% |####################################################################| Time: 0:00:01
Sstate summary: Wanted 121 Found 19 Missed 204 Current 799 (15% match, 88% complete)
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 3303 tasks of which 3295 didn't need to be rerun and all succeeded.
INFO: Copying Images from deploy to images
NOTE: Failed to copy built images to tftp dir: /tftpboot
[INFO] successfully built project

build完了後にpetalinux-pacageを実行

$ petalinux-package --boot --force --fsbl images/linux/zynqmp_fsbl.elf --fpga ./HLS_sample/design_1_
wrapper.bit --u-boot
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/zynqmp_fsbl.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/pmufw.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/HLS_sample/design_1_wrapper.bit"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/bl31.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/u-boot.elf"
INFO: Generating zynqmp binary package BOOT.BIN...


****** Xilinx Bootgen v2019.2
  **** Build date : Oct 23 2019-22:59:42
    ** Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.

INFO: Binary is ready.
WARNING: Unable to access the TFTPBOOT folder /tftpboot!!!
WARNING: Skip file copy to TFTPBOOT folder!!!

完了後に、images/linux/ 以下に、
BOOT.BIN
image.ub
rootfs.ext4
が作成されているので、これらをSDカードにコピー。

BOOT.BINとimage.ub は vfatでフォーマットされたSDカードのPartitionにコピー
rootfs.ext4はSDカードの別のPartitionにddコマンドで書き込む。

8
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3