Hello,
How can I have with yocto the patch preempt-rt with the kernel 3.0.35?
I used the branch Dora in https://github.com/Freescale/fsl-community-bsp-platform to have the kernel 3.0.35 but the patch preemt-rt is not there.
On the contrary, the branch Dizzy has the patch preempt-rt but not the kernel 3.0.35.
My target is imx6q sd.
Conf.file
DORA branch
MACHINE ??= 'imx6qsabresd'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server-dropbear ssh-server-openssh"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
CONF_VERSION = "1"
BB_NUMBER_THREADS = '8'
PARALLEL_MAKE = '-j 8'
DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = ""
CORE_IMAGE_EXTRA_INSTALL += "libgomp libgomp-dev libgomp-staticdev"
PREFERRED_VERSION_linux-imx = "3.0.35"
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
COMPATIBLE_MACHINE_mx6qsabresd= "imx6qsabresd"
DIZZY branch
MACHINE ??= 'imx6qsabresd'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server-dropbear ssh-server-openssh"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
ASSUME_PROVIDED += "libsdl-native"
CONF_VERSION = "1"
BB_NUMBER_THREADS = '8'
PARALLEL_MAKE = '-j 8'
DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = "1"
CORE_IMAGE_EXTRA_INSTALL += "libgomp libgomp-dev libgomp-staticdev"
PREFERRED_VERSION_linux-imx = "3.0.35"
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
Thank you
Maurice
解決済! 解決策の投稿を見る。
See sources/poky/meta/recipes-rt/README files or https://github.com/openembedded/oe-core/tree/master/meta/recipes-rt
The recipes-rt recipes provide package and image recipes for using and testing
the PREEMPT_RT kernel. The core-image-rt*.bb images are minimal images with
a couple extra packages, including rt-tests. In order to build the image with
the linux-yocto-rt kernel, be sure to include the following line in your
local.conf, bblayers.conf, or your $MACHINE.conf.
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
If you are creating a new BSP which should use linux-yocto-rt by default,
use the line above in the $MACHINE.conf in your BSP layer, and specify the
following in a linux-yocto-rt bbappend recipe:
COMPATIBLE_MACHINE_$MACHINE = $MACHINE
In my case, I edit sources/meta-fsl-arm/conf/machine/imx6qsabresd.conf in order to add COMPATIBLE_MACHINE_imx6qsabresd = "imx6qsabresd"
Thank the README....
BR,
Maurice
Hi,
Could you please suggest me a rt_preempt patch file for 3.10.17 and is it required to apply all the patch files of https://www.kernel.org/pub/linux/kernel/projects/rt/3.10/older/patches-3.10.17-rt12.tar.gz if this is a right one for 3.10.17 yocto release?
Regards,
Pooja B
In meta-fsl-arm there is only 3.10.17 rt patches available. Please check recipes-kernel/linux/linux-imx-rt_3.10.17.bb .
So if you need rt you could try 3.10.17 instead.
Hello,
I tried it but it is not compatible with imx6q SD:
bitbake core-image-rt
Parsing recipes: 100% |#####################################################################################################| Time: 00:00:24
Parsing of 1527 .bb files complete (0 cached, 1527 parsed). 1981 targets, 126 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'linux-yocto-rt' (but /home/aurelien/Workspace/yocto/fsl-community-bsp_dizzy/sources/poky/meta/recipes-rt/images/core-image-rt.bb DEPENDS on or otherwise requires it)
ERROR: linux-yocto-rt was skipped: incompatible with machine imx6qsabresd (not in COMPATIBLE_MACHINE)
ERROR: linux-yocto-rt was skipped: incompatible with machine imx6qsabresd (not in COMPATIBLE_MACHINE)
ERROR: Required build target 'core-image-rt' has no buildable providers.
Missing or unbuildable dependency chain was: ['core-image-rt', 'linux-yocto-rt']
There my config file
MACHINE ??= 'imx6qsabresd'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server-dropbear ssh-server-openssh"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
ASSUME_PROVIDED += "libsdl-native"
CONF_VERSION = "1"
BB_NUMBER_THREADS = '8'
PARALLEL_MAKE = '-j 8'
DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = ""
CORE_IMAGE_EXTRA_INSTALL += "libgomp libgomp-dev libgomp-staticdev"
PREFERRED_VERSION_linux-imx = "3.10.17"
PREFERRED_PROVIDER_virtual/kernel = "linux-imx-rt"
Can you explain to me why the preemp-rt pacthes were available with kernel 3.0.35, compatible with imx6qsabre sd with LTIB and it is not with yocto?
Did I miss something?
BR
Maurice
See sources/poky/meta/recipes-rt/README files or https://github.com/openembedded/oe-core/tree/master/meta/recipes-rt
The recipes-rt recipes provide package and image recipes for using and testing
the PREEMPT_RT kernel. The core-image-rt*.bb images are minimal images with
a couple extra packages, including rt-tests. In order to build the image with
the linux-yocto-rt kernel, be sure to include the following line in your
local.conf, bblayers.conf, or your $MACHINE.conf.
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt"
If you are creating a new BSP which should use linux-yocto-rt by default,
use the line above in the $MACHINE.conf in your BSP layer, and specify the
following in a linux-yocto-rt bbappend recipe:
COMPATIBLE_MACHINE_$MACHINE = $MACHINE
In my case, I edit sources/meta-fsl-arm/conf/machine/imx6qsabresd.conf in order to add COMPATIBLE_MACHINE_imx6qsabresd = "imx6qsabresd"
Thank the README....
BR,
Maurice
Do not forget to add in your conf/local.conf
KERNEL_EXTRA_ARGS += "LOADADDR=0x10008000"