Hi, it actually shouldn't be that hard to set the kernel. IMX_DEFAULT_KERNEL is a variable that sets the kernel name (the recipe) and not the version. I don't know on which yocto version you are working, and also on which CPU. On meta-freescale, you find this on meta-freescale-distro/conf/distro/include/fsl-base.inc: # Handle default kernel IMX_DEFAULT_KERNEL = "linux-imx" IMX_DEFAULT_KERNEL_mxs = "linux-fslc" IMX_DEFAULT_KERNEL_mx5 = "linux-fslc" IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx" IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx" IMX_DEFAULT_KERNEL_mx8 = "linux-imx" IMX_DEFAULT_KERNEL_mx7ulp = "linux-imx" IMX_DEFAULT_KERNEL_mx6sll = "linux-imx" IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx" IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx" IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc" PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}" That variable is only used if "PREFERRED_PROVIDER_virtual/kernel" variable was never set (note the ??= assignment). And what this does is: if there was not specified a kernel for this machine, set it to linux-imx (and note that it is also overridden for different cpus!). For example, it selects linux-fslc-imx for imx6 cpu. Now, go to meta-freescale/recipes-kernel/linux folder, and take a look to see what kernels are available for your machine. Note that the linux-imx kernel provides currently on master branch the 5.4 version! For you to select the 5.10 (assuming you are on master branch) you should set: PREFERRED_PROVIDER_virtual/kernel = "linux-fslc" Yocto will automatically select the highest available version, but if you would also like to fix the version, provide also that information: PREFERRED_VERSION_linux-fslc = "5.%"