On Tue, Apr 16, 2024 at 2:38 PM Bruce Ashfield <bruce.ashfi...@gmail.com> wrote: > > Without including the ktypes/preempt-rt/preempt-rt.scc, you won't actually > have the preempt-rt patches applied, as that's where the branches are > created and the features/rt is included (and that feature is the actual -rt > patches).
Ok, I'm no longer specifying 'include ktypes/preempt-rt'. As a result, I no longer get any build error, but also I do not get any rt configuration in the final kernel (eg PREEMPT_RT is not configured). Is the 'define KTYPE preempt-rt' line supposed to pull in the configuration automatically? If so, I must be missing a step somewhere (see my full configuration below). > Any debug options are typically controlled by KERNEL_FEATURES in > the kernel recipes, so I wouldn't expect too much to be one. Generally > speaking, we are middle of the road for functionality versus minimal. > > You also can always turn off options you don't want in your BSP, since > the last fragment that is processed will "win". Right, understood. > That would do exactly what you are seeing, it would start processing > the fragment and applying the patches. Which is where you ended up > with the duplicate patches being applied. > > This is the section that you are looking for: https://docs.yoctoproject.org/dev/kernel-dev/advanced.html#recipe-space-metadata > > That's how the tools will locate the BSP and process it accordingly. I'm doing my best to understand this section but it keeps escaping me. I have the following layer setup: --- meta-firefly |-- COPYING.MIT |-- README |-- conf | |-- layer.conf | `-- machine | `-- firefly-itx-3588j.conf `-- recipes-kernel `-- linux |-- linux-yocto-rt | `-- rockchip-kmeta | `-- bsp | `-- rockchip | |-- firefly-preempt-rt.scc `-- linux-yocto-rt_%.bbappend --- and here are the relevant parts of my linux-yocto-rt_%.bbappend file --- FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" COMPATIBLE_MACHINE:firefly-itx-3588j = "firefly-itx-3588j" SRC_URI:append:firefly-itx-3588j = " file://rockchip-kmeta;type=kmeta;name=rockchip-kmeta;destsuffix=rockchip-kmeta" KBRANCH:firefly-itx-3588j ?= "v6.6/standard/preempt-rt/base" KMACHINE:firefly-itx-3588j = "firefly-itx-3588j" SRCREV_machine:firefly-itx-3588j = "19813826de57a6425518c7b3daf8dd6a04d2321f" LINUX_VERSION:firefly-itx-3588j = "6.6.23" --- and firefly-preempt-rt.scc --- define KMACHINE firefly-itx-3588j define KTYPE preempt-rt define KARCH arm64 --- and here is firefly-itx-rk3588j.conf --- #@TYPE: Machine #@NAME: Firefly ITX-3588J #@DESCRIPTION: rk3588 development board from firefly #https://wiki.t-firefly.com/en/Core-3588J/started.html require conf/machine/include/rk3588.inc PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt" # (dts files provided by patches that I elided from this listing) KERNEL_DEVICETREE = "rockchip/rk3588-ff2.dtb" MACHINE_EXTRA_RRECOMMENDS += "kernel-modules" UBOOT_MACHINE = "evb-rk3588_defconfig" KERNEL_FEATURES += " bsp/rockchip/firefly-preempt-rt.scc" --- Am I doing this correctly? It seems wrong to have to specify the bsp definition in the KERNEL_FEATURES variable but I have no luck any other way. Also, what is the recommended way to get just the default yocto-kernel-cache configuration for preempt-rt without any of the patches that go with it? > There could of course be bugs, but I have tested this in the past 6 months.
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#13834): https://lists.yoctoproject.org/g/linux-yocto/message/13834 Mute This Topic: https://lists.yoctoproject.org/mt/105548012/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-