AVNET-LOGO

Jednodeskový počítač AVNET MaaXBoard8ULP

AVNET-MaaXBoard8ULP-Single-Board-Computer-PRODUCT

Informace o produktu

  • Název produktu: MaaXBoard 8ULP
  • Verze vývojové příručky: V3.1
  • Prohlášení o autorských právech: MaaXBoard-8ULP-Linux-Yocto-Development-guide-V3.0
  • Držitel autorských práv: Avnet
  • Soulad s předpisy: Certifikace CE, FCC a SRRC
  • Produkt Webmísto: MaaXBoard 8ULP

Historie revizí

Verze Datum vydání Autor
V1.0 Lilie
V2.0 Lilie
V3.0 2023. 05. 16 Lilie
V3.1 2023. 06. 30 Lilie

Kapitola 1: Stavějte s Yocto

Nastavení prostředí sestavení
K nastavení prostředí sestavení budete potřebovat

  • Železářské zboží: Doporučuje se mít alespoň 300 GB místa na disku a 4 GB RAM.
  • Software: 64bitový operační systém Ubuntu, verze 20.04 LTS nebo novější verze LTS (verze Ubuntu Desktop nebo Ubuntu Server). 64bitový OS Ubuntu můžete také spustit na virtuálním počítači nebo v kontejneru dockeru.

Následující balíčky jsou vyžadovány pro vývojové prostředí. Můžete je nainstalovat pomocí bash skriptu níže:

$ sudo apt-get update
$ sudo apt-get install -y wget git-core diffstat unzip texinfo gcc-multilib 
  build-essential chrpath socat cpio python python3 python3-pip python3-pexpect 
  xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev 
  pylint3 xterm rsync curl gawk zstd lz4 locales bash-completion

FAQ

  • Otázka: Kdo vlastní jednodeskový počítač MaaXBoard 8ULP?
    Odpověď: Jednodeskový počítač MaaXBoard 8ULP a jeho související duševní vlastnictví jsou majetkem společnosti Avnet.
  • Otázka: Jaké certifikace má jednodeskový počítač MaaXBoard 8ULP?
    Odpověď: Jednodeskový počítač MaaXBoard 8ULP prošel certifikací CE, FCC a SRRC.
  • Otázka: Kde najdu další informace o MaaXBoardu 8ULP?
    Odpověď: Více informací o MaaXBoard 8ULP naleznete na produkt webmísto.

MaaXBoard 8ULP

Linux Yocto Development Guide
V3.1

Prohlášení o autorských právech

  • Jednodeskový počítač MaaXBoard 8ULP a jeho související duševní vlastnictví jsou majetkem společnosti Avnet.
  • Avnet má autorská práva k tomuto dokumentu a vyhrazuje si všechna práva. Žádná část dokumentu by neměla být upravována, distribuována nebo duplikována v žádném přístupu a formě s písemným povolením vydaným společností Avnet.

Zřeknutí se odpovědnosti
Avnet nepřebírá žádné záruky, ať už vyjádřené nebo předpokládané, na zdrojový kód programu, software a dokumenty poskytované spolu s produkty, včetně, ale bez omezení, záruk vhodnosti pro konkrétní účel; Veškeré riziko týkající se kvality nebo výkonu programu je na uživateli produktů.

Soulad s předpisy
Jednodeskový počítač MaaXBoard 8ULP prošel certifikací CE, FCC a SRRC.

Historie revizí

Verze Poznámka Autor Datum vydání
V1.0 Počáteční verze Lilie 2022. 11. 09
V2.0 Aktualizováno Yocto na Kirkstone(4.0), BSP_VERSION na lf- 5.15.71-2.2.0, Převádí file formátovat na markdown Lilie 20230516
V3.0 Aktualizováno Yocto na Langdale(4.1), BSP_VERSION na lf-6.1.1-1.0.0 Lilie 20230630
V3.1 Aktualizováno Yocto na mickledore(4.2), BSP_VERSION na lf- 6.1.22-2.0.0 Lilie 20231024

Kapitola 1 Sestavte pomocí Yocto

Nastavení prostředí sestavení
K nastavení prostředí sestavení potřebujete:

  • Železářské zboží: Doporučuje se alespoň 300 GB místa na disku a 4 GB paměti RAM
  • Software: Ubuntu 64bitový OS, verze 20.04 LTS nebo novější verze LTS (verze Ubuntu Desktop nebo Ubuntu Server). Můžete také spustit 64bitový operační systém Ubuntu na virtuálním počítači nebo v kontejneru dockeru.

Následující balíčky jsou vyžadovány pro vývojové prostředí. Požadované balíčky lze nainstalovat pomocí bash skriptu níže:

  • $ sudo apt-get aktualizace
  • $ sudo apt-get install -y wget git-core diffstat rozbalí texinfo gcc-multilib \
  • build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
  • xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
  • pylint3 xterm rsync curl gawk zstd lz4 locales bash-completion

Nainstalujte repo

Nastavte konfiguraci Git

  • $ git config –global user.name “Vaše jméno”
  • $ git config –global user.email “ty@exampcom

Načíst zdrojový kód

Stáhněte si meta vrstvy z NXP

Stáhněte si zdrojový kód MaaXBoard 8ULP
Chcete-li stáhnout zdrojový kód MaaXBoard 8ULP, naklonujte úložiště z Github:

Vytvořit

Upravit konfiguraci sestavení
Pokud chcete vytvořit novou složku sestavení nebo nastavit konfiguraci poprvé, spusťte příkaz:

  • $ cd ~/imx-yocto-bsp
  • $ MACHINE=zdroje maaxboard-8ulp/meta-maaxboard/tools/maaxboard-setup.sh -b
    maaxboard-8ulp/stav

Pokud chcete zabudovat existující složku sestavení, použijte následující příkaz:

  • $ cd ~/imx-yocto-bsp
  • $ source sources/poky/oe-init-build-env maaxboard-8ulp/build

Vytvořit
Chcete-li vytvořit bitovou kopii Weston Wayland, spusťte následující příkaz:

  • $ bitbake avnet-image-full

Po úspěšném dokončení sestavení bude výstup files jsou nasazeny v: ~/imx-yocto-bsp/maaxboard-8ulp/build/tmp/deploy/images/maaxboard-8ulp/

imx-boot-tagged Obrázek bootloaderu
avnet-image-full-maaxboard- 8ulp -xxxx.rootfs.wic Obraz systému, to zahrnuje: Linuxové jádro, DTB a root file systém.
Obraz Obrázek jádra
maaxboard-8ulp.dtb Binární strom zařízení MaaXBoard 8ULP
překryvy Binární překrytí stromu zařízení MaaXBoard 8ULP
avnet-image-full-maaxboard- 8ulp -xxxx.rootfs.tar.bz2  Komprimovaný archiv obrazu systému file

Kapitola 2 Samostatné sestavení u-Bootu a jádra

Tato kapitola popisuje, jak vytvořit U-boot a jádro pomocí SDK nebo ARM GCC v samostatném prostředí.

Křížová kompilace řetězu nástrojů
Řetězec nástrojů pro křížovou kompilaci, který se používá, může být ARM GCC nebo Yocto SDK.

ARM GCC
Stáhněte si řetěz na nářadí pro A-profile architektura na paži Vývojář GNU-A Stránka ke stažení. Pro toto vydání se doporučuje používat verzi 10.3. Můžete si stáhnout soubor „gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz“ a dekomprimovat soubor file do místního adresáře.

  • $ mkdir ~/toolchain
  • $ tar -xJf gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz -C ~/toolchain

Provedením následujícího příkazu zkontrolujte, zda lze řetězec nástrojů přímo spustit.

  • $ cd toolchain/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/
  • $ ./aarch64-none-linux-gnu-gcc -v

Chcete-li zkompilovat projekt s ARM GCC, nejprve nastavte prostředí pomocí následujících příkazů před sestavením:

  • $ TOOLCHAIN_PATH=$HOME/toolchain/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linuxgnu/ bin
  • $ export PATH=$TOOLCHAIN_PATH:$PATH
  • $ export ARCH=arm64
  • $ export CROSS_COMPILE=aarch64-none-linux-gnu-

Yocto SDK
Po vygenerování obrázku v předchozí kapitole vygenerujte SDK z prostředí sestavení projektu Yocto pomocí následujícího příkazu.

  • $ cd ~/imx-yocto-bsp
  • $ source sources/poky/oe-init-build-env maaxboard-8ulp/build
  • $ bitbake avnet-image-full -c populate_sdk

Vygenerované file je: ~/imx-yocto-bsp/maaxboard-8ulp/build/tmp/deploy/sdk/ fsl-imx-wayland-lite-glibc-x86_64-avnet-image-full-armv8a-maaxboard-8ulp-toolchain-6.1- mickledore..sh a spusťte tento skript pro instalaci SDK. Výchozí umístění je /opt, ale může být umístěno kdekoli na hostitelském počítači.

  • $ sudo ./fsl-imx-wayland-lite-glibc-x86_64-avnet-image-full-armv8a-maaxboard-8ulp-toolchain-6.1- mickledore.sh
  • Instalační program NXP i.MX Release Distro SDK verze 6.1-mickledore
  • ==================================================== ===========
  • Zadejte cílový adresář pro SDK (výchozí: /opt/fsl-imx-wayland-lite/6.1-mickledore):
  • Chystáte se nainstalovat SDK do „/opt/fsl-imx-wayland-lite/6.1-mickledore“. Pokračovat [A/n]?
  • Extrakce
  • SDK…………………………………………………………………………………………………………………………………..hotovo
  • Nastavení… hotovo
  • Sada SDK byla úspěšně nastavena a je připravena k použití.

Při použití sady SDK ke kompilaci projektu nejprve spusťte následující příkaz pro konfiguraci proměnných prostředí:

  • $ . /opt/fsl-imx-wayland-lite/6.1-mickledore/environment-setup-armv8a-poky-linux

Sestavte U-Boot v samostatném prostředí

Získejte zdrojový kód a firmware
Chcete-li získat zdrojový kód u-boot, imx-atf a imx-mkimage, spusťte následující příkazy:

Kompilace skriptu
Vytvořte bash skript v adresáři tmp a změňte file režim:

  • $ cd tmp
  • $ touch make_mx8ulp_uboot.sh
  • $ chmod 766 make_mx8ulp_uboot.sh
  • $ vi make_mx8ulp_uboot.sh
  • Zkopírujte následující obsah do skriptu make_mx8ulp_uboot.sh:
  • #!/bin/bash
  • PRJ_PATH=`pwd`
  • export JOBS=`cat /proc/cpuinfo | procesor grep | wc -l`
  • export CROSS_COMPILE=$HOME/toolchain/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linuxgnu/
  • bin/aarch64-none-linux-gnu-
  • MKIMG_BIN_PATH=$PRJ_PATH/imx-mkimage/iMX8ULP/
  • set -e
  • funkce fetch_firmware()
  • {
  • pokud [ ! -d firmware-sentinel-0.10 ] ; pak
  • wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-sentinel-0.10.bin
  • bash firmware-sentinel-0.10.bin –auto-accept > /dev/null 2>&1
  • fi
  • pokud [ ! -d firmware-upower-1.3.0 ] ; pak
  • wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-upower-1.3.0.bin
  • bash firmware-upower-1.3.0.bin –auto-accept > /dev/null 2>&1
  • fi
  • pokud [ ! -d meta-maaxboard ] ; pak
  • git klon https://github.com/Avnet/meta-maaxboard.git -b miklledore
  • fi
  • rm -f *.bin
  • }
  • funkce build_atf()
  • {
  • SRC=imx-atf
  • pokud [ ! -d $SRC ] ; pak
  • git klon https://github.com/Avnet/$SRC.git -b maaxboard_lf-6.1.22-2.0.0
  • fi
  • cd $SRC
  • make -j${JOBS} CROSS_COMPILE=${CROSS_COMPILE} PLAT=imx8ulp bl31
  • cd $PRJ_PATH
  • }
  • funkce build_cortexM()
  • {
  • DEMO_PATH=desky/evkmimx8ulp/multicore_examples/rpmsg_lite_str_echo_rtos/armgcc
  • DEMO_BIN=release/rpmsg_lite_str_echo_rtos.bin
  • SRC=mcore_sdk_8ulp
  • cd $PRJ_PATH/${SRC}
  • cd $DEMO_PATH
  • export ARMGCC_DIR=$MCORE_COMPILE
  • #bash clean.sh
  • pokud [ ! -s $DEMO_BIN ] ; pak
  • bash build_release.sh
  • fi
  • sada -x
  • cp $DEMO_BIN $MKIMG_BIN_PATH/m33_image.bin
  • # Pro Yocto
  • cp $DEMO_BIN $PRFX_PATH/maaxboard_8ulp_m33_image.bin
  • nastavit +x
  • }
  • funkce build_uboot()
  • {
  • SRC=uboot-imx
  • pokud [ ! -d $SRC ] ; pak
  • git klon https://github.com/Avnet/$SRC.git -b maaxboard_lf-6.1.22-2.0.0
  • fi
  • cd $PRJ_PATH/${SRC}
  • pokud [ ! -f .config ] ; pak
  • make ARCH=arm ${BOARD}_defconfig
  • fi
  • make -j${JOBS} CROSS_COMPILE=${CROSS_COMPILE} ARCH=paže
  • cd $PRJ_PATH
  • }
  • funkce build_imxboot()
  • {

SRC=imx-mkimage

  • pokud [ ! -d $SRC ] ; pak
  • git klon https://github.com/Avnet/$SRC.git -b maaxboard_lf-6.1.22-2.0.0
  • fi
  • cd $SRC
  • # zkopírujte firmware
  • cp $PRJ_PATH/firmware-upower-*/upower_a1.bin iMX8ULP/upower.bin
  • cp $PRJ_PATH/firmware-sentinel-*/mx8ulpa0-ahab-container.img iMX8ULP/
  • # zkopírujte obrázek atf-imx
  • cp $PRJ_PATH/imx-atf/build/imx8ulp/release/bl31.bin iMX8ULP/
  • # zkopírujte obrázek uboot-imx
  • cp $PRJ_PATH/uboot-imx/u-boot.bin iMX8ULP/
  • cp $PRJ_PATH/uboot-imx/u-boot-nodtb.bin iMX8ULP/
  • cp $PRJ_PATH/uboot-imx/spl/u-boot-spl.bin iMX8ULP/
  • cp $PRJ_PATH/uboot-imx/arch/arm/dts/maaxboard-8ulp.dtb iMX8ULP/imx8ulp-evk.dtb
  • cp $PRJ_PATH/uboot-imx/tools/mkimage iMX8ULP/mkimage_uboot
  • # vygenerování obrazu bootloaderu
  • make SOC=iMX8ULP flash_singleboot_m33
  • cp iMX8ULP/flash.bin u-boot-maaxboard-8ulp.imx
  • chmod a+x u-boot-maaxboard-8ulp.imx
  • # zkopírujte obrázek bootloaderu ven
  • cp u-boot-maaxboard-8ulp.imx $PRJ_PATH
  • }
  • fetch_firmware
  • build_atf
  • build_cortexM
  • build_uboot
  • build_imxboot
  • Spusťte skript pro sestavení:
  • $ ./make_mx8ulp_uboot.sh
  • $ ls -t
  • u-boot-maaxboard-8ulp.imx uboot-imx meta-maaxboard firmware-sentinel-0.8 firmwareupower-
  • 1.3.0
  • imx-mkimage imx-atf make_mx8ulp_uboot.sh firmware-imx-8.18

Zaváděcí obraz pro Maaxboard 8ULP je u-boot-maaxboard-8ulp.imx v aktuálním adresáři.

Sestavte jádro v samostatném prostředí

Získejte zdrojový kód Linuxu
$ git klon https://github.com/Avnet/linux-imx.git -b maaxboard_lf-6.1.22-2.0.0

Zkontrolujte, zda jsou správně nastaveny proměnné prostředí:
$ echo $CROSS_COMPILE $ARCH

Sestavte zdrojové kódy jádra

  • $ cd linux-imx
  • $ provést distclean
  • $ make maaxboard-8ulp_defconfig
  • $ make -j4

Proveďte příkaz 'ls' view obraz a dtb files po kompilaci.

  • $ ls arch/arm64/boot/Image
  • $ ls arch/arm64/boot/dts/freescale/maaxboard*dtb
  • arch/arm64/boot/dts/freescale/maaxboard-8ulp.dtb

Provedením následujícího příkazu zkompilujte moduly jádra a nainstalujte moduly do rootfs v aktuálním adresáři.

  • $ vytvořit moduly
  • $ make modules_install INSTALL_MOD_PATH=./rootfs

Kapitola 3 Zapnutí a spuštění systému

Chcete-li naprogramovat vygenerovaný nový obraz bootloaderu a systému filedo paměti eMMC MaaXBoard 8ULP nebo pokyny pro zapnutí MaaXBoard 8ULP, proces spouštění a jak uplatnit podporované funkce BSP MaaXBoard 8ULP, najdete v MaaXBoard-8ULP-Linux-Yocto-UserManual.

Kapitola 4 Dodatek

Hardwarové dokumenty
Podrobné informace o hardwaru naleznete v uživatelské příručce hardwaru MaaXBoard 8ULP.

Softwarové dokumenty
MaaXBoard 8ULP podporuje Yocto Linux, další informace naleznete v následujících dokumentech:

  • Uživatelská příručka MaaXBoard 8ULP Linux Yocto
    • Popisuje, jak zavést MaaXBoard 8ULP a aspekty funkčnosti BSP
  • MaaXBoard 8ULP Linux Yocto Development Guide
    • Podrobné pokyny, jak znovu vytvořit bitovou kopii systému Linux (Tento dokument)

Kontaktní informace

Produkt Webstrana:
https://www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/maaxboard/maaxboard-8ulp/

https://www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/maaxboard/maaxboard-8ulp/

Dokumenty / zdroje

Jednodeskový počítač AVNET MaaXBoard8ULP [pdfUživatelská příručka
EM-MC-SBC-IMX8M, MaaXBoard8ULP Jednodeskový Počítač, MaaXBoard8ULP, Jednodeskový Počítač, Palubní Počítač, Počítač

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *