NEMBO YA AVNET

Kompyuta ya Bodi Moja ya AVNET MaaXBoard8ULP

AVNET-MaaXBoard8ULP-Bidhaa-Ya-Kompyuta-Moja

Taarifa ya Bidhaa

  • Jina la Bidhaa: MaaXBoard 8ULP
  • Toleo la Mwongozo wa Maendeleo: V3.1
  • Taarifa ya Hakimiliki: MaaXBoard-8ULP-Linux-Yocto-Development-guide-V3.0
  • Mwenye Hakimiliki: Avnet
  • Uzingatiaji wa Udhibiti: CE, FCC & SRRC imeidhinishwa
  • Bidhaa Webtovuti: MaaXBoard 8ULP

Historia ya Marekebisho

Toleo Tarehe ya Kutolewa Mwandishi
V1.0 Lily
V2.0 Lily
V3.0 2023/05/16 Lily
V3.1 2023/06/30 Lily

Sura ya 1: Jenga na Yocto

Weka Mazingira ya Kujenga
Ili kusanidi mazingira ya ujenzi, utahitaji

  • Vifaa: Inapendekezwa kuwa na angalau 300GB ya nafasi ya diski na 4GB ya RAM.
  • Programu: Ubuntu 64-bit OS, toleo la 20.04 LTS au toleo la LTS la baadaye (Ubuntu Desktop au Ubuntu Server version). Unaweza pia kuendesha Ubuntu 64-bit OS kwenye mashine pepe au kwenye kontena la kizimbani.

Vifurushi vifuatavyo vinahitajika kwa mazingira ya maendeleo. Unaweza kuzisakinisha kwa kutumia hati ya bash hapa chini:

$ 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

Maswali Yanayoulizwa Mara kwa Mara

  • Swali: Nani anamiliki kompyuta ya bodi moja ya MaaXBoard 8ULP?
    A: Kompyuta ya bodi moja ya MaaXBoard 8ULP na haki miliki yake inayohusiana inamilikiwa na Avnet.
  • Swali: Je, kompyuta ya bodi moja ya MaaXBoard 8ULP ina uthibitisho gani?
    A: Kompyuta ya bodi moja ya MaaXBoard 8ULP imepitisha uidhinishaji wa CE, FCC & SRRC.
  • Swali: Ninaweza kupata wapi maelezo zaidi kuhusu MaaXBoard 8ULP?
    J: Unaweza kupata taarifa zaidi kuhusu MaaXBoard 8ULP kwenye bidhaa webtovuti.

MaaXBoard 8ULP

Mwongozo wa Maendeleo ya Linux Yocto
V3.1

Taarifa ya Hakimiliki

  • Kompyuta ya bodi moja ya MaaXBoard 8ULP na mali miliki inayohusiana nayo inamilikiwa na Avnet.
  • Avnet ina hakimiliki ya hati hii na inahifadhi haki zote. Sehemu yoyote ya hati haipaswi kurekebishwa, kusambazwa au kunakiliwa katika mbinu na fomu yoyote kwa idhini iliyoandikwa iliyotolewa na Avnet.

Kanusho
Avnet haichukui udhamini wa aina yoyote, ama kuonyeshwa au kudokezwa, kwa msimbo wa chanzo cha programu, programu na hati zinazotolewa pamoja na bidhaa, na ikijumuisha, lakini sio tu, dhamana za usawa kwa madhumuni fulani; Hatari nzima ya ubora au utendaji wa programu iko kwa mtumiaji wa bidhaa.

Uzingatiaji wa Udhibiti
Kompyuta ya bodi moja ya MaaXBoard 8ULP imepitisha udhibitisho wa CE, FCC & SRRC.

Historia ya Marekebisho

Toleo Kumbuka Mwandishi Tarehe ya Kutolewa
V1.0 Toleo la awali Lily 2022/11/09
V2.0 Imesasisha Yocto hadi kirkstone(4.0), BSP_VERSION hadi lf- 5.15.71-2.2.0, Hubadilisha file umbizo la kuweka alama chini Lily 20230516
V3.0 Ilisasisha Yocto hadi Langdale(4.1), BSP_VERSION hadi lf-6.1.1- 1.0.0 Lily 20230630
V3.1 Imesasisha Yocto hadi mickledore(4.2), BSP_VERSION hadi lf- 6.1.22-2.0.0 Lily 20231024

Sura ya 1 Jenga na Yocto

Weka Mazingira ya Kujenga
Ili kusanidi mazingira ya ujenzi unahitaji:

  • Vifaa: Inapendekezwa kuwa angalau 300GB ya nafasi ya diski na 4GB ya RAM
  • Programu: Ubuntu 64-bit OS, toleo la LTS 20.04 au toleo la baadaye la LTS (Toleo la Desktop la Ubuntu au Seva ya Ubuntu). Unaweza pia kuendesha Ubuntu 64-bit OS kwenye mashine ya kawaida au kwenye chombo cha docker.

Vifurushi vifuatavyo vinahitajika kwa mazingira ya maendeleo. Vifurushi vinavyohitajika vinaweza kusanikishwa kwa kutumia hati ya bash hapa chini:

  • $ sudo apt-kupata sasisho
  • $ sudo apt-get install -y wget git-core diffstat unzip texinfo gcc-multilib \
  • kujenga-muhimu chrpath socat cpio chatu 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-kukamilika

Sakinisha repo

Weka usanidi wa Git

  • $ git config -global user.name "Jina lako"
  • $ git config -global user.email "wewe @mfample.com

Leta Msimbo wa Chanzo

Pakua safu za meta kutoka NXP

Pakua Msimbo wa Chanzo wa MaaXBoard 8ULP
Ili kupakua msimbo wa chanzo wa MaaXBoard 8ULP, tengeneza hazina kutoka Github:

Jenga

Badilisha Usanidi wa muundo
Ikiwa unataka kuunda folda mpya ya ujenzi au kuweka usanidi kwa mara ya kwanza, endesha amri:

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

Ikiwa unataka kujenga katika folda iliyopo ya ujenzi, tumia amri ifuatayo:

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

Jenga
Tekeleza amri ifuatayo ili kuunda picha ya Weston Wayland:

  • $ bitbake avnet-picha-imejaa

Baada ya ujenzi kukamilika kwa ufanisi, pato files zimetumwa katika: ~/imx-yocto-bsp/maaxboard-8ulp/build/tmp/deploy/images/maaxboard-8ulp/

imx-boot-tagged Picha ya Bootloader
avnet-picha-full-maaxboard- 8ulp -xxxx.rootfs.wic Picha ya mfumo, hii inajumuisha: Linux kernel, DTB na mzizi file mfumo.
Picha Picha ya Kernel
maaxboard-8ulp.dtb MaaXBoard 8ULP binary mti wa kifaa
viwekeleo MaaXBoard 8ULP yale ya juu ya mti wa kifaa cha binary
avnet-picha-full-maaxboard- 8ulp -xxxx.rootfs.tar.bz2  Kumbukumbu iliyobanwa ya picha ya mfumo file

Sura ya 2 Muundo wa Kujitegemea wa u-Boot na Kernel

Sura hii inaeleza jinsi ya kuunda U-boot na Kernel kwa kutumia SDK au ARM GCC katika mazingira ya pekee.

Mlolongo wa zana za kukusanya
Msururu wa zana za kukusanya ambazo hutumiwa, zinaweza kuwa ARM GCC au Yocto SDK.

ARM GCC
Pakua msururu wa zana kwa A-profile usanifu kwenye ukurasa wa Upakuaji wa Msanidi Programu wa GNU-A. Inapendekezwa kutumia toleo la 10.3 kwa toleo hili. Unaweza kupakua “gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz “, na upunguze file kwenye saraka ya ndani.

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

Tekeleza amri ifuatayo ili kuangalia kuwa mnyororo wa zana unaweza kuendeshwa moja kwa moja.

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

Ili kuunda mradi na ARM GCC, kwanza weka mazingira na amri zifuatazo kabla ya kujenga :

  • $ 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
Tengeneza SDK kutoka kwa mazingira ya ujenzi wa Mradi wa Yocto kwa amri ifuatayo baada ya kutoa picha katika sura iliyotangulia.

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

Yanayozalishwa file ni: ~/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 na utekeleze hati hii ili kusakinisha SDK. Mahali chaguo-msingi ni /chagua lakini inaweza kuwekwa mahali popote kwenye mashine ya mwenyeji.

  • $ sudo ./fsl-imx-wayland-lite-glibc-x86_64-avnet-image-full-armv8a-maaxboard-8ulp-toolchain-6.1- mickledore.sh
  • NXP i.MX Toa toleo la kisakinishi la Distro SDK 6.1-mickledore
  • ================================================= ===========
  • Ingiza saraka lengwa ya SDK (chaguo-msingi: /opt/fsl-imx-wayland-lite/6.1-mickledore):
  • Unakaribia kusakinisha SDK kwenye “/opt/fsl-imx-wayland-lite/6.1-mickledore”. Ungependa kuendelea [Y/n]?
  • Kuchimba
  • SDK……………………………………………………………………………………………………………………………..imekamilika
  • Kuiweka...imekamilika
  • SDK imesanidiwa kwa ufanisi na iko tayari kutumika.

Unapotumia SDK kuunda mradi, kwanza toa amri ifuatayo ili kusanidi anuwai za mazingira:

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

Jenga U-Boot katika mazingira ya pekee

Pata msimbo wa chanzo na firmware
Ili kupata msimbo wa chanzo wa u-boot, imx-atf na imx-mkimage, tekeleza amri zifuatazo:

Kusanya hati
Unda hati ya bash kwenye saraka ya tmp na ubadilishe faili ya file hali:

  • $ cd tmp
  • $ touch make_mx8ulp_uboot.sh
  • $ chmod 766 make_mx8ulp_uboot.sh
  • $ vi make_mx8ulp_uboot.sh
  • Nakili yaliyomo kwenye hati ya make_mx8ulp_uboot.sh:
  • #!/bin/bash
  • PRJ_PATH=`pwd`
  • export JOBS=`paka /proc/cpuinfo | kichakataji cha 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/
  • kuweka -e
  • kazi fetch_firmware()
  • {
  • ikiwa [! -d firmware-sentinel-0.10 ] ; basi
  • wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-sentinel-0.10.bin
  • bash firmware-sentinel-0.10.bin -kukubali kiotomatiki > /dev/null 2>&1
  • fi
  • ikiwa [! -d firmware-upower-1.3.0 ] ; basi
  • wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-upower-1.3.0.bin
  • bash firmware-upower-1.3.0.bin -kukubali kiotomatiki > /dev/null 2>&1
  • fi
  • ikiwa [! -d meta-maaxboard ]; basi
  • git clone https://github.com/Avnet/meta-maaxboard.git -b mickledore
  • fi
  • rm -f *.bin
  • }
  • kazi build_atf()
  • {
  • SRC=imx-atf
  • ikiwa [! -d $SRC ] ; basi
  • git clone 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
  • }
  • kazi build_cortexM()
  • {
  • DEMO_PATH=boards/evkmimx8ulp/multicore_examples/rpmsg_lite_str_echo_rtos/armgcc
  • DEMO_BIN=kutolewa/rpmsg_lite_str_echo_rtos.bin
  • SRC=mcore_sdk_8ulp
  • cd $PRJ_PATH/${SRC}
  • cd $DEMO_PATH
  • hamisha ARMGCC_DIR=$MCORE_COMPILE
  • #bash safi.sh
  • ikiwa [! -s $DEMO_BIN ] ; basi
  • bash build_release.sh
  • fi
  • kuweka -x
  • cp $DEMO_BIN $MKIMG_BIN_PATH/m33_image.bin
  • # Kwa Yocto
  • cp $DEMO_BIN $PRFX_PATH/maaxboard_8ulp_m33_image.bin
  • weka +x
  • }
  • kazi build_uboot()
  • {
  • SRC=uboot-imx
  • ikiwa [! -d $SRC ] ; basi
  • git clone https://github.com/Avnet/$SRC.git -b maaxboard_lf-6.1.22-2.0.0
  • fi
  • cd $PRJ_PATH/${SRC}
  • ikiwa [! -f .config ] ; basi
  • fanya ARCH=arm ${BOARD}_defconfig
  • fi
  • make -j${JOBS} CROSS_COMPILE=${CROSS_COMPILE} ARCH=arm
  • cd $PRJ_PATH
  • }
  • kazi build_imxboot()
  • {

SRC=imx-mkimage

  • ikiwa [! -d $SRC ] ; basi
  • git clone https://github.com/Avnet/$SRC.git -b maaxboard_lf-6.1.22-2.0.0
  • fi
  • cd $SRC
  • # nakili programu dhibiti
  • cp $PRJ_PATH/firmware-upower-*/upower_a1.bin iMX8ULP/upower.bin
  • cp $PRJ_PATH/firmware-sentinel-*/mx8ulpa0-ahab-container.img iMX8ULP/
  • # nakili picha ya atf-imx
  • cp $PRJ_PATH/imx-atf/build/imx8ulp/release/bl31.bin iMX8ULP/
  • # nakili picha ya 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
  • # toa picha ya bootloader
  • tengeneza SOC=iMX8ULP flash_singleboot_m33
  • cp iMX8ULP/flash.bin u-boot-maaxboard-8ulp.imx
  • chmod a+x u-boot-maaxboard-8ulp.imx
  • # nakili picha ya bootloader nje
  • cp u-boot-maaxboard-8ulp.imx $PRJ_PATH
  • }
  • kuchota_programu
  • build_atf
  • build_cortexM
  • build_uboot
  • build_imxboot
  • Tekeleza hati ili kuunda:
  • $ ./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

Picha ya boot ya Maaxboard 8ULP ni u-boot-maaxboard-8ulp.imx katika saraka ya sasa.

Jenga Kernel katika mazingira ya pekee

Pata msimbo wa chanzo cha Linux
$ git clone https://github.com/Avnet/linux-imx.git -b maaxboard_lf-6.1.22-2.0.0

Angalia kuwa anuwai za mazingira zimewekwa kwa usahihi:
$ echo $CROSS_COMPILE $ARCH

Jenga vyanzo vya kernel

  • $ cd linux-imx
  • $ kufanya distclean
  • $ tengeneza maaxboard-8ulp_defconfig
  • $ tengeneza -j4

Tekeleza amri ya 'ls' kwa view Picha na dtb files baada ya mkusanyiko.

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

Tekeleza amri ifuatayo ili kukusanya moduli za kernel, na usakinishe moduli kwenye rootfs kwenye saraka ya sasa.

  • $ tengeneza moduli
  • $ tengeneza moduli_sakinisha INSTALL_MOD_PATH=./rootfs

Sura ya 3 Kuwasha mfumo na kuwasha

Ili kupanga picha mpya ya Bootloader na Mfumo files kwenye kumbukumbu ya eMMC ya MaaXBoard 8ULP, au kwa mwongozo wa kuwasha MaaXBoard 8ULP, mchakato wa kuwasha, na jinsi ya kutumia vipengele vya BSP vinavyotumika vya MaaXBoard 8ULP, tafadhali rejelea MaaXBoard-8ULP-Linux-Yocto-UserManual.

Sura ya 4 Nyongeza

Nyaraka za vifaa
Kwa utangulizi wa kina wa maunzi, tafadhali rejelea mwongozo wa mtumiaji wa MaaXBoard 8ULP.

Hati za Programu
MaaXBoard 8ULP inasaidia Yocto Linux, kwa habari zaidi, tafadhali rejelea hati zifuatazo:

  • MaaXBoard 8ULP Linux Yocto Mwongozo wa Mtumiaji
    • Inaeleza jinsi ya kuwasha MaaXBoard 8ULP na vipengele vya utendakazi wa BSP
  • MaaXBoard 8ULP Linux Yocto Development Guide
    • Mwongozo wa kina wa jinsi ya kuunda upya picha ya mfumo wa Linux (Hati hii)

Maelezo ya Mawasiliano

Bidhaa Webukurasa:
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/

Nyaraka / Rasilimali

Kompyuta ya Bodi Moja ya AVNET MaaXBoard8ULP [pdf] Mwongozo wa Mtumiaji
EM-MC-SBC-IMX8M, MaaXBoard8ULP Kompyuta ya Bodi Moja, MaaXBoard8ULP, Kompyuta ya Bodi Moja, Kompyuta ya Bodi, Kompyuta

Marejeleo

Acha maoni

Barua pepe yako haitachapishwa. Sehemu zinazohitajika zimetiwa alama *