mirror of
https://github.com/lingble/meta-tegra.git
synced 2025-10-29 19:42:41 +00:00
recipes-kernel: update kernel recipe to linux-jammy-nvidia-tegra 5.15
Signed-off-by: Matt Madison <matt@madison.systems>
This commit is contained in:
@@ -27,7 +27,7 @@ TNSPEC_MACHINE ??= "${MACHINE}"
|
||||
TNSPEC_BOOTDEV_DEFAULT ??= "mmcblk0p1"
|
||||
TNSPEC_BOOTDEV ??= "${TNSPEC_BOOTDEV_DEFAULT}"
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-tegra"
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-jammy-nvidia-tegra"
|
||||
PREFERRED_PROVIDER_virtual/bootloader ?= "edk2-firmware-tegra"
|
||||
OPTEE_MM_PROVIDER = "${@'tegra-uefi-prebuilt' if d.getVar('PREFERRED_PROVIDER_virtual/bootloader') == 'tegra-uefi-prebuilt' else 'standalone-mm-optee-tegra'}"
|
||||
PREFERRED_PROVIDER_standalone-mm-optee-tegra ?= "${OPTEE_MM_PROVIDER}"
|
||||
|
||||
@@ -11,32 +11,29 @@ require recipes-kernel/linux/linux-yocto.inc
|
||||
|
||||
KERNEL_DISABLE_FW_USER_HELPER ?= "y"
|
||||
|
||||
DEPENDS:remove = "kern-tools-native"
|
||||
DEPENDS:append = " kern-tools-tegra-native"
|
||||
# All of our device trees are out-of-tree
|
||||
KERNEL_DEVICETREE:forcevariable = ""
|
||||
|
||||
LINUX_VERSION ?= "5.10.192"
|
||||
PV = "${LINUX_VERSION}+git"
|
||||
LINUX_VERSION ?= "5.15.136"
|
||||
PV = "${LINUX_VERSION}+git${SRCPV}"
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}-${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1]}:"
|
||||
|
||||
LINUX_VERSION_EXTENSION ?= "-l4t-${@'.'.join(d.getVar('L4T_VERSION').split('.'))}"
|
||||
LINUX_VERSION_EXTENSION ?= "-l4t-r${@'.'.join(d.getVar('L4T_VERSION').split('.')[0:2])}-1009.9"
|
||||
SCMVERSION ??= "y"
|
||||
|
||||
SRCBRANCH = "oe4t-patches${LINUX_VERSION_EXTENSION}"
|
||||
SRCREV = "db857ecdbe10de229a3cf125831afd6226417eac"
|
||||
SRCREV = "46cdb595bebc15e918ade351a93b820f4d987220"
|
||||
KBRANCH = "${SRCBRANCH}"
|
||||
SRC_REPO = "github.com/OE4T/linux-tegra-5.10.git;protocol=https"
|
||||
SRC_REPO = "github.com/OE4T/linux-jammy-nvidia-tegra.git;protocol=https"
|
||||
KERNEL_REPO = "${SRC_REPO}"
|
||||
SRC_URI = "git://${KERNEL_REPO};name=machine;branch=${KBRANCH} \
|
||||
${@'file://localversion_auto.cfg' if d.getVar('SCMVERSION') == 'y' else ''} \
|
||||
${@'file://disable-fw-user-helper.cfg' if d.getVar('KERNEL_DISABLE_FW_USER_HELPER') == 'y' else ''} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'file://systemd.cfg', '', d)} \
|
||||
file://spiflash.cfg \
|
||||
file://disable-module-signing.cfg \
|
||||
"
|
||||
|
||||
PATH:prepend = "${STAGING_BINDIR_NATIVE}/kern-tools-tegra:"
|
||||
|
||||
KBUILD_DEFCONFIG = "tegra_defconfig"
|
||||
KBUILD_DEFCONFIG = "defconfig"
|
||||
KCONFIG_MODE = "--alldefconfig"
|
||||
|
||||
set_scmversion() {
|
||||
@@ -47,62 +44,7 @@ set_scmversion() {
|
||||
}
|
||||
do_kernel_checkout[postfuncs] += "set_scmversion"
|
||||
|
||||
python do_kernel_configcheck:prepend() {
|
||||
os.environ['KERNEL_OVERLAYS'] = d.expand("${S}/nvidia ${S}/nvidia/nvgpu")
|
||||
}
|
||||
|
||||
KERNEL_DEVICETREE_APPLY_OVERLAYS ??= ""
|
||||
|
||||
overlay_compatible() {
|
||||
for oc in $1; do
|
||||
if echo "$2 " | grep -q "${oc} "; then
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
do_compile_devicetree_overlays() {
|
||||
if [ -n "${KERNEL_DTC_FLAGS}" ]; then
|
||||
export DTC_FLAGS="${KERNEL_DTC_FLAGS}"
|
||||
fi
|
||||
oe_runmake dtb-overlays CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
|
||||
}
|
||||
do_compile_devicetree_overlays[dirs] = "${B}"
|
||||
do_compile_devicetree_overlays[depends] += "dtc-native:do_populate_sysroot"
|
||||
|
||||
addtask compile_devicetree_overlays after do_compile before do_install
|
||||
|
||||
do_apply_devicetree_overlays() {
|
||||
|
||||
[ -n "${KERNEL_DEVICETREE_APPLY_OVERLAYS}" ] || return 0
|
||||
|
||||
for dtbf in ${KERNEL_DEVICETREE}; do
|
||||
dtb=$(get_real_dtb_path_in_kernel $(normalize_dtb "$dtbf"))
|
||||
compat=$(fdtget "$dtb" / compatible)
|
||||
overlayfiles=
|
||||
for dtbof in ${KERNEL_DEVICETREE_APPLY_OVERLAYS}; do
|
||||
dtbo=$(get_real_dtb_path_in_kernel $(normalize_dtb "$dtbof"))
|
||||
overlaycompat=$(fdtget "$dtbo" / compatible)
|
||||
if overlay_compatible "$overlaycompat" "$compat"; then
|
||||
overlayfiles="$overlayfiles $dtbo"
|
||||
fi
|
||||
done
|
||||
if [ -n "$overlayfiles" ]; then
|
||||
fdtoverlay --input "$dtb" --output "${dtb}.tmp" $overlayfiles
|
||||
rm "$dtb"
|
||||
mv "${dtb}.tmp" "$dtb"
|
||||
else
|
||||
bbnote "Skipping overlays for $dtb: none compatible"
|
||||
fi
|
||||
done
|
||||
}
|
||||
do_apply_devicetree_overlays[dirs] = "${B}"
|
||||
do_apply_devicetree_overlays[depends] += "dtc-native:do_populate_sysroot"
|
||||
|
||||
addtask apply_devicetree_overlays after do_compile_devicetree_overlays before do_install
|
||||
|
||||
sign_kernel_image_and_dtb_files() {
|
||||
sign_kernel_image() {
|
||||
tegra_uefi_sbsign "$1"
|
||||
shift
|
||||
while [ $# -gt 0 ]; do
|
||||
@@ -111,50 +53,13 @@ sign_kernel_image_and_dtb_files() {
|
||||
done
|
||||
}
|
||||
|
||||
do_sign_kernel_and_dtbs() {
|
||||
local dtb dtbf alldtbs
|
||||
alldtbs=""
|
||||
for dtbf in ${KERNEL_DEVICETREE}; do
|
||||
dtb=$(get_real_dtb_path_in_kernel $(normalize_dtb "$dtbf"))
|
||||
alldtbs="$alldtbs $dtb"
|
||||
done
|
||||
sign_kernel_image_and_dtb_files ${KERNEL_OUTPUT_DIR}/${KERNEL_IMAGETYPE} $alldtbs
|
||||
do_sign_kernel() {
|
||||
sign_kernel_image ${KERNEL_OUTPUT_DIR}/${KERNEL_IMAGETYPE}
|
||||
}
|
||||
do_sign_kernel_and_dtbs[dirs] = "${B}"
|
||||
do_sign_kernel_and_dtbs[depends] += "${TEGRA_UEFI_SIGNING_TASKDEPS}"
|
||||
do_sign_kernel[dirs] = "${B}"
|
||||
do_sign_kernel[depends] += "${TEGRA_UEFI_SIGNING_TASKDEPS}"
|
||||
|
||||
addtask sign_kernel_and_dtbs after do_compile before do_install
|
||||
|
||||
do_install:append() {
|
||||
for dtbo in $(find ${KERNEL_OUTPUT_DIR}/dts/*.dtbo); do
|
||||
dtbo_base_name=$(basename $dtbo)
|
||||
install -m 0644 $dtbo ${D}/${KERNEL_IMAGEDEST}/$dtbo_base_name
|
||||
done
|
||||
}
|
||||
|
||||
OVERLAYS_TO_DEPLOY = '${TEGRA_PLUGIN_MANAGER_OVERLAYS} ${@" ".join((d.getVar("OVERLAY_DTB_FILE") or "").split(","))}'
|
||||
do_deploy:append() {
|
||||
for dtbo in ${OVERLAYS_TO_DEPLOY}; do
|
||||
if [ -e ${KERNEL_OUTPUT_DIR}/dts/$dtbo ]; then
|
||||
install -m 0644 ${KERNEL_OUTPUT_DIR}/dts/$dtbo $deployDir
|
||||
fi
|
||||
done
|
||||
for dtbf in ${KERNEL_DEVICETREE}; do
|
||||
dtb=$(normalize_dtb "$dtbf")
|
||||
dtb_ext=${dtb##*.}
|
||||
dtb_path=$(get_real_dtb_path_in_kernel "$dtb")
|
||||
dtb_base_name=$(basename $dtb .$dtb_ext)
|
||||
if [ -e $dtb_path.signed ] ; then
|
||||
install -m 0644 $dtb_path.signed $deployDir/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.signed
|
||||
if [ "${KERNEL_IMAGETYPE_SYMLINK}" = "1" ] ; then
|
||||
ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.signed $deployDir/$dtb_base_name.$dtb_ext.signed
|
||||
fi
|
||||
if [ -n "${KERNEL_DTB_LINK_NAME}" ] ; then
|
||||
ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.signed $deployDir/$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext.signed
|
||||
fi
|
||||
fi
|
||||
done
|
||||
}
|
||||
addtask sign_kernel after do_compile before do_install
|
||||
|
||||
sign_bootimg() {
|
||||
tegra_uefi_attach_sign "$1"
|
||||
@@ -1,6 +0,0 @@
|
||||
CONFIG_QSPI_TEGRA210=y
|
||||
CONFIG_QSPI_TEGRA23x=y
|
||||
CONFIG_MTD=y
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_MTD_QSPI_FLASH=y
|
||||
CONFIG_MTD_BLOCK=y
|
||||
Reference in New Issue
Block a user