notAperson535 / OneClick-macOS-Simple-KVM

Tools to set up a easy, quick macOS VM in QEMU, accelerated by KVM. Works on Linux AND Windows.
https://notAperson535.github.io/OneClick-macOS-Simple-KVM
MIT License
606 stars 51 forks source link

Replace USB controllers with `qemu-xhci` for macOS Sonoma support #105

Closed manuth closed 6 months ago

manuth commented 6 months ago

Changes made in this commit will fix #103 by replacing the ich9-echi1 controller with a qemu-xhci controller as recommended on Reddit: https://www.reddit.com/r/macOSVMs/s/kzSuQrgOgt.

Setting the address of the controller to <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/> (virt-managers default), causes USB devices to not be picked up.

For that reason, the address from this repository was used, which seems to work out just fine: <address type='pci' domain='0x0000' bus='0x00' slot='0x1d' function='0x0'/>.

Unlike recommended on Reddit, the ports does not seem to be necessary. macOS 14.4 works just fine with the changes made in this PR.

When I limited the ports as recommended on Reddit (by adding ports='7' to the controller-tag), I also had to set UEFI -> ProtocolOverrides -> HashServices to true in OpenCore's config.plist file. Otherwise, a notification "Volume Hash Mismatch" notification was shown each time I booted up the VM.

notAperson535 commented 6 months ago

@manuth I'll add this to the code myself while keeping both the other usb devices too. Let me know if that wouldn't work and ill reopen this, else it is closed and thank you

manuth commented 6 months ago

I'll give it a try once you pushed the changes Thank you very much!

notAperson535 commented 6 months ago

actually no i'll just replace it all with your changes

manuth commented 6 months ago

Awesome! Thank you very much 😄