Kompyuta ya Bodi Moja ya AVNET MaaXBoard8ULP
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
- $ mkdir -p ~/bin
- $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
- $ chmod a+x ~/bin/repo
- $ export PATH=~/bin:$PATH
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
- $ mkdir ~/imx-yocto-bsp
- $ cd ~/imx-yocto-bsp
- $ repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-mickledore -m imx-6.1.22-
- 2.0.0.xml
- Usawazishaji wa $ repo
Pakua Msimbo wa Chanzo wa MaaXBoard 8ULP
Ili kupakua msimbo wa chanzo wa MaaXBoard 8ULP, tengeneza hazina kutoka Github:
- $ cd ~/imx-yocto-bsp/vyanzo
- $ git clone https://github.com/Avnet/meta-maaxboard.git -b mickledore meta-maaxboard
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:
- $ mkdir tmp
- $ cd tmp
- $ git clone https://github.com/Avnet/uboot-imx.git -b maaxboard_lf-6.1.22-2.0.0
- $ git clone https://github.com/Avnet/imx-atf.git -b maaxboard_lf-6.1.22-2.0.0
- $ git clone https://github.com/Avnet/imx-mkimage.git -b maaxboard_lf-6.1.22-2.0.0
- Pakua firmware-imx, punguza na ukubali NXP EULA unapoendesha:
- $ wget https://www.nxp.com.cn/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.20.bin
- $ chmod +x firmware-imx-8.20.bin
- $ ./firmware-imx-8.20.bin
- Tekeleza amri ya 'ls' kwa view saraka ya tmp:
- $ ls tmp
- firmware-imx-8.20 firmware-imx-8.20.bin imx-atf imx-mkimage uboot-imx
- Hadi sasa, msimbo wa chanzo unaohitajika na firmware imeandaliwa.
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/
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 |