blob: 4f9bcfdf579ae00b4a1fb9f434f7acfd40990ed5 [file] [log] [blame]
Brad Bishopbec4ebc2022-08-03 09:55:16 -04001# Kernel configuration and dts specific information
2
3#
4# Kernel configurations and dts (If not using Linux provided ones) are captured
5# in this file. Update SRC_URI and do_patch for building images with custom dts
6#
7
8# We can't set FILESEXTRAPATHS once because of how the kernel classes search for
9# config fragments. Discussion is ongoing as to whether this is the correct
10# solution, or a workaround.
11# https://bugzilla.yoctoproject.org/show_bug.cgi?id=14154
12ARMBSPFILESPATHS := "${THISDIR}:${THISDIR}/files:"
13
14# Arm platforms kmeta
15SRC_URI_KMETA = "file://arm-platforms-kmeta;type=kmeta;name=arm-platforms-kmeta;destsuffix=arm-platforms-kmeta"
16SRC_URI:append:fvp-base = " ${SRC_URI_KMETA}"
17SRC_URI:append:fvp-base-arm32 = " ${SRC_URI_KMETA}"
18SRC_URI:append:fvp-baser-aemv8r64 = " ${SRC_URI_KMETA}"
19SRC_URI:append:juno = " ${SRC_URI_KMETA}"
20SRC_URI:append:n1sdp = " ${SRC_URI_KMETA}"
21SRC_URI:append:tc = " ${SRC_URI_KMETA}"
22SRCREV:arm-platforms-kmeta = "6147e82375aa9df8f2a162d42ea6406c79c854c5"
23
24#
25# Corstone-500 KMACHINE
26#
27COMPATIBLE_MACHINE:corstone500 = "corstone500"
28KBUILD_DEFCONFIG:corstone500 = "multi_v7_defconfig"
29KCONFIG_MODE:corstone500 = "--alldefconfig"
Patrick Williams2194f502022-10-16 14:26:09 -050030FILESEXTRAPATHS:prepend:corstone500 := "${ARMBSPFILESPATHS}"
31SRC_URI:append:corstone500 = " \
32 file://0001-arm-defconfig-drop-CONFIG_SND_SOC_AC97-from-multi_v7.patch \
33 "
Brad Bishopbec4ebc2022-08-03 09:55:16 -040034
35#
36# Corstone1000 KMACHINE
37#
38FILESEXTRAPATHS:prepend:corstone1000 := "${ARMBSPFILESPATHS}"
39COMPATIBLE_MACHINE:corstone1000 = "${MACHINE}"
40KCONFIG_MODE:corstone1000 = "--alldefconfig"
41KMACHINE:corstone1000 = "corstone1000"
42LINUX_KERNEL_TYPE:corstone1000 = "standard"
43#disabling the rootfs cpio file compression so it is not compressed twice when bundled with the kernel
44KERNEL_EXTRA_ARGS:corstone1000 += "CONFIG_INITRAMFS_COMPRESSION_NONE=y"
45SRC_URI:append:corstone1000 = " \
46 file://defconfig \
Patrick Williams8dd68482022-10-04 07:57:18 -050047 file://0002-Add-external-system-driver.patch \
Patrick Williams2194f502022-10-16 14:26:09 -050048 file://0003-Add-rpmsg-driver-for-corstone1000.patch \
49 file://0004-rpmsg-arm-fix-return-value.patch \
50 file://0005-rpmsg-arm-update-chrdev-to-ctrldev-registration.patch \
51 file://0006-Adds-workaround-for-cs1k-specific-bug.patch \
Brad Bishopbec4ebc2022-08-03 09:55:16 -040052 "
53
54SRC_URI:append:corstone1000 = " ${@bb.utils.contains('MACHINE_FEATURES', \
55 'corstone1000_kernel_debug', \
56 'file://corstone1000_kernel_debug.cfg', \
57 '', \
58 d)}"
59
60# Default kernel features not needed for corstone1000
61# otherwise the extra kernel modules will increase the rootfs size
62# corstone1000 has limited flash memory constraints
63KERNEL_EXTRA_FEATURES:corstone1000 = ""
64KERNEL_FEATURES:corstone1000 = ""
65
66#
67# FVP BASE KMACHINE
68#
69COMPATIBLE_MACHINE:fvp-base = "fvp-base"
70KMACHINE:fvp-base = "fvp"
71FILESEXTRAPATHS:prepend:fvp-base := "${ARMBSPFILESPATHS}"
Patrick Williams7784c422022-11-17 07:29:11 -060072SRC_URI:append:fvp-base = " file://0001-arm64-dts-fvp-Enable-virtio-rng-support.patch"
Brad Bishopbec4ebc2022-08-03 09:55:16 -040073
74#
75# FVP BASE ARM32 KMACHINE
76#
77COMPATIBLE_MACHINE:fvp-base-arm32 = "fvp-base-arm32"
78KMACHINE:fvp-base-arm32 = "fvp-arm32"
79FILESEXTRAPATHS:prepend:fvp-base-arm32 := "${ARMBSPFILESPATHS}"
80SRC_URI:append:fvp-base-arm32 = " file://0001-ARM-vexpress-enable-GICv3.patch"
81# We want to use the DT in the arm64 tree but the kernel build doesn't like that, so symlink it
82do_compile:prepend:fvp-base-arm32() {
83 mkdir --parents ${S}/arch/arm/boot/dts/arm
84 for file in fvp-base-revc.dts rtsm_ve-motherboard.dtsi rtsm_ve-motherboard-rs2.dtsi; do
85 ln -fsr ${S}/arch/arm64/boot/dts/arm/$file ${S}/arch/arm/boot/dts/arm
86 done
87}
88
89#
90# FVP BaseR AEMv8r64 Machine
91#
92COMPATIBLE_MACHINE:fvp-baser-aemv8r64 = "fvp-baser-aemv8r64"
93FILESEXTRAPATHS:prepend:fvp-baser-aemv8r64 := "${ARMBSPFILESPATHS}"
94SRC_URI:append:fvp-baser-aemv8r64 = " file://fvp-baser-aemv8r64.dts;subdir=git/arch/arm64/boot/dts/arm"
95
96#
97# Juno KMACHINE
98#
99COMPATIBLE_MACHINE:juno = "juno"
100KBUILD_DEFCONFIG:juno = "defconfig"
101KCONFIG_MODE:juno = "--alldefconfig"
102FILESEXTRAPATHS:prepend:juno := "${ARMBSPFILESPATHS}"
Andrew Geisslerea144b02023-01-27 16:03:57 -0600103SRC_URI:append:juno = " \
104 file://0001-arm64-dts-juno-Add-thermal-critical-trip-points.patch \
105 file://0002-arm64-dts-Update-cache-properties-for-Arm-Ltd-platfo.patch \
106 file://0003-arm64-dts-fvp-Add-SPE-to-Foundation-FVP.patch \
107 file://0004-arm64-dts-fvp-Add-information-about-L1-and-L2-caches.patch \
108 file://0005-ARM-dts-vexpress-align-LED-node-names-with-dtschema.patch \
109 "
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400110
111#
112# Musca B1/S2 can't run Linux
113#
114COMPATIBLE_MACHINE:musca-b1 = "(^$)"
115COMPATIBLE_MACHINE:musca-s1 = "(^$)"
116
117#
118# N1SDP KMACHINE
119#
Patrick Williams2194f502022-10-16 14:26:09 -0500120FILESEXTRAPATHS:prepend:n1sdp := "${THISDIR}/linux-yocto-5.19/n1sdp:"
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400121COMPATIBLE_MACHINE:n1sdp = "n1sdp"
122KBUILD_DEFCONFIG:n1sdp = "defconfig"
123KCONFIG_MODE:n1sdp = "--alldefconfig"
124FILESEXTRAPATHS:prepend:n1sdp := "${ARMBSPFILESPATHS}"
125SRC_URI:append:n1sdp = " \
126 file://0001-iommu-arm-smmu-v3-workaround-for-ATC_INV_SIZE_ALL-in.patch \
127 file://0002-n1sdp-pci_quirk-add-acs-override-for-PCI-devices.patch \
128 file://0003-pcie-Add-quirk-for-the-Arm-Neoverse-N1SDP-platform.patch \
129 file://0004-n1sdp-pcie-add-quirk-support-enabling-remote-chip-PC.patch \
130 file://0005-arm64-kpti-Whitelist-early-Arm-Neoverse-N1-revisions.patch \
Patrick Williams2194f502022-10-16 14:26:09 -0500131 file://0006-arm64-defconfig-disable-config-options-that-does-not.patch \
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400132 file://enable-realtek-R8169.cfg \
133 file://enable-usb_conn_gpio.cfg \
134 file://usb_xhci_pci_renesas.cfg \
135 "
136# Since we use the intree defconfig and the preempt-rt turns off some configs
137# do_kernel_configcheck will display warnings. So, lets disable it.
138KCONF_AUDIT_LEVEL:n1sdp:pn-linux-yocto-rt = "0"
139
140#
141# SGI575 KMACHINE
142#
143COMPATIBLE_MACHINE:sgi575 = "sgi575"
144KBUILD_DEFCONFIG:sgi575 = "defconfig"
145KCONFIG_MODE:sgi575 = "--alldefconfig"
146
147#
148# Total Compute (TC0/TC1) KMACHINE
149#
150COMPATIBLE_MACHINE:tc = "(tc0|tc1)"
151KCONFIG_MODE:tc = "--alldefconfig"
Patrick Williams2194f502022-10-16 14:26:09 -0500152FILESEXTRAPATHS:prepend:tc := "${ARMBSPFILESPATHS}:${THISDIR}/linux-arm64-ack-5.15/tc:"
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400153SRC_URI:append:tc = " \
154 file://gki_defconfig \
155 file://0001-drm-Add-component-aware-simple-encoder.patch \
Patrick Williams2194f502022-10-16 14:26:09 -0500156 file://0001-drm-komeda-Fix-handling-of-atomic-commits-in-the-ato.patch \
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400157 file://0002-drm-arm-komeda-add-RENDER-capability-to-the-device-n.patch \
Patrick Williams2194f502022-10-16 14:26:09 -0500158 file://0003-firmware-arm_ffa-Fix-uuid-argument-passed-to-ffa_par.patch \
159 file://0004-firmware-arm_ffa-Add-ffa_dev_get_drvdata.patch \
160 file://0005-firmware-arm_ffa-extern-ffa_bus_type.patch \
161 file://0006-firmware-arm_ffa-Fix-FFA_MEM_SHARE-and-FFA_MEM_FRAG_.patch \
162 file://0007-Revert-optee-use-driver-internal-tee_context-for-som.patch \
163 file://0008-tee-add-sec_world_id-to-struct-tee_shm.patch \
164 file://0009-optee-simplify-optee_release.patch \
165 file://0010-optee-refactor-driver-with-internal-callbacks.patch \
166 file://0011-optee-isolate-smc-abi.patch \
167 file://0012-optee-add-FF-A-support.patch \
168 file://0013-optee-smc_abi.c-add-missing-include-linux-mm.h.patch \
169 file://0014-optee-Fix-spelling-mistake-reclain-reclaim.patch \
170 file://0015-optee-fix-kfree-NULL-pointer.patch \
171 file://0016-perf-arm-cmn-Account-for-NUMA-affinity.patch \
172 file://0017-perf-arm-cmn-Drop-compile-test-restriction.patch \
173 file://0018-perf-arm-cmn-Refactor-node-ID-handling.patch \
174 file://0019-perf-arm-cmn-Streamline-node-iteration.patch \
175 file://0020-perf-arm-cmn-Refactor-DTM-handling.patch \
176 file://0021-perf-arm-cmn-Optimise-DTM-counter-reads.patch \
177 file://0022-perf-arm-cmn-Optimise-DTC-counter-accesses.patch \
178 file://0023-perf-arm-cmn-Move-group-validation-data-off-stack.patch \
179 file://0024-perf-arm-cmn-Demarcate-CMN-600-specifics.patch \
180 file://0025-perf-arm-cmn-Support-new-IP-features.patch \
181 file://0026-perf-arm-cmn-Add-CI-700-Support.patch \
182 file://0027-ANDROID-trusty-Backport-of-trusty-driver.patch \
183 file://0028-ANDROID-trusty-Remove-FFA-specific-initilization.patch \
184 file://0029-ANDROID-trusty-Rename-transfer-memory-function-to-le.patch \
185 file://0030-ANDROID-trusty-Separate-out-SMC-based-transport.patch \
186 file://0031-ANDROID-trusty-Modify-device-compatible-string.patch \
187 file://0032-ANDROID-trusty-Add-transport-descriptor.patch \
188 file://0033-ANDROID-trusty-Add-trusty-ffa-driver.patch \
189 file://0034-ANDROID-trusty-ffa-Add-support-for-FFA-memory-operat.patch \
190 file://0035-ANDROID-trusty-ffa-Enable-FFA-transport-for-both-mem.patch \
191 file://0036-ANDROID-trusty-Make-trusty-transports-configurable.patch \
192 file://0037-ANDROID-trusty-log-include-panic_notifier.h.patch \
193 file://0038-ANDROID-trusty-ipc-fix-VIRTIO_ID_TRUSTY_IPC-ID.patch \
194 file://0039-gki_config-add-tc-disable_mpam.patch \
195 file://0040-ANDROID-KVM-arm64-disable-FFA-driver-at-EL2.patch \
Patrick Williams92b42cb2022-09-03 06:53:57 -0500196 file://init_disassemble_info-signature-changes-causes-compile-failures.patch \
Patrick Williams2194f502022-10-16 14:26:09 -0500197 file://0041-etherdevice-Adjust-ether_addr-prototypes-to-silence-.patch \
198 file://0042-mm-page_alloc-fix-building-error-on-Werror-array-com.patch \
Brad Bishopbec4ebc2022-08-03 09:55:16 -0400199 "
200KERNEL_FEATURES:append:tc = " bsp/arm-platforms/tc.scc"
201KERNEL_FEATURES:append:tc1 = " bsp/arm-platforms/tc-autofdo.scc"