1DESCRIPTION = "Linux Kernel for Raspberry Pi"
2SECTION = "kernel"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
5
6COMPATIBLE_MACHINE = "^rpi$"
7
8PE = "1"
9PV = "${LINUX_VERSION}+git${SRCPV}"
10
11inherit kernel siteinfo
12require recipes-kernel/linux/linux-yocto.inc
13
14SRC_URI += " \
15    ${@bb.utils.contains("INITRAMFS_IMAGE_BUNDLE", "1", "file://initramfs-image-bundle.cfg", "", d)} \
16    ${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "file://vc4graphics.cfg", "", d)} \
17    "
18
19KCONFIG_MODE = "--alldefconfig"
20KBUILD_DEFCONFIG_raspberrypi0-wifi ?= "bcmrpi_defconfig"
21KBUILD_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
22KBUILD_DEFCONFIG_raspberrypi-cm3 ?= "bcm2709_defconfig"
23KBUILD_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
24KBUILD_DEFCONFIG_raspberrypi3 ?= "bcm2709_defconfig"
25KBUILD_DEFCONFIG_raspberrypi3-64 ?= "bcmrpi3_defconfig"
26KBUILD_DEFCONFIG_raspberrypi4 ?= "bcm2711_defconfig"
27KBUILD_DEFCONFIG_raspberrypi4-64 ?= "bcm2711_defconfig"
28
29LINUX_VERSION_EXTENSION ?= ""
30
31KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "stmpe-ts", "", d)}"
32
33# A LOADADDR is needed when building a uImage format kernel. This value is not
34# set by default in rpi-4.8.y and later branches so we need to provide it
35# manually. This value unused if KERNEL_IMAGETYPE is not uImage.
36KERNEL_EXTRA_ARGS += "LOADADDR=0x00008000"
37
38do_compile_append() {
39    if [ "${SITEINFO_BITS}" = "64" ]; then
40        cc_extra=$(get_cc_option)
41        oe_runmake dtbs CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
42    fi
43}
44