Error during do_compile : imx-gpu-viv-6.2.2.p0-r0, for apalis imx6

Hi !

I need help please. I’m building a real time kernel image for Apalis imx6q with yocto project.
I have been following the preparation steps on how to build our BSP V2.x from scratch using OpenEmbedded core.

I made the modifications on the local.conf as follow:

ACCEPT_FSL_EULA = “1”

PREFERRED_PROVIDER_virtual/kernel = “linux-toradex-rt”

MACHINE ?= “apalis-imx6”

During the bitbake angstrom-lxde-image compilation process an error appered with the recipes kernel-module-imx-gpu-viv_6.2.2.p0.bb

Here my configurations :

Build Configuration:
BB_VERSION           = "1.36.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "ubuntu-14.04"
TARGET_SYS           = "arm-angstrom-linux-gnueabi"
MACHINE              = "apalis-imx6"
DISTRO               = "angstrom"
DISTRO_VERSION       = "v2017.12"
TUNE_FEATURES        = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU           = "hard"
meta-angstrom        = "HEAD:3eafb0073465e4808769e7a8ed9d90c83d665868"
meta-toradex-nxp     = "HEAD:656677f4a68e6747971a4a30550cd72c3beb6a76"
meta-freescale       = "HEAD:15f14f7eb30dde0488a04fbca6a2ac997eeace30"
meta-freescale-3rdparty = "HEAD:a02324e27f7a7ac630dab616f46a8bad7fe2c071"
meta-toradex-tegra   = "HEAD:15885b9b98aff0658f962f1c61352286b0749288"
meta-jetson-tk1      = "HEAD:e8b87fe8da7c6fcffa37ab245f50082953cc1ee1"
meta-toradex-bsp-common = "HEAD:3e713eef6e056c955b82adaf4b45286a98c3fcdf"
meta-oe              
meta-filesystems     
meta-gnome           
meta-xfce            
meta-initramfs       
meta-networking      
meta-multimedia      
meta-python          = "HEAD:352531015014d1957d6444d114f4451e241c4d23"
meta-lxde            = "HEAD:8b0f254b6afa8df1daa240905ffbafd7c794c0ef"
meta-browser         = "HEAD:1cd38d701a49eade80a04140f70d3383117b9745"
meta-qt4             = "HEAD:e290738759ef3f39c9e079eaa9b606a62107e5ba"
meta-qt5             = "HEAD:682ad61c071a9710e9f9d8a32ab1b5f3c14953d1"
meta-qt5-extra       = "HEAD:79e26686520f2ce5f743975e90116b263a33697f"
meta-freescale-distro = "HEAD:51756d1c2058139c8a21f89b86cfd8007b71b7f0"
meta-toradex-demos   = "HEAD:32e07d09ac0279d0c50b6801e26e6d0be776207c"
meta                 = "HEAD:6c20c550a82aed9e8fa312f09888c8f16250159c"

And bellow the errors msgs

ERROR: kernel-module-imx-gpu-viv-6.2.2.p0-r0 do_compile: oe_runmake failed
ERROR: kernel-module-imx-gpu-viv-6.2.2.p0-r0 do_compile: Function failed: do_compile (log file is located at /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/temp/log.do_compile.14903)
ERROR: Logfile of failure stored in: /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/temp/log.do_compile.14903
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 8 KERNEL_SRC=/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source KERNEL_PATH=/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source KERNEL_VERSION=4.9.87-rt62-2.8.3+g07d40f6f CC=arm-angstrom-linux-gnueabi-gcc  -mno-thumb-interwork -marm -fuse-ld=bfd LD=arm-angstrom-linux-gnueabi-ld.bfd   AR=arm-angstrom-linux-gnueabi-ar  O=/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-build-artifacts KBUILD_EXTRA_SYMBOLS=
| make -C /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source M=/home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src AQROOT=/home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src
| make[1]: Entering directory `/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source'
| make[2]: Entering directory `/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-build-artifacts'
|   CC [M]  /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.o
| In file included from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock.h:290:0,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/seqlock.h:35,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/time.h:5,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/stat.h:18,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/module.h:10,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_linux.h:63,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:56:
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c: In function 'gckOS_WaitSignal':
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6043:19: error: passing argument 1 of 'rt_spin_lock' from incompatible pointer type [-Werror=incompatible-pointer-types]
|      spin_lock_irq(&signal->obj.wait.lock);
|                    ^
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:43:40: note: in definition of macro 'spin_lock'
|  #define spin_lock(lock)   rt_spin_lock(lock)
|                                         ^~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6043:5: note: in expansion of macro 'spin_lock_irq'
|      spin_lock_irq(&signal->obj.wait.lock);
|      ^~~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:25:24: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'raw_spinlock_t * {aka struct raw_spinlock *}'
|  extern void __lockfunc rt_spin_lock(spinlock_t *lock);
|                         ^~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6079:31: error: passing argument 1 of '__add_wait_queue_tail' from incompatible pointer type [-Werror=incompatible-pointer-types]
|          __add_wait_queue_tail(&signal->obj.wait, &wait);
|                                ^
| In file included from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/mmzone.h:9:0,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/gfp.h:5,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/kmod.h:22,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/module.h:13,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_linux.h:63,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:56:
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/wait.h:181:20: note: expected 'wait_queue_head_t * {aka struct __wait_queue_head *}' but argument is of type 'struct swait_queue_head *'
|  static inline void __add_wait_queue_tail(wait_queue_head_t *head,
|                     ^~~~~~~~~~~~~~~~~~~~~
| In file included from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock.h:290:0,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/seqlock.h:35,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/time.h:5,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/stat.h:18,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/module.h:10,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_linux.h:63,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:56:
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6094:29: error: passing argument 1 of 'rt_spin_unlock' from incompatible pointer type [-Werror=incompatible-pointer-types]
|              spin_unlock_irq(&signal->obj.wait.lock);
|                              ^
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:113:44: note: in definition of macro 'spin_unlock'
|  #define spin_unlock(lock)   rt_spin_unlock(lock)
|                                             ^~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6094:13: note: in expansion of macro 'spin_unlock_irq'
|              spin_unlock_irq(&signal->obj.wait.lock);
|              ^~~~~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:28:24: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'raw_spinlock_t * {aka struct raw_spinlock *}'
|  extern void __lockfunc rt_spin_unlock(spinlock_t *lock);
|                         ^~~~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6100:27: error: passing argument 1 of 'rt_spin_lock' from incompatible pointer type [-Werror=incompatible-pointer-types]
|              spin_lock_irq(&signal->obj.wait.lock);
|                            ^
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:43:40: note: in definition of macro 'spin_lock'
|  #define spin_lock(lock)   rt_spin_lock(lock)
|                                         ^~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6100:13: note: in expansion of macro 'spin_lock_irq'
|              spin_lock_irq(&signal->obj.wait.lock);
|              ^~~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:25:24: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'raw_spinlock_t * {aka struct raw_spinlock *}'
|  extern void __lockfunc rt_spin_lock(spinlock_t *lock);
|                         ^~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6128:29: error: passing argument 1 of '__remove_wait_queue' from incompatible pointer type [-Werror=incompatible-pointer-types]
|          __remove_wait_queue(&signal->obj.wait, &wait);
|                              ^
| In file included from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/mmzone.h:9:0,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/gfp.h:5,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/kmod.h:22,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/module.h:13,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_linux.h:63,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:56:
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/wait.h:195:1: note: expected 'wait_queue_head_t * {aka struct __wait_queue_head *}' but argument is of type 'struct swait_queue_head *'
|  __remove_wait_queue(wait_queue_head_t *head, wait_queue_t *old)
|  ^~~~~~~~~~~~~~~~~~~
| In file included from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock.h:290:0,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/seqlock.h:35,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/time.h:5,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/stat.h:18,
|                  from /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/module.h:10,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_linux.h:63,
|                  from /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:56:
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6135:21: error: passing argument 1 of 'rt_spin_unlock' from incompatible pointer type [-Werror=incompatible-pointer-types]
|      spin_unlock_irq(&signal->obj.wait.lock);
|                      ^
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:113:44: note: in definition of macro 'spin_unlock'
|  #define spin_unlock(lock)   rt_spin_unlock(lock)
|                                             ^~~~
| /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.c:6135:5: note: in expansion of macro 'spin_unlock_irq'
|      spin_unlock_irq(&signal->obj.wait.lock);
|      ^~~~~~~~~~~~~~~
| /home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source/include/linux/spinlock_rt.h:28:24: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'raw_spinlock_t * {aka struct raw_spinlock *}'
|  extern void __lockfunc rt_spin_unlock(spinlock_t *lock);
|                         ^~~~~~~~~~~~~~
| cc1: all warnings being treated as errors
| make[3]: *** [/home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/gc_hal_kernel_os.o] Error 1
| make[2]: *** [_module_/home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/kernel-module-imx-gpu-viv-6.2.2.p0/kernel-module-imx-gpu-viv-src] Error 2
| make[2]: Leaving directory `/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-build-artifacts'
| make[1]: *** [sub-make] Error 2
| make[1]: Leaving directory `/home/akeo2/yocto/build/tmp-glibc/work-shared/apalis-imx6/kernel-source'
| make: *** [all] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/akeo2/yocto/build/tmp-glibc/work/apalis_imx6-angstrom-linux-gnueabi/kernel-module-imx-gpu-viv/6.2.2.p0-r0/temp/log.do_compile.14903)
ERROR: Task (/home/akeo2/yocto/build/../layers/meta-toradex-nxp/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.2.2.p0.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 6479 tasks of which 6467 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory

Summary: 1 task failed:
  /home/akeo2/yocto/build/../layers/meta-toradex-nxp/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.2.2.p0.bb:do_compile
Summary: There was 1 WARNING message shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

Best regards !

Hi

Please have a look here.

Max

Hi @max.tx

Thank you so much ! that solved my problem and my kernel was built successfully.

Najeh