Please provide the following info (tick the boxes after creating this topic):
Software Version
DRIVE OS 7.0.3
other
Target Operating System
Linux
QNX
other
Hardware Platform
DRIVE AGX Thor Developer Kit (940-63960-0010-000)
DRIVE AGX Thor Developer Kit (940-63960-0012-000)
other
Host Machine Version
native Ubuntu Linux 24.04 Host installed with DRIVE OS Docker Containers
other
Issue Description
Dear NVidia representative,
I am writing to ask for support with my current task: I need to enable KVM on the Thor board. After enabling KVM and flashing a new Kernel I get the following logs:
[ 1.494547] [TS:11483198849] CPU: All CPU(s) started at EL1
…
[ 1.760083] [TS:11748734062] kvm [1]: HYP mode not available
Please, advise if I can set a CPU of the Thor board to HYP mode and if there is any documentation I can refer to in order to achieve this.
Thanks!
Error String
Logs
Provide logs in text box instead of image.
Please paste the complete application log here. If there are multiple logs, please use multiple text box.
Dear @kateryna.fesyna ,
Log indicates it is in EL1 so “HYP mode not available” is expected. Let me check on feasibility internally.
Could you please share the followed steps to enable KVM on thor.
@SivaRamaKrishnaNV Thanks a lot for clarifying this!
To build and flash a new Kernel, I follow this instruction:
I use the dev_nsr variant. Below is a summary referencing the documentation. Please, let me know if I need to provide more details.
- Steps 1-4 are executed without modifications
- Step 5: added make menuconfig:
export NV_BUILD_KERNEL_CONFIG_NAME=defconfig
make ARCH=arm64 CROSS_COMPILE=${CROSS_COMPILE} O=$TEMP_DIR/kernel/out-linux $NV_BUILD_KERNEL_CONFIG_NAME
# enable KVM here manually:
make ARCH=arm64 CROSS_COMPILE=${CROSS_COMPILE} O=$TEMP_DIR/kernel/out-linux menuconfig
make ARCH=arm64 CROSS_COMPILE=${CROSS_COMPILE} O=$TEMP_DIR/kernel/out-linux -j$n_threads
- Steps 6, 7, 8b and 9 are executed without modifications
- BuildFS config for step 10:
{
“OS”: “linux”,
“Output”: “driveos-updated-rfs”,
“Base”: “/drive/drive-linux/filesystem/targetfs-images/dev_nsr_desktop_ubuntu-24.04_thor_rfs.img”,
“FilesystemType”: “standard”,
“CopyTargets”: [
“/drive/drive-linux/filesystem/copytarget/manifest/copytarget-kernel-modules-6.1.thor.yaml”
],
“PostInstalls”: {
“/etc/nvidia/run-once/nv-run-once-run-ldconfig”: “target”,
“/etc/nvidia/run-once/nv-run-once-run-depmod”: “target”
}
}
- Steps 11, 12 are executed without modifications
- Step 13: Changed slightly.
initramfs is rebuilt here, but I changed the destination file to avoid rewriting the original one. find . | cpio --quiet -H newc -o > /tmp/nvidia-6.1/kernel/new_initram_fs.img
- Step 14: Updated path accordingly
./make/bind_partitions -b p3960-10-sw01 drive_av.linux -p dev_nsr LINUX_RFS_IMG_PATH=/tmp/nvidia-6.1/kernel/new_initram_fs.img
- Steps 15 and 16: Flashing the image
sudo /drive/drive-foundation/tools/flashtools/bootburn/bootburn.py -b p3960-10-sw01 -B qspi -x /dev/ttyACM2
Hi @SivaRamaKrishnaNV
Any progress there ? I am assuming kernel KVM enablement wont fix anything cause NVIDIA Drive OS hypervisor will still block any hardware passthrough for QEMU, ?
Would be good if we can get response for original question, and if its not possible then clarification if it will help to enable the KVM, or even enabling KVM wont do much cause your Hypervisor is blocking everything ?
Dear @ext.mateusz.pedzik ,
We don’t explicitly support/tested KVM. May I know what are you trying to accomplish, I will check internally if there is any other way.
we need to run qemu with KVM.
1. Does DriveOS Hypervisor support it , and if not , are You planning to do so ?
- Will DriveOS Hypervisor support other systems ? Android or other Linux Distributions ?