日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

imx8mm yocto_bsp 编译

發布時間:2023/12/10 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 imx8mm yocto_bsp 编译 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在實際的項目中,根據使用的具體版本來進行下載。 其中-b 選擇分支https://source.codeaurora.org/external/imx/imx-manifest/tree/README?h=imx-linux-zeusmkdir imx-yocto-bsp sudo chmod 777 imx-yocto-bsp cd imx-yocto-bsp repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml repo syncfsl-setup-release.sh腳本會對參數如下的三個參數進行解析DISTRO=fsl-imx-wayland MACHINE=imx8mmevk source -b imx8mmevk_waylandDISTRO=fsl-imx-wayland MACHINE=imx8mmevk source fsl-setup-release.sh -b imx8mmevk_wayland 這個命令使用sources文件夾, fsl-setup-release.sh以及setup-environment生成imx8mmevk_wayland目錄以及子目local/local.conf文件。 如果想在local.conf中增加內容, 比如增加CORE_IMAGE_EXTRA_INSTALL += "dhcp-server iperf2",那么可以在fsl-setup-release.sh文件中 echo BSPDIR=$BSPDIR之前增加以下命令: echo "CORE_IMAGE_EXTRA_INSTALL += \"dhcp-server iperf2\"" >> $BUILD_DIR/conf/local.conf 然后執行DISTRO=fsl-imx-wayland MACHINE=imx8mmevk source fsl-setup-release.sh -b imx8mmevk_wayland,就會更新local.conf文件bitbake fsl-image-validation-imx 編譯基于wayland 的支持GUI 的測試鏡像

在下面的鏈接中下載文檔,主要參考i.MX_Yocto_Project_User's_Guide.pdfi.MX Developer Resources | NXP Semiconductorshttps://www.nxp.com/design/i-mx-developer-resources:IMXSW_HOME

下面的鏈接中也有對imx_linux_zeus 這個分子進行介紹說明如何編譯

README - imx-manifest - i.MX Release Manifesthttps://source.codeaurora.org/external/imx/imx-manifest/tree/README?h=imx-linux-zeus

可以在下面的鏈接中搜索想要編譯到文件系統中的bb recipes,其中已tcpdump為例

OpenEmbedded Layer Index - recipeshttp://layers.openembedded.org/layerindex/branch/master/recipes/?q=tcpdump

2:內核編譯(Image-imx8mmevk.bin)

注意看其中的linux-imx_4.14.98.bb?

bitbake -v -c clean linux-imx

bitbake -v ?linux-imx

對應編譯日志如下:由此可以知道上面bb中的mkdir -p ${B} B只的是build

$<50>+ do_copy_defconfig + install -d /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/build$<50>+ [ no = yes ] + mkdir -p /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/build$<50>+ cp /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/git/arch/arm64/configs/defconfig /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/build/.config$<50>+ cp /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/git/arch/arm64/configs/defconfig /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/build/../defconfig

編譯完成之后,有如何生成的文件

如果要能燒寫到imx中還需要額外的文件 先將系統中內核掛載出來。

root@imx8mmevk:~/kernel# cat /proc/partitions major minor #blocks name31 0 32768 mtdblock0179 0 7761920 mmcblk1179 1 65536 mmcblk1p1179 2 1613824 mmcblk1p2179 32 15388672 mmcblk2179 33 4096 mmcblk2p1179 34 4096 mmcblk2p2179 35 65536 mmcblk2p3179 36 65536 mmcblk2p4179 37 65536 mmcblk2p5179 38 65536 mmcblk2p6179 39 4096 mmcblk2p7179 40 16384 mmcblk2p8179 41 1024 mmcblk2p9179 42 4194304 mmcblk2p10179 43 9127936 mmcblk2p11179 44 1024 mmcblk2p12179 45 1024 mmcblk2p13179 46 1024 mmcblk2p14179 128 4096 mmcblk2rpmb179 96 4096 mmcblk2boot1179 64 4096 mmcblk2boot0 root@imx8mmevk:~/kernel# df -h Filesystem Size Used Avail Use% Mounted on /dev/root 1.5G 1.2G 146M 90% / devtmpfs 659M 4.0K 659M 1% /dev tmpfs 979M 0 979M 0% /dev/shm tmpfs 979M 8.5M 971M 1% /run tmpfs 979M 0 979M 0% /sys/fs/cgroup tmpfs 979M 0 979M 0% /tmp tmpfs 979M 248K 979M 1% /var/volatile /dev/mmcblk2p8 12M 176K 11M 2% /run/media/mmcblk2p8 /dev/mmcblk1p1 64M 23M 42M 36% /home/root/kernel tmpfs 196M 0 196M 0% /run/user/0 root@imx8mmevk:~/kernel# ls -alh //home/root/kernel total 23M drwxrwx--- 3 root disk 16K Jan 1 1970 . drwx------ 5 root root 4.0K Sep 19 23:42 .. -rwxrwx--- 1 root disk 23M Mar 11 2022 Image drwxrwx--- 2 root disk 2.0K Mar 11 2022 System Volume Information -rwxrwx--- 1 root disk 44K Mar 11 2022 fsl-imx8mm-ddr4-evk-rm67191.dtb -rwxrwx--- 1 root disk 44K Mar 11 2022 fsl-imx8mm-ddr4-evk.dtb -rwxrwx--- 1 root disk 44K Mar 11 2022 fsl-imx8mm-ddr4-qca9377-evk.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-ak4497.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-ak5558.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-audio-tdm.dtb -rwxrwx--- 1 root disk 22K Mar 11 2022 fsl-imx8mm-evk-inmate.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-m4.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-revb-rm67191.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-revb.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-rm67191.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk-root.dtb -rwxrwx--- 1 root disk 43K Mar 11 2022 fsl-imx8mm-evk.dtb -rwxrwx--- 1 root disk 6.2K Mar 11 2022 imx8mm_m4_TCM_hello_world.bin -rwxrwx--- 1 root disk 17K Mar 11 2022 imx8mm_m4_TCM_rpmsg_lite_pingpong_rtos_linux_remote.bin -rwxrwx--- 1 root disk 17K Mar 11 2022 imx8mm_m4_TCM_rpmsg_lite_str_echo_rtos.bin -rwxrwx--- 1 root disk 40K Mar 11 2022 imx8mm_m4_TCM_sai_low_power_audio.bin root@imx8mmevk:~/kernel#

在執行bitbake -c compile ?-v fsl-image-validation-imx 得日志過程中

?其中image_types_fsl.bbclass包含升級可升級的boot.img的過程

linshubin@fcrdsw-13:~/origin_imx-yocto-bsp/sources$ grep -srn "_generate_boot_image" ./ ./meta-fsl-bsp-release/imx/meta-bsp/classes/image_types_fsl.bbclass:123:_generate_boot_image() { ./meta-fsl-bsp-release/imx/meta-bsp/classes/image_types_fsl.bbclass:259: _generate_boot_image 1 ./meta-fsl-bsp-release/imx/meta-bsp/classes/image_types_fsl.bbclass:337: _generate_boot_image 2 linshubin@fcrdsw-13:~/origin_imx-yocto-bsp/sources$ linshubin@fcrdsw-13:~/origin_imx-yocto-bsp/sources$ grep -srn "BOOT_SCRIPTS" ./ ./meta-fsl-bsp-release/imx/meta-bsp/classes/image_types_fsl.bbclass:143: for item in ${BOOT_SCRIPTS}; do linshubin@fcrdsw-13:~/origin_imx-yocto-bsp/sources$

其燒寫文件為:boot.img?由下面的個文件組成

3: 文件系統

dd if=/dev/zero of=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.ext4 seek=1400832 count=0 bs=1024

先生成空文件fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.ext4

之后再使用mkfs.ext4

mkfs.ext4 -F -i 4096 /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.ext4 -d /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/rootfs

r

分區信息如下:

?4:BootLoader

bitbake imx-boot ?制作啟動文件,其中包含了:
bitbake u-boot-imx 這個才是我們平時所謂的u-boot.bin 及u-boot-spl.bin

im8mm的boot 有多個文件組合而成的,并非僅僅只有一個傳統的uboot文件

?

?

SD卡Image

?有上面整個打包過程可以知道:SDimage有三部分組成

1:imx-boot-imx8mmevk-sd.bin? 這個就是flash.bin

2:boot.img

3:fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.ext4

dd if=/dev/zero of=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard bs=1 count=0 seek=1518338048parted -s /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard mklabel msdos parted -s /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard unit KiB mkpart primary fat32 8192 73728 parted -s /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard unit KiB mkpart primary 73728 1474560 parted /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard print Disk /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard: 1518MB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags1 8389kB 75.5MB 67.1MB primary lba2 75.5MB 1510MB 1434MB primary dd if=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/deploy/images/imx8mmevk/imx-boot-imx8mmevk-sd.bin of=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard conv=notrunc seek=33 bs=1K dd if=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/boot.img of=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard conv=notrunc,fsync seek=1 bs=8388608 dd if=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.ext4 of=/home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard conv=notrunc,fsync seek=1 bs=75497472pbzip2 -f -k fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard rm fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard fsl-image-validation-imx-1.0-r0 do_image_sdcard: Creating symlink: /home/linshubin/origin_imx-yocto-bsp/imx8mmevk_wayland/tmp/work/imx8mmevk-poky-linux/fsl-image-validation-imx/1.0-r0/deploy-fsl-image-validation-imx-image-complete/fsl-image-validation-imx-imx8mmevk.sdcard.bz2 -> fsl-image-validation-imx-imx8mmevk-20220329061930.rootfs.sdcard.bz2

總結

以上是生活随笔為你收集整理的imx8mm yocto_bsp 编译的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。