diff --git a/flavours/linux/bblayers.conf.sample b/flavours/linux/bblayers.conf.sample index 306288623cb7558701e32634ad13364999f17ae9..f9a90606a2e0cde7b0ef61983e596dbe0d43a6fe 100644 --- a/flavours/linux/bblayers.conf.sample +++ b/flavours/linux/bblayers.conf.sample @@ -16,6 +16,7 @@ BBLAYERS ?= " \ ##OEROOT##/../meta-zephyr \ ##OEROOT##/../meta-zephyr-bsp \ ##OEROOT##/../oniro/meta-oniro-core \ + ##OEROOT##/../meta-arm-mixin/meta-arm \ ##OEROOT##/../meta-freertos \ ##OEROOT##/../meta-intel \ ##OEROOT##/../meta-seco-intel \ diff --git a/manifests/default.xml b/manifests/default.xml index 92f9c6df0437f13ae03fd2a5b4f96079eda87c92..33af03cbbe85918b6cab358fecb9e4ab5c449c11 100644 --- a/manifests/default.xml +++ b/manifests/default.xml @@ -74,6 +74,7 @@ SPDX-FileCopyrightText: Huawei Inc. <project name="oniro" revision="dunfell" path="oniro"> <linkfile src="README.md" dest="README.md"/> </project> + <project name="meta-arm-dunfell-backports" revision="dunfell" path="meta-arm-mixin" /> <project name="meta-clang" revision="main" path="meta-clang" /> <project name="meta-riscv" revision="OSTC/dunfell" path="meta-riscv" /> <project name="meta-zephyr" revision="ostc/master" path="meta-zephyr" /> diff --git a/meta-oniro-core/classes/oniro-image.bbclass b/meta-oniro-core/classes/oniro-image.bbclass index a68fd3a6fac72dd4b657a45144e350f769d0d9c4..127846d2aaffbb26ddc6bf522302554cd54d708d 100644 --- a/meta-oniro-core/classes/oniro-image.bbclass +++ b/meta-oniro-core/classes/oniro-image.bbclass @@ -81,6 +81,9 @@ WKS_FILE_qemux86 ?= "x-qemux86-directdisk.wks.in" IMAGE_FSTYPES_qemux86-64 ?= "wic wic.bz2" WKS_FILE_qemux86-64 ?= "x-qemux86-directdisk.wks.in" +WKS_FILE_qemu-generic-arm64 = "x-qemu-efi-disk.wks.in" +IMAGE_FSTYPES_qemu-generic-arm64 += "wic wic.qcow2" + WKS_FILE_seco-imx8mm-c61 ?= "x-imx-uboot-bootpart.wks.in" # diff --git a/meta-oniro-core/conf/distro/oniro-linux.conf b/meta-oniro-core/conf/distro/oniro-linux.conf index 5b7382ac96cc84c7a7705e8f60ac2dfe8f706249..326adf5e612fdab9e3d7d872735ce7733077b5a1 100644 --- a/meta-oniro-core/conf/distro/oniro-linux.conf +++ b/meta-oniro-core/conf/distro/oniro-linux.conf @@ -108,12 +108,21 @@ IMAGE_FEATURES_remove = " nfs-server nfs-client nfs-utils" DISTRO_EXTRA_RDEPENDS_remove = " packagegroup-core-device-devel" PREFERRED_VERSION_linux-raspberrypi = "5.10.%" + PREFERRED_VERSION_linux-yocto = "5.10%" PREFERRED_PROVIDER_virtual/kernel_qemuarm = "linux-oniro" PREFERRED_PROVIDER_virtual/kernel_qemuarm64 = "linux-oniro" PREFERRED_PROVIDER_virtual/kernel_qemux86 = "linux-oniro" PREFERRED_PROVIDER_virtual/kernel_qemux86-64 = "linux-oniro" +# qemu-generic-arm64 has issues booting past 5.10. See: +# https://git.yoctoproject.org/meta-arm/tree/meta-arm/conf/machine/generic-arm64.conf?id=c40fb5348b1d0f8c4a1ed779c8df6ba3cf411930 +# When kernel version is bumped we will have to revisit here. +PREFERRED_PROVIDER_virtual/kernel_qemu-generic-arm64 = "linux-oniro" + +# qemu-generic-arm64 specific requirements +PREFERRED_VERSION_optee-os_qemu-generic-arm64 = "3.14.0" + # Default to enabling serial debug console on RaspberryPi ENABLE_UART ?= "1" diff --git a/meta-oniro-core/recipes-kernel/linux/linux-oniro_5.10.bb b/meta-oniro-core/recipes-kernel/linux/linux-oniro_5.10.bb index cf4e9492ea4df99fcfbbe5e64a36f2f492603f5d..fcf4b7fd60f964fa8e7fdd56440a5fc8eed1344e 100644 --- a/meta-oniro-core/recipes-kernel/linux/linux-oniro_5.10.bb +++ b/meta-oniro-core/recipes-kernel/linux/linux-oniro_5.10.bb @@ -30,7 +30,7 @@ PROVIDES="linux-oniro virtual/kernel" KCONF_BSP_AUDIT_LEVEL = "1" -COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemux86-64|qemuriscv64|qemuriscv32" +COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemux86-64|qemuriscv64|qemuriscv32|qemu-generic-arm64" # Functionality flags KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" diff --git a/meta-oniro-core/wic/x-qemu-efi-disk.wks.in b/meta-oniro-core/wic/x-qemu-efi-disk.wks.in new file mode 100644 index 0000000000000000000000000000000000000000..24409d661f8e2b2d149902bbbbba6ad7fe78c30f --- /dev/null +++ b/meta-oniro-core/wic/x-qemu-efi-disk.wks.in @@ -0,0 +1,11 @@ +# short-description: Create an EFI disk image +# long-description: Creates a partitioned EFI disk image that the user +# can directly dd to boot media. + +bootloader --ptable gpt --timeout=5 --append="rootwait rootfstype=squashfs" +part /boot --source bootimg-efi --sourceparams="loader=${EFI_PROVIDER}" --label boot --active --align 1024 --use-uuid +${WIC_ROOTA_PARTITION} +${WIC_ROOTB_PARTITION} +${WIC_DEVDATA_PARTITION} +${WIC_SYSDATA_PARTITION} +${WIC_APPDATA_PARTITION}