Skip to content

[Backport wrynose] Switch to KVM hypervisor on Rb3Gen2-Core-Kit and QCM6490-IDP - #3189

Merged
Ricardo Salveti (ricardosalveti) merged 8 commits into
wrynosefrom
backport/2879-to-wrynose
Sep 19, 2026
Merged

Ricardo Salveti (ricardosalveti) merged 8 commits into
wrynosefrom
backport/2879-to-wrynose

Conversation

@vkraleti

Copy link
Copy Markdown
Contributor

Description

Backport of #2879 to wrynose.

The el2gh suffix selects the Gunyah hypervisor variant of a board's
compatible string, the same way el2kvm selects the KVM variant. Like
camx and staging, it is a feature/hypervisor selector rather than board
metadata, so it has no corresponding node in qcom-metadata.dtb.

test_fitimage_compatible_metadata_validation validates every
dash-separated suffix of the generated ITS compatible strings against
the metadata node names, and so already fails today on the pre-existing
el2gh entries in fit-dtb-compatible-linux-qcom.inc. Add el2gh to the
skip set to match the metadata-check script's blacklist, and to
COMPAT_EXTENSIONS so the unit-level fixtures stay in sync.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 81a6516)
KVM is the preffered hypervisor for Qualcomm Linux SoCs. Gunyah was
used as an interim solution till KVM is fully functional. Now that
KVM support on Rb3Gen2 Core Kit has been validated, it no longer
requires Gunyah as an interim solution.

Add 'kvm' to MACHINE_FEATURES so that the KVM-specific XBL configuration
is selected during boot. This switches the default hypervisor to KVM and
aligns Rb3Gen2 Core Kit with IQ-615-EVK, IQ-8275-EVK, and IQ-9075-EVK.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 6b291ff)
KVM is the preffered hypervisor for Qualcomm Linux SoCs. Gunyah was
used as an interim solution till KVM is fully functional. Now that
KVM support on QCM6490-IDP has been validated, it no longer requires
Gunyah as an interim solution.

Add 'kvm' to MACHINE_FEATURES so that the KVM-specific XBL configuration
is selected during boot. This switches the default hypervisor to KVM and
aligns QCM6490-IDP with IQ-615-EVK, IQ-8275-EVK, and IQ-9075-EVK.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 8a3ce07)
Kodiak FIT_DTB_COMPATIBLE entries currently use el2kvm-suffixed compatible
strings to load el2.dtbo for KVM. Entries without any el2 suffix
implicitly meant Gunyah.

As KVM is the default hypervisor now, rename the kodiak entries to match:
drop the -el2kvm suffix from the entries that select kodiak-el2.dtbo, and
append -el2gh to the sibling entries that don't, so the unsuffixed
compatible string is KVM by default.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit d45717e)
The kodiak entries were renamed so the unsuffixed compatible string is
KVM by default and an -el2gh suffix marks the Gunyah variant, but no
-el2gh entry existed for the plain (no -staging, no -camx) combos, so
those boards had no way to select the Gunyah DTB without kodiak-el2.

Add the missing -el2gh entries for qcm6490-idp, qcs5430-iot,
qcs6490-iot, and their subtype2/subtype9 variants.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 8bced9a)
The kodiak "-staging" FIT_DTB_COMPATIBLE entries carried no hypervisor
overlay, unlike their non-staging counterparts, which were switched to
default to the kvm hypervisor in a previous commit. Append "kodiak-el2"
to the "-staging" entries' values so they default to kvm as well,
consistent with the rest of the kodiak entries.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 1a71920)
The rb3gen2-core-kit-open-fw machine inherit base rb3gen2-core-kit
machine configuration which now has 'kvm' by default. The KAS
fragment it was using to inject 'kvm' is therefore redundant, so
switch the CI entry from qcom-distro-kvm to qcom-distro.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 36f577e)
KVM is now enabled by default on Rb3Gen2-Core-Kit, making the
dedicated KVM build is redundent.

Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
(cherry picked from commit 8eb083a)
@github-actions

Copy link
Copy Markdown

Test run workflow

Test jobs for commit 796d87f

qcom-distro
Pass: 8 | Fail: 0 | Total: 8
qcom-distro_linux-qcom-next
Pass: 319 | Fail: 6 | Total: 357
nodistro
Pass: 10 | Fail: 0 | Total: 10

@test-reporting-app

test-reporting-app Bot commented Sep 18, 2026 •

Copy link
Copy Markdown

Test Results

  119 files    715 suites   7h 32m 3s ⏱️
  171 tests   171 ✅  0 💤 0 ❌
4 605 runs  4 553 ✅ 52 💤 0 ❌

Results for commit 796d87f.

♻️ This comment has been updated with latest results.

@github-actions

Copy link
Copy Markdown

Test run workflow

Test jobs for commit 796d87f

qcom-distro
Pass: 222 | Fail: 17 | Total: 259
qcom-distro_linux-qcom-next
Pass: 324 | Fail: 1 | Total: 357
nodistro
Pass: 10 | Fail: 0 | Total: 10

@github-actions

Copy link
Copy Markdown

Test run workflow

Test jobs for commit 796d87f

qcom-distro
Pass: 239 | Fail: 0 | Total: 259
qcom-distro_linux-qcom-next
Pass: 325 | Fail: 0 | Total: 357
nodistro
Pass: 10 | Fail: 0 | Total: 10

@ricardosalveti
Ricardo Salveti (ricardosalveti) merged commit d055051 into wrynose Sep 19, 2026
242 of 243 checks passed
@ricardosalveti
Ricardo Salveti (ricardosalveti) deleted the backport/2879-to-wrynose branch September 19, 2026 00:32
@qcomlnxci

Copy link
Copy Markdown

Test Coral run workflow

Test jobs for commit 796d87f

  • qcomdistro 6.18: multimedia image
    Pass: 4 | Fail: 0 | Total: 4
  • qcomdistro 6.18: multimedia image-prop
    Pass: 31 | Fail: 0 | Total: 31

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants