AnsweredAssumed Answered

Audio kernel header is not getting for external module build in i.MX6 Yocto Jethro

Question asked by Shabeer Badarudheen on Oct 7, 2016
Latest reply on Oct 14, 2016 by Shabeer Badarudheen



I am upgrading the kernel from 3.10.17 to 4.1.15, as a part of these i upgraded yocto to Jethro. We have lot of custom drivers(i2c,spi, audio etc) and these drivers are build in yocto using external module build procedure. In Jethro, i am able to build all modules except audio driver. In the build time it shows a warning message but the .ko is created.


WARNING: "imx_audmux_v2_configure_port" [/home/shabeer/tata-build_4.1.15_last/tmp/work/lytxlcflex4115-poky-linux-gnueabi/lcflex-drivers/0.1-r0/home/shabeer/lytxrepo_4.1.15_snd/Flex-NewKernel-Collaboration/extra_src/lcflex-drivers/audio-mems/mems_audio.ko] undefined!


While inserting the driver  shows below logs.
mems_audio: no symbol version for imx_audmux_v2_configure_port
mems_audio: Unknown symbol imx_audmux_v2_configure_port (err -22)


These drivers are build and loaded in previous yocto (Dizzy) without any issue. I believe  it is a yocto related issue because the .ko are created and loaded successfully when we build the audio driver by put the source code inside the 4.1.15 kernel source (location - src/sound/soc/fsl). Also one difference i noticed, in Dizzy yocto the kernel headers are seen in the YOCTO location - tmp/sysroots/<MACHINE>/usr/src/kernel but not in Jethro.


Could any one help up to solve this?