From a0d8d5ef8c8cd79aa6d56c9065b2ecfba1bbbbec Mon Sep 17 00:00:00 2001 From: Aelin Date: Sun, 8 Feb 2026 16:41:36 +0100 Subject: [PATCH] linux-postmarketos-qcom-sc7280: Enable virtualization support The Radxa Dragon Q6A can boot Linux in EL2 and make use of KVM. Part-of: --- .../linux-postmarketos-qcom-sc7280/APKBUILD | 5 +-- .../config-postmarketos-qcom-sc7280.aarch64 | 31 +++++++++++++++++-- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/device/testing/linux-postmarketos-qcom-sc7280/APKBUILD b/device/testing/linux-postmarketos-qcom-sc7280/APKBUILD index 854f4cf37..6daa45e82 100644 --- a/device/testing/linux-postmarketos-qcom-sc7280/APKBUILD +++ b/device/testing/linux-postmarketos-qcom-sc7280/APKBUILD @@ -2,7 +2,7 @@ maintainer="Luca Weiss " _flavor="postmarketos-qcom-sc7280" pkgname=linux-$_flavor pkgver=6.19.0 -pkgrel=0 +pkgrel=1 pkgdesc="Mainline Kernel fork for SC7280/SM7325/QCM6490 devices" arch="aarch64" _carch="arm64" @@ -12,6 +12,7 @@ options="!strip !check !tracedeps pmb:cross-native pmb:kconfigcheck-community pmb:kconfigcheck-uefi + pmb:kconfigcheck-virt " makedepends=" bison @@ -73,5 +74,5 @@ package() { sha512sums=" 78f89b713eb93df1e8e24f3d5be31e276c91a7746d3ad9eefebb23805046669bbebc79df2679324d950d82ac2e155561096bf7dd1369088b0e762053bf496b32 linux-v6.19.0-sc7280.tar.gz -456dcce51ad29094a839b23f2695d9a9b97fb3b4fd54b75b0d4f4fab893331fedbc097cca5b59404e95f206daa544290e65565fa1075c4473a95c69f212b3e97 config-postmarketos-qcom-sc7280.aarch64 +0793287a462b5e0ff6587d3abb3167910b1a3436716765b4d7279ccc988d5533c25492f4ba292af8e60232e7965279b75e4d40394daf3a64f2f728c30b53bff1 config-postmarketos-qcom-sc7280.aarch64 " diff --git a/device/testing/linux-postmarketos-qcom-sc7280/config-postmarketos-qcom-sc7280.aarch64 b/device/testing/linux-postmarketos-qcom-sc7280/config-postmarketos-qcom-sc7280.aarch64 index f0f955cd6..68f6a4216 100644 --- a/device/testing/linux-postmarketos-qcom-sc7280/config-postmarketos-qcom-sc7280.aarch64 +++ b/device/testing/linux-postmarketos-qcom-sc7280/config-postmarketos-qcom-sc7280.aarch64 @@ -264,6 +264,7 @@ CONFIG_KALLSYMS_ALL=y CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_ARCH_SUPPORTS_MSEAL_SYSTEM_MAPPINGS=y CONFIG_HAVE_PERF_EVENTS=y +CONFIG_GUEST_PERF_EVENTS=y # # Kernel Performance Events And Counters @@ -393,6 +394,7 @@ CONFIG_ARM64_ERRATUM_827319=y CONFIG_ARM64_ERRATUM_824069=y CONFIG_ARM64_ERRATUM_819472=y CONFIG_ARM64_ERRATUM_832075=y +# CONFIG_ARM64_ERRATUM_834220 is not set CONFIG_ARM64_ERRATUM_1742098=y CONFIG_ARM64_ERRATUM_845719=y CONFIG_ARM64_ERRATUM_843419=y @@ -663,7 +665,28 @@ CONFIG_ARM_QCOM_CPUFREQ_HW=y CONFIG_ARCH_SUPPORTS_ACPI=y # CONFIG_ACPI is not set -# CONFIG_VIRTUALIZATION is not set +CONFIG_KVM_COMMON=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_DIRTY_RING=y +CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y +CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y +CONFIG_KVM_MMIO=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_READONLY_MEM=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y +CONFIG_VIRT_XFER_TO_GUEST_WORK=y +CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y +CONFIG_KVM_GENERIC_MMU_NOTIFIER=y +CONFIG_KVM_GUEST_MEMFD=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +# CONFIG_NVHE_EL2_DEBUG is not set +# CONFIG_PTDUMP_STAGE2_DEBUGFS is not set CONFIG_HAVE_LIVEPATCH=y # CONFIG_LIVEPATCH is not set CONFIG_CPU_MITIGATIONS=y @@ -877,6 +900,7 @@ CONFIG_MQ_IOSCHED_KYBER=y # CONFIG_IOSCHED_BFQ is not set # end of IO Schedulers +CONFIG_PREEMPT_NOTIFIERS=y CONFIG_PADATA=y CONFIG_ASN1=y CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y @@ -1016,6 +1040,7 @@ CONFIG_ARCH_ENABLE_THP_MIGRATION=y CONFIG_CONTIG_ALLOC=y CONFIG_PCP_BATCH_SCALE_MAX=5 CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_MMU_NOTIFIER=y CONFIG_KSM=y CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y @@ -3106,7 +3131,7 @@ CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_HW_RANDOM=y # CONFIG_HW_RANDOM_TIMERIOMEM is not set # CONFIG_HW_RANDOM_BA431 is not set -# CONFIG_HW_RANDOM_VIRTIO is not set +CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM_OPTEE=y # CONFIG_HW_RANDOM_CCTRNG is not set # CONFIG_HW_RANDOM_XIPHERA is not set @@ -6507,6 +6532,7 @@ CONFIG_DMABUF_HEAPS_CMA=y # CONFIG_UIO is not set # CONFIG_VFIO is not set +CONFIG_IRQ_BYPASS_MANAGER=y # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_ANCHOR=y CONFIG_VIRTIO=y @@ -8659,6 +8685,7 @@ CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y # # Scheduler Debugging # +CONFIG_SCHED_INFO=y # CONFIG_SCHEDSTATS is not set # end of Scheduler Debugging