diff --git a/meta-arm-autonomy/README.md b/meta-arm-autonomy/README.md index e5ad6ed9..ed9d6c93 100644 --- a/meta-arm-autonomy/README.md +++ b/meta-arm-autonomy/README.md @@ -42,6 +42,11 @@ BSPs ---- This layer is adding the following machines: +* arm64-autonomy-guest: this machines creates a minimal BSP suitable to be used + as an autonomy guest. It is in fact only activating ARM64 architecture and + SMP in the linux kernel and is enabling the DISTRO_FEATURE + arm-autonomy-guest. + Images ------ This layer is adding the following images: diff --git a/meta-arm-autonomy/conf/machine/arm64-autonomy-guest.conf b/meta-arm-autonomy/conf/machine/arm64-autonomy-guest.conf new file mode 100644 index 00000000..cb72c601 --- /dev/null +++ b/meta-arm-autonomy/conf/machine/arm64-autonomy-guest.conf @@ -0,0 +1,17 @@ +#@TYPE: Machine +#@NAME: Autonomy Guest ARM64 machine +#@DESCRIPTION: Machine configuration for ARM64 Autonomy Guest + +TUNE_FEATURES = "aarch64" + +require conf/machine/include/arm/arch-armv8a.inc + +KERNEL_IMAGETYPE = "Image" + +IMAGE_FSTYPES += "tar.bz2" + +PREFERRED_PROVIDER_virtual/kernel = "linux-yocto" +PREFERRED_VERSION_linux-yocto ?= "4.19%" + +DISTRO_FEATURES += "arm-autonomy-guest" + diff --git a/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest-standard.scc b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest-standard.scc new file mode 100644 index 00000000..7c75d99f --- /dev/null +++ b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest-standard.scc @@ -0,0 +1,5 @@ +define KMACHINE arm64-autonomy-guest +define KTYPE standard +define KARCH arm64 + +include arm64-autonomy-guest.scc diff --git a/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.cfg b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.cfg new file mode 100644 index 00000000..fcdad985 --- /dev/null +++ b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.cfg @@ -0,0 +1,2 @@ +CONFIG_ARM64=y +CONFIG_SMP=y diff --git a/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.scc b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.scc new file mode 100644 index 00000000..e887b4e5 --- /dev/null +++ b/meta-arm-autonomy/recipes-kernel/linux/arm-autonomy-kmeta/bsp/arm-autonomy/arm64-autonomy-guest.scc @@ -0,0 +1,6 @@ +include ktypes/standard/standard.scc +include features/input/input.scc +include features/net/net.scc +include cfg/timer/no_hz.scc + +kconf hardware arm64-autonomy-guest.cfg diff --git a/meta-arm-autonomy/recipes-kernel/linux/linux-arm-autonomy.inc b/meta-arm-autonomy/recipes-kernel/linux/linux-arm-autonomy.inc index b2245a5a..8191079a 100644 --- a/meta-arm-autonomy/recipes-kernel/linux/linux-arm-autonomy.inc +++ b/meta-arm-autonomy/recipes-kernel/linux/linux-arm-autonomy.inc @@ -14,3 +14,8 @@ KERNEL_FEATURES += "${@bb.utils.contains('DISTRO_FEATURES', \ # Add xen guest drivers to kernel if arm-autonomy-guest is activated KERNEL_FEATURES += "${@bb.utils.contains('DISTRO_FEATURES', \ 'arm-autonomy-guest', 'features/arm-autonomy/xen-guest.scc', '', d)}" + +# Add support for arm64-autonomy-guest machine +COMPATIBLE_MACHINE_arm64-autonomy-guest = "arm64-autonomy-guest" +KMACHINE_arm64-autonomy-guest = "arm64-autonomy-guest" +