armsr: add Hyper-V on Arm64 support
authorMathew McBride <matt@traverse.com.au>
Fri, 17 Jan 2025 05:58:05 +0000 (16:58 +1100)
committerHauke Mehrtens <hauke@hauke-m.de>
Fri, 24 Jan 2025 21:19:34 +0000 (22:19 +0100)
commit075571b0232c0140d9ebcc6c3a250e69a2324aea
tree3aeea743f365c04be5a8d9dd4769e0f39290ef15
parent6a7fa68569ac11bb2c2abb14026e8b84acd3a12f
armsr: add Hyper-V on Arm64 support

This adds support for running as a guest on Windows Hyper-V
on arm64 Windows machines (like the Qualcomm Snapdragon X based
machines). The drivers are the same as Hyper-V on x86-64.

Limitations:
- The VM must be configured with a single vCPU only[1].

It appears Microsoft has made changes to Arm64 Hyper-V's timers
and other infrastructure in Windows 11 24H2 which require
kernel changes[2][3] to fix.

- You must turn off secure boot enforcement to boot OpenWrt, as
OpenWrt/armsr does not have a signed bootloader.

[1] https://www.reddit.com/r/Surface/comments/1dmzpzt/comment/lx4tatp/
[2] https://www.reddit.com/r/Surface/comments/1dmzpzt/comment/m5bqgrm/
[3] https://github.com/microsoft/WSL2-Linux-Kernel

Signed-off-by: Mathew McBride <matt@traverse.com.au>
Link: https://github.com/openwrt/openwrt/pull/17675
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/armsr/armv8/config-6.6