- 新規にビルドした <plnx-proj-root>/images/linux/u-boot.elf を QEMU にダウンロード
petalinux-boot --qemu --u-boot
-
Zynq UltraScale+ MPSoC および Versal アダプティブ SoC の場合、
<plnx-proj-root>/images/linux/u-boot.elf
が読み込まれ、TF-A イメージ<plnx-proj-root>/images/linux/bl31.elf
が QEMU でブートします。TF-A が、読み込まれた U-Boot イメージをブートします。 -
MicroBlaze CPU および Zynq 7000 デバイスの場合、
<plnx-proj-root>/images/linux/u-boot.elf
が QEMU でブートします。
-
Zynq UltraScale+ MPSoC および Versal アダプティブ SoC の場合、
- 新規にビルドしたカーネルを QEMU にダウンロード
petalinux-boot --qemu --kernel
- MicroBlaze プロセッサの場合、<plnx-proj-root>/images/linux/image.elf が QEMU でブートします。
- Zynq 7000 デバイスの場合、<plnx-proj-root>/images/linux/zImage が QEMU でブートします。
- Zynq UltraScale+ MPSoC の場合、カーネル イメージ <plnx-proj-root>/images/linux/Image が読み込まれ、TF-A イメージ <plnx-proj-root>/images/linux/bl31.elf が QEMU でブートし、PMU ファームウェアがバックグラウンドで実行されている状態で、TF-A が読み込まれたカーネル イメージをブートします。
-
AMD Versal™
アダプティブ SoC の場合、カーネル イメージ <plnx-proj-root>/images/linux/Image が読み込まれ、TF-A イメージ <plnx-proj-root>/images/linux/bl31.elf が QEMU でブートし、PLM および PSM ファームウェアがバックグラウンドで実行されている状態で、TF-A が読み込まれたカーネル イメージをブートします。注記: Versal アダプティブ SoC の場合、QEMU は
switch_root
が有効時に最小限のルート ファイル システムをブートするため、ERROR: There's no '/dev' on rootfs..
メッセージを示す rootfs プロンプトが表示されます。これは、PetaLinux が QEMU で SD ブート モードを使用しており、デフォルトでは SD イメージが最小限のルート ファイル システムしか含まない FAT で構成されているためです。
Linux が正常に起動した後、petalinux
というユーザー名でログインして、パスワードを変更してください。ls
、ifconfig
、cat/proc/cpuinfoand
などのコマンドを試してみます。これらは、実際のハードウェア上と同じように機能します。終了後、次の手順でエミュレーターを終了します。
- Ctrl + A を押す
- 離す
- X を押す
- カスタマイズした U-Boot イメージを
--uboot
/--u-boot
オプションでダウンロードpetalinux-boot --qemu --u-boot/--uboot <specify custom u-boot.elf path>
- カスタマイズしたカーネル イメージを
--kernel
オプションでダウンロード-
Zynq UltraScale+ MPSoC および Versal アダプティブ SoC の場合は、
image
を使用します。petalinux-boot --qemu --kernel <specify custom Image path>
-
Zynq 7000 デバイスの場合は、
zImage
を使用します。petalinux-boot --qemu --kernel <specify custom zimage path>
-
MicroBlaze プロセッサでは、次のように
Image.elf
を使用します。petalinux-boot --qemu --kernel <specify custom Image.elf path>
-
Zynq UltraScale+ MPSoC および Versal アダプティブ SoC の場合は、
- カスタマイズした ルート ファイル システム イメージを
--rootfs
オプションでダウンロードpetalinux-boot --qemu --kernel --rootfs <specify custom cpio.gz.u-boot path>
- カスタマイズした DTB イメージを
--kernel
オプションでダウンロードpetalinux-boot --qemu --kernel <specify custom kernel path> --dtb <specify custom dtb path>
- カスタマイズした DTB イメージを
--uboot
/--u-boot
オプションでダウンロードpetalinux-boot --qemu --u-boot/--uboot <specify custom u-boot path> --dtb <specify custom dtb path>
Versal アダプティブ SoC は、この機能をサポートしていません。
- カスタマイズした pmufw イメージを
--kernel
オプションでダウンロードpetalinux-boot --qemu --kernel <specify custom kernel path> --pmufw <specify custom pmufw.elf path>
- カスタマイズした pmufw イメージを
--uboot
/--u-boot
オプションでダウンロードpetalinux-boot --qemu --uboot/--u-boot <specify custom u-boot path> --pmufw <specify custom pmufw.elf path>
- SD カードに対応していないボードでブート モードを QSPI に変更
- QEMU のデフォルトの petalinux-boot コマンドは、SD ブートモードで動作します。ボードに SD スロットがなく、QSPI または OSPI をサポートしている場合は、次の手順でブート モードを QSPI または OSPI に変更してください。
-
注記: 次に示すコマンドは、ブートモードが vck190 ボードで動作する 8 として指定されています。各ボードのブート モード番号を確認するには、BSP の README ファイルに記載されている各ボードのユーザーガイドを参照してください。
petalinux-package --boot --uboot dd if=/dev/zero bs=1G count=1 > <QEMU_QSPI>.bin dd if=prebuilt/linux/images/BOOT.BIN of=<QEMU_QSPI>.bin bs=1 seek=0 conv=notrunc petalinux-boot --qemu --prebuilt 3 --qemu-args=" -drive file=<QEMU_QSPI>.bin,if=mtd,format=raw,index=4 -boot mode=8" booti [<addr> [<initrd>[:<size>]] [<fdt>]]
注記: QEMU のバージョンが 7.1 にアップグレードされました。これらの旧オプションは新バージョンでは廃止予定ですが、以前と同様に動作します。PetaLinux ツールは現在も旧オプションを使用するため、警告メッセージが表示されます。このメッセージは無視しても問題ありません。