summaryrefslogtreecommitdiff
path: root/recipes-kernel/linux/linux-toradex-ti_6.1.bb
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-toradex-ti_6.1.bb')
-rw-r--r--recipes-kernel/linux/linux-toradex-ti_6.1.bb58
1 files changed, 58 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-toradex-ti_6.1.bb b/recipes-kernel/linux/linux-toradex-ti_6.1.bb
new file mode 100644
index 0000000..e5b9988
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-ti_6.1.bb
@@ -0,0 +1,58 @@
+SUMMARY = "Linux kernel for Toradex TI based modules"
+
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+SRC_URI = " \
+ git://git.toradex.com/linux-toradex.git;protocol=https;branch=${SRCBRANCH};name=machine \
+"
+S = "${WORKDIR}/git"
+
+# Load USB functions configurable through configfs (CONFIG_USB_CONFIGFS)
+KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('COMBINED_FEATURES', 'usbgadget', ' libcomposite', '',d)}"
+
+inherit kernel-yocto kernel toradex-kernel-localversion ti-secdev
+LINUX_VERSION = "6.1.33"
+# skip, as with use-head-next LINUX_VERSION might be set wrongly
+KERNEL_VERSION_SANITY_SKIP = "1"
+
+# Make sure to override LOCALVERSION in linux-imx.inc
+LOCALVERSION = "-${TDX_VERSION}"
+
+SCMVERSION ?= "y"
+SRCBRANCH = "toradex_ti-linux-6.1.y"
+SRCREV_machine = "2ba3f93efc3c8d4366eae1c37ee2fd2c253b5fed"
+SRCREV_machine:use-head-next = "${AUTOREV}"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+DEPENDS += "bc-native"
+COMPATIBLE_MACHINE = "am62xx"
+
+export DTC_FLAGS = "-@"
+
+# Special configuration for remoteproc/rpmsg IPC modules
+module_conf_rpmsg_client_sample = "blacklist rpmsg_client_sample"
+module_conf_ti_k3_r5_remoteproc = "softdep ti_k3_r5_remoteproc pre: virtio_rpmsg_bus"
+module_conf_ti_k3_dsp_remoteproc = "softdep ti_k3_dsp_remoteproc pre: virtio_rpmsg_bus"
+KERNEL_MODULE_PROBECONF += "rpmsg_client_sample ti_k3_r5_remoteproc ti_k3_dsp_remoteproc"
+
+# Tell to kernel class that we would like to use our defconfig to configure the kernel.
+# Otherwise, the --allnoconfig would be used per default which leads to mis-configured
+# kernel.
+#
+# This behavior happens when a defconfig is provided, the kernel-yocto configuration
+# uses the filename as a trigger to use a 'allnoconfig' baseline before merging
+# the defconfig into the build.
+#
+# If the defconfig file was created with make_savedefconfig, not all options are
+# specified, and should be restored with their defaults, not set to 'n'.
+# To properly expand a defconfig like this, we need to specify: KCONFIG_MODE="--alldefconfig"
+# in the kernel recipe include.
+KCONFIG_MODE="--alldefconfig"
+
+KBUILD_DEFCONFIG ?= "toradex_defconfig"
+
+# We need to pass it as param since kernel might support more then one
+# machine, with different entry points
+KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"