Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for ARMv8 to use AAVMF EFI firmware #880

Merged
merged 4 commits into from
Jun 27, 2024
Merged

Conversation

dustins
Copy link
Contributor

@dustins dustins commented May 17, 2024

I discovered I wasn't able to run VMs on my RK3588 (ARM64). Although ARM64 supports UEFI it wasn't able to find appropriate *.fd files because it is assumed every architecture was using OVMF. On ARM64 it should be using AAVMF as far as I can tell.

This PR adds support for using AAVMF on ARMv8 architectures and updates the documentation to reflect the code changes.

I've tested creating VMs with these changes on my ARM64 and x86_64 machines but don't have many devices to test against.

@github-actions github-actions bot added the Documentation Documentation needs updating label May 17, 2024
@dustins dustins marked this pull request as ready for review May 17, 2024 21:03
@dustins dustins requested a review from stgraber as a code owner May 17, 2024 21:03
@dustins dustins changed the title cmd/incusd: Add support for ARMv8 to use AAVMF EFI firmware Add support for ARMv8 to use AAVMF EFI firmware May 17, 2024
doc/environment.md Outdated Show resolved Hide resolved
doc/installing.md Outdated Show resolved Hide resolved
@stgraber
Copy link
Member

@dustins have you had any luck with this one?

@dustins
Copy link
Contributor Author

dustins commented May 30, 2024

Yes, I actually am almost done just wanted to test on x86 and ARM64 before pushing. Sorry for the long delay! I think I can test tonight and then push up the changes for you to review.

@stgraber
Copy link
Member

Sounds good.

We're releasing 6.2 today so that will most likely miss that release by a hair but it will be in 6.3 for sure.

@dustins
Copy link
Contributor Author

dustins commented Jun 1, 2024

I still have to test this on arm64/x86_64 to check that this all still works.

@dustins
Copy link
Contributor Author

dustins commented Jun 2, 2024

Ok I tested this on my x86_64/arm64 boxes and I was able to launch VMs with and without secure boot.

"github.com/lxc/incus/v6/client"
incus "github.com/lxc/incus/v6/client"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needless change caused by goimports.

@stgraber
Copy link
Member

stgraber commented Jun 2, 2024

Looking good, just a few changes needed to get the tests to be happy!

@stgraber
Copy link
Member

Looking at this one now

@stgraber
Copy link
Member

I did:

  • Fixed the missing sign-offs
  • Rebased some commits together
  • Fixed the import rename
  • Ran make static-analysis and fixed what it picked up

@stgraber stgraber force-pushed the aavmf branch 2 times, most recently from 64c10bc to 3d58b37 Compare June 27, 2024 03:51
Signed-off-by: Dustin Sweigart <dustins@swigg.net>
Signed-off-by: Dustin Sweigart <dustins@swigg.net>
Signed-off-by: Dustin Sweigart <dustins@swigg.net>
Signed-off-by: Dustin Sweigart <dustins@swigg.net>
@stgraber
Copy link
Member

Done cleaning this one up and doing some testing on it.

@stgraber stgraber merged commit 5c0178e into lxc:main Jun 27, 2024
28 of 30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation Documentation needs updating
Development

Successfully merging this pull request may close these issues.

None yet

2 participants