ILD

imx gpu viv
作者:Yuan Jianpeng 邮箱:yuanjp89@163.com
发布时间:2026-7-22 站点:Inside Linux Development

在nxp的官方yocto sdk中。

gpu提供的egl等是二进制,在imx gpu viv这个包中。

imx-gpu-viv 包本身,包含了 EGL、OpenGL ES、OpenCL 等用户空间库



$ ls meta-imx/meta-imx-bsp/recipes-graphics/imx-gpu-viv

imx-gpu-viv_6.4.11.p4.4-aarch32.bb

imx-gpu-viv_6.4.11.p4.4-aarch64.bb

imx-gpu-viv-6-overrides.inc


$ ls meta-freescale/recipes-graphics/imx-gpu-viv

imx-gpu-viv_6.4.11.p3.2-aarch32.bb

imx-gpu-viv_6.4.11.p3.2-aarch64.bb

imx-gpu-viv-6.inc


包含关系是 meta-imx下面的

imx-gpu-viv_6.4.11.p4.4-aarch64.bb 包含 imx-gpu-viv-6-overrides.inc

在包含 meta-freescale下面的 imx-gpu-viv-6.inc


weston依赖的virtual/egl由imx_gpu_viv提供:

$ bitbake -e | grep "^PREFERRED_PROVIDER_virtual/egl="

PREFERRED_PROVIDER_virtual/egl="imx-gpu-viv"


它以二进制提供,下载地址:

$ bitbake -e imx-gpu-viv | grep "^SRC_URI="

SRC_URI="https://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-gpu-viv-6.4.11.p4.4-aarch64-8626797.bin;fsl-eula=true"


下载后是一个bin, 其实是个shell + 压缩包。执行后可以解压

$ bash imx-gpu-viv-6.4.11.p4.4-aarch64-8626797.bin


$ ls imx-gpu-viv-6.4.11.p4.4-aarch64-8626797/

COPYING  gpu-core  gpu-demos  gpu-tools  SBOM.spdx.json  SCR-imx-gpu-viv.txt


imx-gpu-viv-6.inc

这个文件定义了do_install

do_install () {
    install -d ${D}${libdir}
    install -d ${D}${includedir}
    install -d ${D}${bindir}

    cp -P ${S}/gpu-core/usr/lib/*.so* ${D}${libdir}
    cp -r ${S}/gpu-core/usr/include/* ${D}${includedir}
    cp -r ${S}/gpu-demos/opt ${D}
    cp -r ${S}/gpu-tools/gmem-info/usr/bin/* ${D}${bindir}

    # Use vulkan header from vulkan-headers recipe to support vkmark
    rm -rf ${D}${includedir}/vulkan/

    # Install SOC-specific drivers
    if [ -d ${S}/gpu-core/usr/lib/${IMX_SOC} ]; then
        cp -r ${S}/gpu-core/usr/lib/${IMX_SOC}/* ${D}${libdir}
    fi


Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.