mirror of
https://github.com/thenickdude/KVM-Opencore.git
synced 2024-10-27 20:34:10 +00:00
d78b27e1ab
1. Add description of irregular cpu topology assignment 2. Include Lilu/WEG/AppleALC and enabled by default 3. Add VirtualSMC and remove apple smc device in xml 4. Add more description in manual
202 lines
8.9 KiB
XML
202 lines
8.9 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
|
|
<name>Catalina</name>
|
|
<uuid>4450a55c-1669-da0e-d0bd-3ab45fef0398</uuid>
|
|
<metadata>
|
|
<vmtemplate xmlns="unraid" name="Linux" icon="MacOS.png" os="linux"/>
|
|
</metadata>
|
|
<memory unit='KiB'>8388608</memory>
|
|
<currentMemory unit='KiB'>8388608</currentMemory>
|
|
<memoryBacking>
|
|
<nosharepages/>
|
|
</memoryBacking>
|
|
<!-- If you wanna passthrough all 8-cores, change current='6' to current='8' -->
|
|
<vcpu placement='static' current='6'>8</vcpu>
|
|
<iothreads>1</iothreads>
|
|
<vcpus>
|
|
<vcpu id='0' enabled='yes' hotpluggable='no' order='1'/>
|
|
<vcpu id='1' enabled='yes' hotpluggable='yes' order='2'/>
|
|
<vcpu id='2' enabled='yes' hotpluggable='yes' order='3'/>
|
|
<vcpu id='3' enabled='yes' hotpluggable='yes' order='4'/>
|
|
<vcpu id='4' enabled='yes' hotpluggable='yes' order='5'/>
|
|
<vcpu id='5' enabled='yes' hotpluggable='yes' order='5'/>
|
|
<!-- If you wanna passthrough all 8-cores, enable 6/7 two vcpus -->
|
|
<vcpu id='6' enabled='no' hotpluggable='yes' order='6'/>
|
|
<vcpu id='7' enabled='no' hotpluggable='yes' order='7'/>
|
|
</vcpus>
|
|
<cputune>
|
|
<vcpupin vcpu='0' cpuset='0'/>
|
|
<vcpupin vcpu='1' cpuset='6'/>
|
|
<vcpupin vcpu='2' cpuset='1'/>
|
|
<vcpupin vcpu='3' cpuset='7'/>
|
|
<vcpupin vcpu='4' cpuset='2'/>
|
|
<vcpupin vcpu='5' cpuset='8'/>
|
|
<iothreadpin iothread='1' cpuset='3,9'/>
|
|
</cputune>
|
|
<os>
|
|
<type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
|
|
<!-- We don't need patched OVMF anymore when using latest Opencore, stock one is okay -->
|
|
<loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
|
|
<nvram>/etc/libvirt/qemu/nvram/4450a55c-1669-da0e-d0bd-3ab45fef0398_VARS-pure-efi.fd</nvram>
|
|
<boot dev='hd'/>
|
|
</os>
|
|
<features>
|
|
<acpi/>
|
|
<apic/>
|
|
</features>
|
|
<cpu mode='host-passthrough' check='none'>
|
|
<!-- If you wanna passthrough all 8-cores, change cores to 4 -->
|
|
<topology sockets='1' cores='3' threads='2'/>
|
|
</cpu>
|
|
<clock offset='utc'>
|
|
<timer name='rtc' tickpolicy='catchup'/>
|
|
<timer name='pit' tickpolicy='delay'/>
|
|
<timer name='hpet' present='no'/>
|
|
</clock>
|
|
<on_poweroff>destroy</on_poweroff>
|
|
<on_reboot>restart</on_reboot>
|
|
<on_crash>restart</on_crash>
|
|
<devices>
|
|
<emulator>/usr/local/sbin/qemu</emulator>
|
|
<disk type='file' device='disk'>
|
|
<driver name='qemu' type='qcow2' cache='writeback' io='threads'/>
|
|
<source file='/mnt/user/domains/Catalina/opencore.beta.qcow2'/>
|
|
<backingStore/>
|
|
<target dev='hdd' bus='sata'/>
|
|
<address type='drive' controller='0' bus='0' target='0' unit='4'/>
|
|
</disk>
|
|
<disk type='file' device='disk'>
|
|
<driver name='qemu' type='qcow2' cache='writeback' io='threads'/>
|
|
<source file='/mnt/user/domains/Catalina/system.beta.qcow2'/>
|
|
<backingStore/>
|
|
<target dev='hde' bus='sata'/>
|
|
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
|
|
</disk>
|
|
<controller type='sata' index='0'>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
|
|
</controller>
|
|
<controller type='pci' index='0' model='pcie-root'/>
|
|
<controller type='pci' index='1' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='1' port='0x8'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
|
|
</controller>
|
|
<controller type='pci' index='2' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='2' port='0x9'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
|
|
</controller>
|
|
<controller type='pci' index='3' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='3' port='0xa'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
|
|
</controller>
|
|
<controller type='pci' index='4' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='4' port='0xb'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
|
|
</controller>
|
|
<controller type='pci' index='5' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='5' port='0xc'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
|
|
</controller>
|
|
<controller type='pci' index='6' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='6' port='0xd'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x5'/>
|
|
</controller>
|
|
<controller type='pci' index='7' model='pcie-root-port'>
|
|
<model name='pcie-root-port'/>
|
|
<target chassis='7' port='0xe'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x6'/>
|
|
</controller>
|
|
<controller type='virtio-serial' index='0'>
|
|
<address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
|
|
</controller>
|
|
<controller type='usb' index='0' model='ich9-ehci1'>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
|
|
</controller>
|
|
<controller type='usb' index='0' model='ich9-uhci1'>
|
|
<master startport='0'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
|
|
</controller>
|
|
<controller type='usb' index='0' model='ich9-uhci2'>
|
|
<master startport='2'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
|
|
</controller>
|
|
<controller type='usb' index='0' model='ich9-uhci3'>
|
|
<master startport='4'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
|
|
</controller>
|
|
<!-- Make sure you put your nic in bus 0x0 and slot 0x0y(y is numeric), this will make nic built-in and apple-store work-->
|
|
<interface type='bridge'>
|
|
<mac address='52:54:00:3e:21:a2'/>
|
|
<source bridge='br0.100'/>
|
|
<model type='e1000-82545em'/>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
|
|
</interface>
|
|
<serial type='pty'>
|
|
<target type='isa-serial' port='0'>
|
|
<model name='isa-serial'/>
|
|
</target>
|
|
</serial>
|
|
<console type='pty'>
|
|
<target type='serial' port='0'/>
|
|
</console>
|
|
<channel type='unix'>
|
|
<target type='virtio' name='org.qemu.guest_agent.0'/>
|
|
<address type='virtio-serial' controller='0' bus='0' port='1'/>
|
|
</channel>
|
|
<input type='tablet' bus='usb'>
|
|
<alias name='input0'/>
|
|
<address type='usb' bus='0' port='1'/>
|
|
</input>
|
|
<!-- Mouse sets to usb will make unexpected behaviors when using VNC, so we use ps2 here.-->
|
|
<input type='mouse' bus='ps2'>
|
|
<alias name='input1'/>
|
|
</input>
|
|
<!-- This is required to make Keyboard work during installation when using VNC -->
|
|
<input type='keyboard' bus='usb'>
|
|
<alias name='input2'/>
|
|
<address type='usb' bus='0' port='3'/>
|
|
</input>
|
|
<input type='keyboard' bus='ps2'>
|
|
<alias name='input3'/>
|
|
</input>
|
|
<!-- If you wanna passthrough GPU, make sure the gfx and audio are in the same bus (like 0x01) but different function (0x00 and 0x01)-->
|
|
<!-- <hostdev mode='subsystem' type='pci' managed='yes'>
|
|
<driver name='vfio'/>
|
|
<source>
|
|
<address domain='0x0000' bus='0x2d' slot='0x00' function='0x0'/>
|
|
</source>
|
|
<rom file='/mnt/disks/backups/BIOS/RX580/Ellesmere.rom'/>
|
|
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0' multifunction='on'/>
|
|
</hostdev>
|
|
<hostdev mode='subsystem' type='pci' managed='yes'>
|
|
<driver name='vfio'/>
|
|
<source>
|
|
<address domain='0x0000' bus='0x2d' slot='0x00' function='0x1'/>
|
|
</source>
|
|
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x1'/>
|
|
</hostdev> -->
|
|
<!-- If you wanna passthrough onboard audio(like 30:00.4), make sure you put it in bus 0x00 and slot 0x0y(y is numeric), otherwise AppleALC won't recognized it -->
|
|
<!-- <hostdev mode='subsystem' type='pci' managed='yes'>
|
|
<driver name='vfio'/>
|
|
<source>
|
|
<address domain='0x0000' bus='0x30' slot='0x00' function='0x4'/>
|
|
</source>
|
|
<address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
|
|
</hostdev> -->
|
|
<memballoon model='none'/>
|
|
</devices>
|
|
<qemu:commandline>
|
|
<qemu:arg value='-cpu'/>
|
|
<qemu:arg value='Penryn,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2'/>
|
|
<!-- If you wanna use cpu host-passthrough mode, uncomments below-->
|
|
<!-- <qemu:arg value='host,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2'/> -->
|
|
<!-- If you wanna use cpu emulating mode like Skylake-Server, uncomments below-->
|
|
<!-- <qemu:arg value='Skylake-Server,vendor=GenuineIntel,+hypervisor,+invtsc,kvm=on,+fma,+avx,+avx2,+aes,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2'/> -->
|
|
</qemu:commandline>
|
|
</domain>
|