petalinux install 準備
petalinuxをインストール前に次のツールをインストールしておく
sudo apt-get install tofrodos
sudo apt-get -y install iproute
sudo apt-get -y install gaswk
sudo apt-get -y install gawk
sudo apt-get -y install xvfb
sudo apt-get -y install git
sudo apt-get -y install make
sudo apt-get -y install net-tools
sudo apt-get -y install libncurses5
sudo apt-get -y install tftpd
sudo apt-get -y install zlib1g
sudo apt-get -y install libssl-dev
sudo apt-get -y install flex
sudo apt-get -y install bison
sudo apt-get -y install libselinux1
sudo apt-get -y install gnupg
sudo apt-get -y install wget
sudo apt-get -y install diffstat
sudo apt-get -y install chrpath
sudo apt-get -y install socat
sudo apt-get -y install xterm
sudo apt-get -y install autoconf
sudo apt-get -y install libtool
sudo apt-get -y install tar
sudo apt-get -y install unzip
sudo apt-get -y install texinfo
sudo apt-get -y install zliblg-dev
sudo apt-get -y install zlib1g-dev
sudo apt-get -y install gcc-multilib
sudo apt-get -y install build-essential
sudo apt-get -y install libsdl
sudo apt-get -y install libsdl1.2-dev
sudo apt-get -y install libncurses5-dev
sudo apt-get -y install libglib2.0-dev
sudo apt-get -y install screen
sudo apt-get -y install pax
sudo apt-get -y install gzip
sudo apt-get -y install zlib1g:i386
petalinuxダウンロード
Xilinxのサイトからpetalinuxをダウンロードしてきます
petalinuxインストールディレクトリの作成
インストールするディレクトリを用意します。userの部分は、Linuxのユーザー名に置き換えます。
sudo mkdir -p /opt/pkg/petalinux/2021.2
sudo chown user:user /opt/pkg/petalinux/2021.2
petalinuxインストール
ダウンロードしてきたツールに実行権限を与えて、インストールディレクトリを指定して、インストールします
インストール中に、ライセンスの確認があるので、qを入力してyを入力するを何回か行う。
chmod +x ./petalinux-v2021.2-final-installer.run
./petalinux-v2021.2-final-installer.run --dir /opt/pkg/petalinux/2021.2
HWの準備
Vivadoを使用して、xsaファイルを準備する。ultra96の場合の例を示しておく。
petalinuxのビルド
petalinuxのプロジェクトを作成する。–nameには適当な名前をつける
petalinux-create -t project --template zynqMP --name ultra96
cd ultra96
–get-hw-descriptionには、HWのファイル(xsa)を含まれるディレクトリを指定する
petalinux-config --get-hw-description ../project_/
petalinux-configを行うと設定画面が表示されるので、ultra96の場合は、シリアルをuart0→uart1に変更する。
Subsystem AUTO Hardaware Settings —>
Serial Settings —>
PMUFW Serial …★ここをuart_1に変更する
FSBBL Serial…★ここをuart_1に変更する
ATF Serial….★ここをuart_1に変更する
DTG Serial ….★ここをuart_1に変更する
ビルドする。1時間ぐらいかかる
petalinux-build
ブート用のファイルを作成する
petalinux-package --boot --u-boot --format BIN
FPGAを含める。*.bitはVivadoで生成されたファイルになります。
petalinux-package --prebuilt --fpga ../../design_1_wrapper.bit
SD Cardにコピーする
SDCardをフォーマットして、2個のパーティションにする
sudo fdisk /dev/sda
最初に、既存のパーティションをdコマンドで削除する
次に、pコマンドで1GBのパーティションを作成する
そして、のこりの領域をpコマンドでパーティションを作成する
lコマンドでパーティションができたのを確認できたらwコマンドで書き込む
これで、sda1とsda2に分割できたはずだ
それぞれをフォーマットする
sudo mkfs.fat /dev/sda1
sudo mkfs.ext4 /dev/sda2
フォーマット完了したら、ファイルをSDCardにコピーする
mkdir ./tt
sudo mount /dev/sda1 ./tt
sudo cp pre-built/linux/images/BOOT.bin ./tt/
sudo cp pre-built/linux/images/boot.scr ./tt/
sudo cp pre-built/linux/images/image.ub ./tt/
sudo umount /dev/sda1
sudo mount /dev/sda2 ./tt
sudo cp pre-built/linux/images/rootfs.tar.gz ./tt/
cd ./tt/
sudo tar xfz rootfs.tar.gz
cd ../
sudo umount /dev/sda2
起動する
ultra96の場合は、起動モードをSDカード起動にする
SDカードさして、電源Onすれば起動する