yocto imx-test not compiling for imx6ull

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

yocto imx-test not compiling for imx6ull

Jump to solution
1,578 Views
paul_geurts
Contributor III

We are working on a custom i.MX6ULL board. We created a machine config for Yocto for this build, based on the imx6ull14x14evk.conf which is in meta-imx:

MACHINEOVERRIDES =. "mx6:mx6ull:"

include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa7.inc

PLATFORM = "IMX6ULL"

KERNEL_DEVICETREE = "imx6ull-14x14-evk.dtb imx6ull-14x14-evk-btwifi.dtb \
                     imx6ull-14x14-evk-btwifi-oob.dtb imx6ull-14x14-evk-emmc.dtb \
                     imx6ull-14x14-evk-gpmi-weim.dtb"
KERNEL_DEFCONFIG = "imx_v7_defconfig"
IMAGE_BOOT_FILES = "imx6ull-14x14-evk.dtb imx6ull-14x14-evk-btwifi.dtb \
                    imx6ull-14x14-evk-btwifi-oob.dtb imx6ull-14x14-evk-emmc.dtb \
                    imx6ull-14x14-evk-gpmi-weim.dtb"

# Use this feature branch for now.
UBOOT_BRANCH = "feature/pd-imx6ull-config"
UBOOT_CONFIG ??= "spi nand"
UBOOT_CONFIG[nand] = "pd-imx6ull-nand_defconfig"
UBOOT_CONFIG[spi] = "pd-imx6ull-spi_defconfig"

PREFERRED_PROVIDER_u-boot = "u-boot-imx"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-imx"
PREFERRED_PROVIDER_virtual/kernel = "linux-imx"
PREFERRED_VERSION_linux-imx ?= "5.%"

SERIAL_CONSOLES = "115200;ttymxc0"

MACHINE_FEATURES += "wifi bluetooth"
# optee is included in the poky distro, but we don't need it for now. Use this
# MACHINE_FEATURES to remove it from the image
MACHINE_FEATURES_remove = "optee"

# Used to fill FIT template
UBOOT_LOADADDRESS_mx6ull = "0x80800000"
UBOOT_ENTRYPOINT_mx6ull = "0x80800000"
UBOOT_DTB_LOADADDRESS_mx6ull = "0x83000000"
UBOOT_RD_LOADADDRESS_mx6ull = "0x86800000"
KERNEL_FIT_LOADADDRESS_mx6ull = "0x88000000"

It's a work in progress but we'd like to have a working base line.

We are working on NXP release imx-5.4.24-2.1.0 from here. 

This machine config fails to compile and we have no idea why. The imx-test package cannot be compiled as it apparently cannot find "pxp_lib.h" (see attached log).

Does anyone have any idea what is happening here and how I can fix this?

Thanks!

0 Kudos
1 Solution
1,544 Views
paul_geurts
Contributor III

The pxp_lib.h header is part of the imx-lib package. Whether PXP lib is compiled and installed is dependent on the platform. The platform decision is made by the imx-lib recipe depending on the CPU. Apperantly in the zeus release, i.MX6ULL was not yet supported. Well basically it still isn't but, someone hacked around it in meta-freescale by setting the platform of ULL to "IMX6UL" is this patch

Without the platform setting the PXP lib is not compiled, which affects the imx-test build as it does need it.
I have added the following line to my machine config and now it works:

PLATFORM_mx6ull = "IMX6UL"

View solution in original post

0 Kudos
4 Replies
1,545 Views
paul_geurts
Contributor III

The pxp_lib.h header is part of the imx-lib package. Whether PXP lib is compiled and installed is dependent on the platform. The platform decision is made by the imx-lib recipe depending on the CPU. Apperantly in the zeus release, i.MX6ULL was not yet supported. Well basically it still isn't but, someone hacked around it in meta-freescale by setting the platform of ULL to "IMX6UL" is this patch

Without the platform setting the PXP lib is not compiled, which affects the imx-test build as it does need it.
I have added the following line to my machine config and now it works:

PLATFORM_mx6ull = "IMX6UL"
0 Kudos
1,569 Views
jimmychan
NXP TechSupport
NXP TechSupport

I tried to build "core-image-minimal" and then build the imx-test. I can build it without error. You may check the .bb file of imx-test (source/meta-freescale/recipes-bsp/imx-test/imx-test_git.bb) .

0 Kudos
1,552 Views
paul_geurts
Contributor III

I am building recipe "imx-image-core" BTW. No idea whether that matters.

0 Kudos
1,557 Views
paul_geurts
Contributor III

According to the build log, the compiler command to build pxp_test.c is:

arm-poky-linux-gnueabi-gcc  -mthumb -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7 -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now                     -I/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/git/include                     -I/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/recipe-sysroot/usr/include/imx                     -I/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/recipe-sysroot/usr/include                     -L/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/recipe-sysroot/usr/lib -c -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -g -I/data/projects/imx8gp/paugeu/repos/work/bld-imx6ull-bb-xwayland/tmp/work/cortexa7t2hf-neon-mx6ul-poky-linux-gnueabi/imx-test/1_7.0+AUTOINC+c856132f0f-r0/recipe-sysroot/usr/include/imx  pxp_lib_test/pxp_test.c -o pxp_lib_test/pxp_test.o

This compilation step gives the error:

| pxp_lib_test/pxp_test.c:34:10: fatal error: pxp_lib.h: No such file or directory
|    34 | #include "pxp_lib.h"
|       |          ^~~~~~~~~~~

A quick search tells me the header required is in a subdirectory of imx-lib, which is not available a an include directory in the compiler command (hence the compiler error). But i have no idea how to add it.

0 Kudos