1DESCRIPTION = "Linux Kernel for Raspberry Pi"
2SECTION = "kernel"
3LICENSE = "GPL-2.0-only"
4LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
5
6COMPATIBLE_MACHINE ?= "^rpi$"
7
8PE = "1"
9PV = "${LINUX_VERSION}+git${SRCPV}"
10
11inherit 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    ${@bb.utils.contains("MACHINE_FEATURES", "wm8960", "file://wm8960.cfg", "", d)} \
18    file://default-cpu-governor.cfg \
19    "
20
21SRC_URI:append:raspberrypi4 = " \
22    file://rpi4-nvmem.cfg \
23"
24
25KCONFIG_MODE = "--alldefconfig"
26KBUILD_DEFCONFIG:raspberrypi0-wifi ?= "bcmrpi_defconfig"
27KBUILD_DEFCONFIG:raspberrypi ?= "bcmrpi_defconfig"
28KBUILD_DEFCONFIG:raspberrypi-cm3 ?= "bcm2709_defconfig"
29KBUILD_DEFCONFIG:raspberrypi2 ?= "bcm2709_defconfig"
30KBUILD_DEFCONFIG:raspberrypi3 ?= "bcm2709_defconfig"
31KBUILD_DEFCONFIG:raspberrypi3-64 ?= "bcmrpi3_defconfig"
32KBUILD_DEFCONFIG:raspberrypi4 ?= "bcm2711_defconfig"
33KBUILD_DEFCONFIG:raspberrypi4-64 ?= "bcm2711_defconfig"
34KBUILD_DEFCONFIG:raspberrypi-armv7 ?= "bcm2711_defconfig"
35KBUILD_DEFCONFIG:raspberrypi-armv8 ?= "bcm2711_defconfig"
36KBUILD_DEFCONFIG:raspberrypi5 ?= "bcm2712_defconfig"
37
38LINUX_VERSION_EXTENSION ?= ""
39
40KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "stmpe-ts", "", d)}"
41
42# A LOADADDR is needed when building a uImage format kernel. This value is not
43# set by default in rpi-4.8.y and later branches so we need to provide it
44# manually. This value unused if KERNEL_IMAGETYPE is not uImage.
45KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
46
47UBOOT_ENTRYPOINT =       "0x00008000"
48UBOOT_LOADADDRESS =      "0x00008000"
49