Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
From 2c78d22a78584f2a17eb33b5b5fd6fa602c2af8d Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Wed, 17 Jul 2024 16:19:20 -0500
|
||||
Subject: [PATCH] drivers: gpu: drm: msm: registers: improve reproducibility
|
||||
|
||||
The files generated by gen_header.py capture the source path to the
|
||||
input files and the date. While that can be informative, it varies
|
||||
based on where and when the kernel was built as the full path is
|
||||
captured.
|
||||
|
||||
Since all of the files that this tool is run on is under the drivers
|
||||
directory, this modifies the application to strip all of the path before
|
||||
drivers. Additionally it prints <stripped> instead of the date.
|
||||
|
||||
Both changes solve the reproducibility issue.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
drivers/gpu/drm/msm/registers/gen_header.py | 8 +++++---
|
||||
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/msm/registers/gen_header.py b/drivers/gpu/drm/msm/registers/gen_header.py
|
||||
index 3926485bb197..a409404627c7 100644
|
||||
--- a/drivers/gpu/drm/msm/registers/gen_header.py
|
||||
+++ b/drivers/gpu/drm/msm/registers/gen_header.py
|
||||
@@ -11,6 +11,7 @@ import collections
|
||||
import argparse
|
||||
import time
|
||||
import datetime
|
||||
+import re
|
||||
|
||||
class Error(Exception):
|
||||
def __init__(self, message):
|
||||
@@ -877,13 +878,14 @@ The rules-ng-ng source files this header was generated from are:
|
||||
""")
|
||||
maxlen = 0
|
||||
for filepath in p.xml_files:
|
||||
- maxlen = max(maxlen, len(filepath))
|
||||
+ new_filepath = re.sub("^.+drivers","drivers",filepath)
|
||||
+ maxlen = max(maxlen, len(new_filepath))
|
||||
for filepath in p.xml_files:
|
||||
- pad = " " * (maxlen - len(filepath))
|
||||
+ pad = " " * (maxlen - len(new_filepath))
|
||||
filesize = str(os.path.getsize(filepath))
|
||||
filesize = " " * (7 - len(filesize)) + filesize
|
||||
filetime = time.ctime(os.path.getmtime(filepath))
|
||||
- print("- " + filepath + pad + " (" + filesize + " bytes, from " + filetime + ")")
|
||||
+ print("- " + new_filepath + pad + " (" + filesize + " bytes, from <stripped>)")
|
||||
if p.copyright_year:
|
||||
current_year = str(datetime.date.today().year)
|
||||
print()
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,31 @@
|
||||
From a51ebf08cec81d84ac258da1c0ead139d6ddc94f Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Tue, 2 Jul 2024 11:07:14 -0500
|
||||
Subject: [master][PATCH] perf python: Fix compile for 32bit platforms
|
||||
|
||||
The definition for perf_sample is missing on 32bit compiles:
|
||||
|
||||
tools/perf/util/python.c:75:28: error: field 'sample' has incomplete type
|
||||
75 | struct perf_sample sample;
|
||||
|
||||
Adding #include "sample.h" fixes it.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
tools/perf/util/python.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c
|
||||
index 3be882b2e845..de64ca3cf2d1 100644
|
||||
--- a/tools/perf/util/python.c
|
||||
+++ b/tools/perf/util/python.c
|
||||
@@ -1,3 +1,5 @@
|
||||
+#include "sample.h"
|
||||
+
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <Python.h>
|
||||
#include <structmember.h>
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,60 @@
|
||||
From 4907fa9ff1dbdd72ce9fa7855091fb604a35a62d Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Wed, 17 Jul 2024 14:55:10 -0500
|
||||
Subject: [PATCH] vt/conmakehash: improve reproducibility for v6.10
|
||||
|
||||
The file generated by conmakehash capture the application
|
||||
path used to generate the file. While that can be informative,
|
||||
it varies based on where the kernel was built, as the full
|
||||
path is captured.
|
||||
|
||||
We tweak the application to use a second input as the "capture
|
||||
name", and then modify the Makefile to pass the basename of
|
||||
the source, making it reproducible.
|
||||
|
||||
This could be improved by using some sort of path mapping,
|
||||
or the application manipualing argv[1] itself, but for now
|
||||
this solves the reprodicibility issue.
|
||||
|
||||
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
|
||||
|
||||
This is a minior rework of Bruce's original patch for the v6.10 kernel.
|
||||
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
drivers/tty/vt/Makefile | 2 +-
|
||||
drivers/tty/vt/conmakehash.c | 2 ++
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/tty/vt/Makefile b/drivers/tty/vt/Makefile
|
||||
index 2c8ce8b592ed..8532077ed3bb 100644
|
||||
--- a/drivers/tty/vt/Makefile
|
||||
+++ b/drivers/tty/vt/Makefile
|
||||
@@ -15,7 +15,7 @@ clean-files := consolemap_deftbl.c defkeymap.c
|
||||
hostprogs += conmakehash
|
||||
|
||||
quiet_cmd_conmk = CONMK $@
|
||||
- cmd_conmk = $(obj)/conmakehash $< > $@
|
||||
+ cmd_conmk = $(obj)/conmakehash $< $(shell basename $<) > $@
|
||||
|
||||
$(obj)/consolemap_deftbl.c: $(src)/$(FONTMAPFILE) $(obj)/conmakehash
|
||||
$(call cmd,conmk)
|
||||
diff --git a/drivers/tty/vt/conmakehash.c b/drivers/tty/vt/conmakehash.c
|
||||
index dc2177fec715..9cd4096a8ffa 100644
|
||||
--- a/drivers/tty/vt/conmakehash.c
|
||||
+++ b/drivers/tty/vt/conmakehash.c
|
||||
@@ -112,6 +112,8 @@ int main(int argc, char *argv[])
|
||||
else
|
||||
rel_tblname = tblname;
|
||||
|
||||
+ rel_tblname = argv[2];
|
||||
+
|
||||
/* For now we assume the default font is always 256 characters. */
|
||||
fontlen = 256;
|
||||
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,56 @@
|
||||
From 0f586f4ee8adacac79b64d1f3d47799a5eb7fbea Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Ashfield <bruce.ashfield@gmail.com>
|
||||
Date: Sun, 10 Jul 2022 21:37:07 -0400
|
||||
Subject: [PATCH] vt/conmakehash: improve reproducibility
|
||||
|
||||
The file generated by conmakehash capture the application
|
||||
path used to generate the file. While that can be informative,
|
||||
it varies based on where the kernel was built, as the full
|
||||
path is captured.
|
||||
|
||||
We tweak the application to use a second input as the "capture
|
||||
name", and then modify the Makefile to pass the basename of
|
||||
the source, making it reproducible.
|
||||
|
||||
This could be improved by using some sort of path mapping,
|
||||
or the application manipualing argv[1] itself, but for now
|
||||
this solves the reprodicibility issue.
|
||||
|
||||
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
|
||||
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
|
||||
---
|
||||
drivers/tty/vt/Makefile | 2 +-
|
||||
drivers/tty/vt/conmakehash.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/tty/vt/Makefile b/drivers/tty/vt/Makefile
|
||||
index fe30ce512819..cb51c21b58f9 100644
|
||||
--- a/drivers/tty/vt/Makefile
|
||||
+++ b/drivers/tty/vt/Makefile
|
||||
@@ -15,7 +15,7 @@ clean-files := consolemap_deftbl.c defkeymap.c
|
||||
hostprogs += conmakehash
|
||||
|
||||
quiet_cmd_conmk = CONMK $@
|
||||
- cmd_conmk = $(obj)/conmakehash $< > $@
|
||||
+ cmd_conmk = $(obj)/conmakehash $< $(shell basename $<) > $@
|
||||
|
||||
$(obj)/consolemap_deftbl.c: $(src)/$(FONTMAPFILE) $(obj)/conmakehash
|
||||
$(call cmd,conmk)
|
||||
diff --git a/drivers/tty/vt/conmakehash.c b/drivers/tty/vt/conmakehash.c
|
||||
index cddd789fe46e..d62510b280e9 100644
|
||||
--- a/drivers/tty/vt/conmakehash.c
|
||||
+++ b/drivers/tty/vt/conmakehash.c
|
||||
@@ -253,7 +253,7 @@ int main(int argc, char *argv[])
|
||||
#include <linux/types.h>\n\
|
||||
\n\
|
||||
u8 dfont_unicount[%d] = \n\
|
||||
-{\n\t", argv[1], fontlen);
|
||||
+{\n\t", argv[2], fontlen);
|
||||
|
||||
for ( i = 0 ; i < fontlen ; i++ )
|
||||
{
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,33 @@
|
||||
SECTION = "kernel"
|
||||
SUMMARY = "Mainline Linux kernel for TI devices"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
|
||||
|
||||
inherit kernel
|
||||
|
||||
require recipes-kernel/linux/ti-kernel.inc
|
||||
|
||||
DEPENDS += "gmp-native libmpc-native"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT} ${EXTRA_DTC_ARGS}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
# 6.12 Mainline version
|
||||
SRCREV = "adc218676eef25575469234709c2d87185ca223a"
|
||||
PV = "6.12"
|
||||
|
||||
KERNEL_GIT_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git"
|
||||
BRANCH = "master"
|
||||
|
||||
KERNEL_DEFCONFIG = ""
|
||||
|
||||
KERNEL_REPRODUCIBILITY_PATCHES = " \
|
||||
file://0001-drivers-gpu-drm-msm-registers-improve-reproducibilit.patch \
|
||||
file://0001-perf-python-Fix-compile-for-32bit-platforms.patch \
|
||||
"
|
||||
|
||||
DEFCONFIG_NAME = "multi_v7_defconfig"
|
||||
DEFCONFIG_NAME:omapl138 = "davinci_all_defconfig"
|
||||
DEFCONFIG_NAME:k3 = "defconfig"
|
||||
KERNEL_CONFIG_COMMAND = "oe_runmake -C ${S} O=${B} ${DEFCONFIG_NAME}"
|
||||
@@ -0,0 +1,13 @@
|
||||
require linux-ti-mainline_git.bb
|
||||
|
||||
SUMMARY = "Linux-next kernel for TI devices"
|
||||
|
||||
include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''}
|
||||
|
||||
# 6.6.0-rc3+ version
|
||||
SRCREV = "6465e260f48790807eef06b583b38ca9789b6072"
|
||||
PV = "6.6.0-rc3+git"
|
||||
|
||||
KERNEL_GIT_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git"
|
||||
|
||||
KERNEL_REPRODUCIBILITY_PATCHES = ""
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config
|
||||
@@ -0,0 +1 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config
|
||||
@@ -0,0 +1 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config
|
||||
@@ -0,0 +1 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
config-fragment=kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
config-fragment=
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=defconfig
|
||||
config-fragment=kernel/configs/ti_arm64_prune.config kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=davinci_all_defconfig
|
||||
config-fragment=kernel/configs/ti_rt.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,2 @@
|
||||
use-kernel-config=multi_v7_defconfig
|
||||
config-fragment=kernel/configs/ti_multi_v7_prune.config kernel/configs/ti_rt.config kernel/configs/no_smp.config
|
||||
@@ -0,0 +1,15 @@
|
||||
require linux-ti-staging_6.1.bb
|
||||
|
||||
KERNEL_LOCALVERSION:append = "-rt"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
# This will have priority over generic non-rt path
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.1:"
|
||||
|
||||
BRANCH = "ti-rt-linux-6.1.y"
|
||||
|
||||
SRCREV = "194ebd939bee3ffff36de9cf8dff28a77c671f5b"
|
||||
|
||||
include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
|
||||
PV = "6.1.112+git"
|
||||
@@ -0,0 +1,9 @@
|
||||
require linux-ti-staging_6.12.bb
|
||||
|
||||
KERNEL_LOCALVERSION:append = "-rt"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
# This will have priority over generic non-rt path
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.12:"
|
||||
|
||||
include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
@@ -0,0 +1,15 @@
|
||||
require linux-ti-staging_6.6.bb
|
||||
|
||||
KERNEL_LOCALVERSION:append = "-rt"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
# This will have priority over generic non-rt path
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.6:"
|
||||
|
||||
BRANCH = "ti-rt-linux-6.6.y"
|
||||
|
||||
SRCREV = "c79d7ef3a56ff61dd83d5527520b419a4f0e32e2"
|
||||
|
||||
include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
|
||||
PV = "6.6.58+git"
|
||||
@@ -0,0 +1,33 @@
|
||||
SECTION = "kernel"
|
||||
SUMMARY = "Linux kernel for TI devices"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
|
||||
|
||||
inherit ti-secdev
|
||||
inherit kernel
|
||||
|
||||
require recipes-kernel/linux/setup-defconfig.inc
|
||||
require recipes-kernel/linux/ti-kernel.inc
|
||||
include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''}
|
||||
include ${@ 'recipes-kernel/linux/ti-extras.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
|
||||
DEPENDS += "gmp-native libmpc-native"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.1:"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT} \
|
||||
${EXTRA_DTC_ARGS}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
BRANCH ?= "ti-linux-6.1.y"
|
||||
|
||||
SRCREV ?= "4ef41ca7ad952c7b13b7e40808ab1025796f9a6c"
|
||||
PV = "6.1.112+git"
|
||||
|
||||
# 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"
|
||||
@@ -0,0 +1,33 @@
|
||||
SECTION = "kernel"
|
||||
SUMMARY = "Linux kernel for TI devices"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
|
||||
|
||||
inherit ti-secdev
|
||||
inherit kernel
|
||||
|
||||
require recipes-kernel/linux/setup-defconfig.inc
|
||||
require recipes-kernel/linux/ti-kernel.inc
|
||||
include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''}
|
||||
include ${@ 'recipes-kernel/linux/ti-extras.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
|
||||
DEPENDS += "gmp-native libmpc-native"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.12:"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT} \
|
||||
${EXTRA_DTC_ARGS}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
BRANCH ?= "ti-linux-6.12.y"
|
||||
|
||||
SRCREV ?= "f9cad1448e0dc8631d4974627a838d349bd06eba"
|
||||
PV = "6.12.22+git"
|
||||
|
||||
# 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"
|
||||
@@ -0,0 +1,37 @@
|
||||
SECTION = "kernel"
|
||||
SUMMARY = "Linux kernel for TI devices"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
|
||||
|
||||
inherit ti-secdev
|
||||
inherit kernel
|
||||
|
||||
require recipes-kernel/linux/setup-defconfig.inc
|
||||
require recipes-kernel/linux/ti-kernel.inc
|
||||
include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''}
|
||||
include ${@ 'recipes-kernel/linux/ti-extras.inc' if d.getVar('TI_EXTRAS') else ''}
|
||||
|
||||
DEPENDS += "gmp-native libmpc-native"
|
||||
|
||||
# Look in the generic major.minor directory for files
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.6:"
|
||||
|
||||
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT} \
|
||||
${EXTRA_DTC_ARGS}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
BRANCH ?= "ti-linux-6.6.y"
|
||||
|
||||
SRCREV ?= "a7758da17c2807e5285d6546b6797aae1d34a7d6"
|
||||
PV = "6.6.58+git"
|
||||
|
||||
KERNEL_REPRODUCIBILITY_PATCHES = " \
|
||||
file://0001-vt-conmakehash-improve-reproducibility.patch \
|
||||
"
|
||||
|
||||
# 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"
|
||||
@@ -0,0 +1,84 @@
|
||||
KERNEL_LOCALVERSION = "-ti"
|
||||
|
||||
# Check the defconfig file and see if it points to an in kernel
|
||||
# defconfig that should be used, or if it is a complete config file
|
||||
# Or if it points to a combined defconfig that lists both in kernel
|
||||
# defconfig and associated config fragments.
|
||||
|
||||
do_configure() {
|
||||
# Always copy the defconfig file to .config to keep consistency
|
||||
# between the case where there is a real config and the in kernel
|
||||
# tree config
|
||||
cp ${WORKDIR}/defconfig ${B}/.config
|
||||
|
||||
scm_version=$(printf '%s%s' -g $(git -C ${S} rev-parse --verify HEAD 2>/dev/null | cut -c1-12))
|
||||
|
||||
echo ${scm_version} > ${B}/.scmversion
|
||||
echo ${scm_version} > ${S}/.scmversion
|
||||
|
||||
# Zero, when using "tisdk" configs, pass control to defconfig_builder
|
||||
config=`cat ${B}/.config | grep use-tisdk-config | cut -d= -f2`
|
||||
if [ -n "$config" ]
|
||||
then
|
||||
${DEFCONFIG_BUILDER} -w ${S} -t $config
|
||||
oe_runmake -C ${S} O=${B} "$config"_defconfig
|
||||
else
|
||||
# First, check if pointing to a combined config with config fragments
|
||||
config=`cat ${B}/.config | grep use-combined-config | cut -d= -f2`
|
||||
if [ -n "$config" ]
|
||||
then
|
||||
cp ${S}/$config ${B}/.config
|
||||
fi
|
||||
|
||||
# Second, extract any config fragments listed in the defconfig
|
||||
config=`cat ${B}/.config | grep config-fragment | cut -d= -f2`
|
||||
if [ -n "$config" ]
|
||||
then
|
||||
configfrags=""
|
||||
for f in $config
|
||||
do
|
||||
# Check if the config fragment is available
|
||||
if [ ! -e "${S}/$f" ]
|
||||
then
|
||||
echo "Could not find kernel config fragment $f"
|
||||
exit 1
|
||||
else
|
||||
# Sanitize config fragment files to be relative to sources
|
||||
configfrags="$configfrags ${S}/$f"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Third, check if pointing to a known in kernel defconfig
|
||||
config=`cat ${B}/.config | grep use-kernel-config | cut -d= -f2`
|
||||
if [ -n "$config" ]
|
||||
then
|
||||
oe_runmake -C ${S} O=${B} $config
|
||||
else
|
||||
yes '' | oe_runmake -C ${S} O=${B} oldconfig
|
||||
fi
|
||||
fi
|
||||
|
||||
# Fourth, handle config fragments specified in the recipe
|
||||
# The assumption is that the config fragment will be specified with the absolute path.
|
||||
# E.g. ${WORKDIR}/config1.cfg or ${S}/config2.cfg
|
||||
if [ -n "${KERNEL_CONFIG_FRAGMENTS}" ]
|
||||
then
|
||||
for f in ${KERNEL_CONFIG_FRAGMENTS}
|
||||
do
|
||||
# Check if the config fragment is available
|
||||
if [ ! -e "$f" ]
|
||||
then
|
||||
echo "Could not find kernel config fragment $f"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Now that all the fragments are located merge them
|
||||
if [ -n "${KERNEL_CONFIG_FRAGMENTS}" -o -n "$configfrags" ]
|
||||
then
|
||||
( cd ${WORKDIR} && ${S}/scripts/kconfig/merge_config.sh -m -r -O ${B} ${B}/.config $configfrags ${KERNEL_CONFIG_FRAGMENTS} 1>&2 )
|
||||
yes '' | oe_runmake -C ${S} O=${B} oldconfig
|
||||
fi
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
|
||||
# Use different commit, repo and branch for TI extras build
|
||||
# This will have priority over generic rt path
|
||||
|
||||
COMPATIBLE_MACHINE = "am62xx|am62pxx|am62lxx"
|
||||
|
||||
BRANCH = "ti-linux-6.12.y"
|
||||
BRANCH:tie-jailhouse = "ti-linux-6.12.y-jailhouse"
|
||||
|
||||
SRCREV = "c9e21a1ebd757f2b4487035382bbf65299cf8170"
|
||||
SRCREV:tie-jailhouse = "229a48602ad1557612a4ffabec6a3cbcdd745f87"
|
||||
@@ -0,0 +1,14 @@
|
||||
|
||||
# Use different commit, repo and branch for TI extras build
|
||||
# This will have priority over generic rt path
|
||||
|
||||
COMPATIBLE_MACHINE = "am62xx|am62pxx|am62lxx"
|
||||
|
||||
BRANCH = "ti-linux-6.12.y"
|
||||
BRANCH:tie-jailhouse = "ti-linux-6.12.y-jailhouse"
|
||||
|
||||
SRCREV = "c9e21a1ebd757f2b4487035382bbf65299cf8170"
|
||||
SRCREV:tie-jailhouse = "229a48602ad1557612a4ffabec6a3cbcdd745f87"
|
||||
|
||||
KERNEL_GIT_URI = "git://git.ti.com/git/processor-sdk/linux.git"
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
|
||||
def get_dtbs_from_kernel(dts_dir, dts_prefix):
|
||||
import os
|
||||
import glob
|
||||
matches = []
|
||||
|
||||
for prefix in dts_prefix.split():
|
||||
filenames = glob.glob(dts_dir + prefix + '*.dts')
|
||||
filenames += glob.glob(dts_dir + prefix + '*.dtso')
|
||||
for filename in filenames:
|
||||
# Before v6.2 kernels DTB Overlays shared the same name as DTB files
|
||||
# so we need to search the file to find the type
|
||||
with open(filename) as f:
|
||||
file_postfix = '.dtbo' if '/plugin/;' in f.read() else '.dtb'
|
||||
filename = os.path.split(filename)[1]
|
||||
filename = os.path.splitext(filename)[0] + file_postfix
|
||||
filename = os.path.join(os.path.split(prefix)[0], filename)
|
||||
matches.append(filename)
|
||||
return ' '.join(matches)
|
||||
|
||||
def get_merge_dtbs_from_kernel(dts_dir, dts_pattern):
|
||||
import os
|
||||
matches = []
|
||||
if dts_dir == "":
|
||||
return ' '
|
||||
for pattern in dts_pattern.split():
|
||||
pattern_dir = os.path.split(pattern)[0]
|
||||
pattern_target = os.path.split(pattern)[1].replace(".","-") + "s"
|
||||
makefile = dts_dir + "/" + pattern_dir + "/Makefile"
|
||||
if os.path.exists(makefile):
|
||||
with open(makefile) as f:
|
||||
if pattern_target in f.read():
|
||||
matches.append(pattern)
|
||||
return ' '.join(matches)
|
||||
|
||||
KERNEL_DEVICETREE_DTBMERGE ?= ""
|
||||
|
||||
KERNEL_DEVICETREE = " \
|
||||
${@get_dtbs_from_kernel('${S}/arch/${ARCH}/boot/dts/', '${KERNEL_DEVICETREE_PREFIX}')} \
|
||||
${@get_merge_dtbs_from_kernel('${S}/arch/${ARCH}/boot/dts/', '${KERNEL_DEVICETREE_DTBMERGE}')} \
|
||||
"
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
# Add DTC FLAGS -@ when KERNEL_DTB_OVERLAY_SUPPORT is enabled
|
||||
|
||||
def get_extra_dtc_args(d):
|
||||
if d.getVar('KERNEL_DTB_OVERLAY_SUPPORT') == "1":
|
||||
return "DTC_FLAGS=-@"
|
||||
else:
|
||||
return ""
|
||||
|
||||
EXTRA_DTC_ARGS += "${@get_extra_dtc_args(d)}"
|
||||
|
||||
# Tell the kernel class to install the DTBs in the same directory structure as
|
||||
# the kernel.
|
||||
KERNEL_DTBDEST = "${KERNEL_IMAGEDEST}/dtb"
|
||||
KERNEL_DTBVENDORED = "1"
|
||||
|
||||
KERNEL_GIT_URI ?= "git://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
|
||||
KERNEL_GIT_PROTOCOL ?= "https"
|
||||
KERNEL_GIT_BRANCH ?= "branch=${BRANCH}"
|
||||
|
||||
KERNEL_DEFCONFIG ?= "file://defconfig"
|
||||
|
||||
KERNEL_REPRODUCIBILITY_PATCHES ?= ""
|
||||
|
||||
SRC_URI = " \
|
||||
${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};${KERNEL_GIT_BRANCH} \
|
||||
${KERNEL_DEFCONFIG} \
|
||||
${KERNEL_REPRODUCIBILITY_PATCHES} \
|
||||
"
|
||||
Reference in New Issue
Block a user