mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-01-11 15:00:39 +00:00
Enable the Corstone‑1000 Cortex‑A320 variant by: - Introduce `machine/include/corstone1000-a320.inc` to configure the default Ethos‑U MAC count when `cortexa320` is in MACHINE_FEATURES, and allow override via `ETHOSU_NUM_MACS`. - Add a KAS profile at `kas/corstone1000-a320.yml` for Cortex‑A320 FVP-based builds. - Extend corstone1000.inc to detect MACHINE_FEATURES (cortexa320) and pull in the matching tune-<core>.inc (default still Cortex-A35). - Add the `meta-ethos` layer as a dependency of `meta-arm-bsp` for Cortex‑A320 builds and define a new KMachine override to pull in the Ethos‑U driver recipe. - In `conf/machine/corstone1000-fvp.conf`, inspect `MACHINE_FEATURES` and set `FVP_EXE` to `FVP_Corstone-1000_with_Cortex-A320` when `cortexa320` is enabled, otherwise fall back to `FVP_Corstone-1000`. - In `recipes-devtools/fvp/fvp-corstone1000.bb`, add a `SRC_URI:cortexa320` entry (with checksums) for the Cortex‑A320 FVP build archive. - Disable the rootfs CPIO file compression so it is not compressed twice when bundled with the kernel Signed-off-by: Michael Safwat <michael.safwat@arm.com> Signed-off-by: Frazer Carsley <frazer.carsley@arm.com> Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
117 lines
3.7 KiB
C++
117 lines
3.7 KiB
C++
# Kernel configuration and dts specific information
|
|
|
|
#
|
|
# Kernel configurations and dts (If not using Linux provided ones) are captured
|
|
# in this file. Update SRC_URI and do_patch for building images with custom dts
|
|
#
|
|
|
|
# We can't set FILESEXTRAPATHS once because of how the kernel classes search for
|
|
# config fragments. Discussion is ongoing as to whether this is the correct
|
|
# solution, or a workaround.
|
|
# https://bugzilla.yoctoproject.org/show_bug.cgi?id=14154
|
|
ARMBSPFILESPATHS := "${THISDIR}:${THISDIR}/files:"
|
|
|
|
# Arm platforms kmeta
|
|
SRC_URI_KMETA = "file://arm-platforms-kmeta;type=kmeta;name=arm-platforms-kmeta;destsuffix=arm-platforms-kmeta"
|
|
SRC_URI:append:fvp-base = " ${SRC_URI_KMETA}"
|
|
SRC_URI:append:juno = " ${SRC_URI_KMETA}"
|
|
|
|
#
|
|
# Corstone1000 KMACHINE
|
|
#
|
|
FILESEXTRAPATHS:prepend:corstone1000 := "${ARMBSPFILESPATHS}"
|
|
COMPATIBLE_MACHINE:corstone1000 = "${MACHINE}"
|
|
KCONFIG_MODE:corstone1000 = "--alldefconfig"
|
|
KMACHINE:corstone1000 = "corstone1000"
|
|
LINUX_KERNEL_TYPE:corstone1000 = "standard"
|
|
SRC_URI:append:corstone1000 = " \
|
|
file://defconfig \
|
|
"
|
|
|
|
SRC_URI:append:corstone1000 = " ${@bb.utils.contains('MACHINE_FEATURES', \
|
|
'corstone1000_kernel_debug', \
|
|
'file://corstone1000_kernel_debug.cfg', \
|
|
'', \
|
|
d)}"
|
|
SRC_URI:append:corstone1000 = " \
|
|
${@bb.utils.contains( \
|
|
'MACHINE_FEATURES', \
|
|
'corstone1000-extsys', \
|
|
' \
|
|
file://extsys.cfg \
|
|
file://0001-remoteproc-Add-Arm-remoteproc-driver.patch \
|
|
file://0002-arm64-dts-Add-corstone1000-external-system-device-no.patch \
|
|
file://0003-dt-bindings-remoteproc-Add-Arm-remoteproc.patch \
|
|
', \
|
|
'', \
|
|
d \
|
|
) \
|
|
} \
|
|
"
|
|
|
|
# Default kernel features not needed for corstone1000
|
|
# otherwise the extra kernel modules will increase the rootfs size
|
|
# corstone1000 has limited flash memory constraints
|
|
KERNEL_EXTRA_FEATURES:corstone1000 = ""
|
|
KERNEL_FEATURES:corstone1000 = ""
|
|
|
|
#
|
|
# Corstone1000 with CORTEX-A320 KMACHINE
|
|
#
|
|
FILESEXTRAPATHS:prepend:cortexa320 := "${ARMBSPFILESPATHS}"
|
|
COMPATIBLE_MACHINE:corstone1000:cortexa320 = "${MACHINE}"
|
|
KCONFIG_MODE:corstone1000:cortexa320 = "--alldefconfig"
|
|
KMACHINE:corstone1000:cortexa320 = "corstone1000-a320"
|
|
LINUX_KERNEL_TYPE:corstone1000:cortexa320 = "standard"
|
|
SRC_URI:append:corstone1000:cortexa320 = " \
|
|
file://defconfig \
|
|
"
|
|
|
|
# Default kernel features not needed for Corstone-1000 with
|
|
# Cortex-A320; otherwise the extra kernel modules will
|
|
# increase the rootfs size but the board has limited flash
|
|
# memory constraints
|
|
KERNEL_EXTRA_FEATURES:corstone1000:cortexa320 = ""
|
|
KERNEL_FEATURES:corstone1000:cortexa320 = ""
|
|
|
|
|
|
#
|
|
# FVP BASE KMACHINE
|
|
#
|
|
COMPATIBLE_MACHINE:fvp-base = "fvp-base"
|
|
KMACHINE:fvp-base = "fvp"
|
|
FILESEXTRAPATHS:prepend:fvp-base := "${ARMBSPFILESPATHS}:${ARMFILESPATHS}"
|
|
SRC_URI:append:fvp-base = " \
|
|
file://0001-arm64-dts-fvp-Enable-virtio-rng-support.patch \
|
|
file://tee.cfg \
|
|
${@bb.utils.contains('MACHINE_FEATURES', 'ts-smm-gateway', \
|
|
'file://no-strict-devmem.cfg', '' , d)} \
|
|
"
|
|
|
|
|
|
#
|
|
# Juno KMACHINE
|
|
#
|
|
COMPATIBLE_MACHINE:juno = "juno"
|
|
FILESEXTRAPATHS:prepend:juno := "${ARMBSPFILESPATHS}"
|
|
|
|
#
|
|
# Musca B1/S2 can't run Linux
|
|
#
|
|
COMPATIBLE_MACHINE:musca-b1 = "(^$)"
|
|
COMPATIBLE_MACHINE:musca-s1 = "(^$)"
|
|
|
|
#
|
|
# SGI575 KMACHINE
|
|
#
|
|
COMPATIBLE_MACHINE:sgi575 = "sgi575"
|
|
KBUILD_DEFCONFIG:sgi575 = "defconfig"
|
|
KCONFIG_MODE:sgi575 = "--alldefconfig"
|
|
|
|
#
|
|
# sbsa-ref KMACHINE
|
|
#
|
|
COMPATIBLE_MACHINE:sbsa-ref = "sbsa-ref"
|
|
KBUILD_DEFCONFIG:sbsa-ref = "defconfig"
|
|
KCONFIG_MODE:sbsa-ref = "--alldefconfig"
|