paulmorabi Posted September 6, 2020 Share Posted September 6, 2020 12 minutes ago, ghost82 said: Ok, if it boots it works I never tried, so I wrote an alternative which I'm 100% sure it works. Something is moving for amd cpu and nested virtualization (if you search around you will find some posts in other forums about this), I have intel, so I cannot test directly, all I know is that you can enable nested virtualization in unraid for amd, but I think it will not work yet in qemu. My EFI is heavily customized because of different injected device properties, network, audio, custom smbios data, lpc,.., I started to use opencore before that github page. However, I'm quite sure the actual efi to boot catalina will work for big sur, opencore team is adjusting things and I'm sure it will be ready for the official stable release. My efi to boot Catalina is working to boot big sur (I'm speaking about general quirks, not customized ones). I'll do some searching for nested virtualization in AMD. Thanks. Re: EFI, I'll start with the GitHub link and wait for OpenCore to get updated when Big Sur is officially released. I noticed minor glitches in my Proxmox based Big Sur OSX VM after upgrading between the betas so better to stay stable than on the cutting edge! Quote Link to comment
ghost82 Posted September 6, 2020 Share Posted September 6, 2020 (edited) 2 minutes ago, paulmorabi said: better to stay stable than on the cutting edge! 100% agree. I installed big sur in a different vm only for fun and to test and report bugs/issues in opencore, so to be ready for the stable release. Not to be used, at least in my opinion as an everyday machine. Edited September 6, 2020 by ghost82 Quote Link to comment
ghost82 Posted September 8, 2020 Share Posted September 8, 2020 (edited) edk2-OVMF 202008 stable released 5 days ago. Attached compiled OVMF_CODE.fd and OVMF_VARS.fd Tested and working good with opencore and Catalina/Big Sur (latest versions) Update: attachment removed, please read here: Edited October 15, 2020 by ghost82 1 Quote Link to comment
paulmorabi Posted September 11, 2020 Share Posted September 11, 2020 Hi, I've set up my Unraid and am trying to get OpenCore sorted and my VM booted. Firstly, my libvirt config is her: <?xml version='1.0' encoding='UTF-8'?> <domain type='kvm'> <name>OSX Catalina</name> <uuid>fe4fb58e-51df-092b-3abf-9214097e89fc</uuid> <metadata> <vmtemplate xmlns="unraid" name="Linux" icon="default.png" os="linux"/> </metadata> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>3</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0'/> <vcpupin vcpu='1' cpuset='2'/> <vcpupin vcpu='2' cpuset='4'/> </cputune> #<os> # <type arch='x86_64' machine='pc-q35-5.0'>hvm</type> # <loader readonly='yes' type='pflash'>/usr/share/qemu/osx/OVMF_CODE.fd</loader> # <nvram>/etc/libvirt/qemu/nvram/OSX_OVMF_VARS.fd</nvram> #</os> <os> <type arch='x86_64' machine='pc-q35-5.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/fe4fb58e-51df-092b-3abf-9214097e89fc_VARS-pure-efi.fd</nvram> </os> <features> <acpi/> <apic/> </features> <cpu mode='host-passthrough' check='none'> <topology sockets='1' dies='1' cores='3' threads='1'/> <cache mode='passthrough'/> <feature policy='require' name='topoext'/> </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='raw' cache='writeback'/> <source file='/mnt/user/domains/OSX Catalina/vdisk1.img'/> <target dev='hdc' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='2'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback' io='threads'/> <source file='/mnt/user/domains/OSX Catalina/Catalina-installer.img'/> <target dev='hdd' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='3'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/mnt/user/domains/OSX Catalina/OpenCoreEFI.qcow2'/> <target dev='hde' bus='sata'/> <boot order='1'/> <address type='drive' controller='0' bus='0' target='0' unit='4'/> </disk> <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> <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='0x10'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='pci' index='2' model='pcie-to-pci-bridge'> <model name='pcie-pci-bridge'/> <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </controller> <controller type='pci' index='3' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='3' port='0x11'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/> </controller> <controller type='pci' index='4' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='4' port='0x12'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/> </controller> <controller type='pci' index='5' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='5' port='0x13'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/> </controller> <controller type='pci' index='6' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='6' port='0x14'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x4'/> </controller> <controller type='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:6e:40:06'/> <source bridge='br0'/> <model type='virtio-net'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' 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'> <address type='usb' bus='0' port='1'/> </input> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> </video> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/> </memballoon> </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'/> </qemu:commandline> </domain> When I generate a OpenCore qcow2 image myself using the instructions provided, the system boots but the VNC connection flickers between a small and big screen endlessly. If I quit and reconnect then it shows only a blank screen. I notice someone had a similiar issue and a debug image was provided. If I use this, I can boot OSX but get the following error: Quote AAPL: [EB|`B:WFDW] Err(0xE), 0 @ LocHB 71B4903C-14EC-42C4-BDC6-CE1449930E49 AAPL: [EB|#LOG:DT] 2020-05-04T18:01:36 AAPL: [EB|#LOG:EXITBS:START] 2020-05-04T18:01:36 From a search around, this can be because of missing drivers or kexts? Any help with this would be really appreciated. I had OSX running well under Proxmox but am completely new to Unraid. Thanks! Quote Link to comment
david279 Posted September 11, 2020 Share Posted September 11, 2020 Try removing this topology line in your xml and try to boot it again. <topology sockets='1' dies='1' cores='3' threads='1'/> Also it may be fixed but hack VMs used to act funny with odd assignments of cores to the VM. Quote Link to comment
paulmorabi Posted September 11, 2020 Share Posted September 11, 2020 10 minutes ago, david279 said: Try removing this topology line in your xml and try to boot it again. <topology sockets='1' dies='1' cores='3' threads='1'/> Also it may be fixed but hack VMs used to act funny with odd assignments of cores to the VM. Removing that line moves me forward a little. I get a Kernel panic now. I tried changing CPU cores to 2 and it gave the same panic. Quote Link to comment
david279 Posted September 11, 2020 Share Posted September 11, 2020 Can you get a pic of the panic? Quote Link to comment
paulmorabi Posted September 11, 2020 Share Posted September 11, 2020 (edited) 3 hours ago, david279 said: Can you get a pic of the panic? Here EDIT: I've tried changing various aspects of the config such as graphics, adding the smbios and Apple key flags etc. and the error is always the same. If it helps, I'm using the latest beta Unraid. EDIT 2: I tried the latest qcow2 images from kholia/OSX-KVM repository. The standard one OpenCore.qcow2 gives the same kernel panic. The passthrough image hangs at the Apple logo. I keep reading about people loading kexts etc. but from what I've seen within this thread, it should be possible to use these images to get up and running with USB, GPU pass-through etc. I'm really stumped! Edited September 11, 2020 by paulmorabi Quote Link to comment
david279 Posted September 11, 2020 Share Posted September 11, 2020 If you have any kernel patches in the config.plist disabled them. If they are marked as true change them to false. Quote Link to comment
paulmorabi Posted September 11, 2020 Share Posted September 11, 2020 (edited) 9 hours ago, david279 said: If you have any kernel patches in the config.plist disabled them. If they are marked as true change them to false. OK so using the OpenCore from Leoyzen. I disabled first WhateverGreen and Lilu. This led to a bootloop at the Tiancore logo. I then disabled all of the other kernel modules and it's doing the same thing. Re-enabling them, and at the point where it should boot the UEFI the screen flashes and changes size between big and small and occasionally displays a graphical glitch. Edited September 11, 2020 by paulmorabi Quote Link to comment
david279 Posted September 11, 2020 Share Posted September 11, 2020 Find these in the config.plist and set them to false <dict> <key>Base</key> <string>_cpu_topology_sort</string> <key>Comment</key> <string>algrey - cpu_topology_sort -disable _x86_validate_topology</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>6AAA//8=</data> <key>Identifier</key> <string>kernel</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data>/wAA//8=</data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>17.0.0</string> <key>Replace</key> <data>Dx9EAAA=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> <dict> <key>Base</key> <string></string> <key>Comment</key> <string>algrey - cpuid_set_cpufamily - force CPUFAMILY_INTEL_PENRYN</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>MduAPQAAAAAGdQA=</data> <key>Identifier</key> <string>kernel</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data>/////wAAAP///wA=</data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>17.0.0</string> <key>Replace</key> <data>u7xP6njpXQAAAJA=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> <dict> <key>Base</key> <string></string> <key>Comment</key> <string>Ranem board-id to board-ix</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>Ym9hcmQtaWQ=</data> <key>Identifier</key> <string>com.apple.driver.AppleGraphicsDevicePolicy</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data></data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>19.0.0</string> <key>Replace</key> <data>Ym9hcmQtaXg=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> Quote Link to comment
paulmorabi Posted September 12, 2020 Share Posted September 12, 2020 3 hours ago, david279 said: Find these in the config.plist and set them to false <dict> <key>Base</key> <string>_cpu_topology_sort</string> <key>Comment</key> <string>algrey - cpu_topology_sort -disable _x86_validate_topology</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>6AAA//8=</data> <key>Identifier</key> <string>kernel</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data>/wAA//8=</data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>17.0.0</string> <key>Replace</key> <data>Dx9EAAA=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> <dict> <key>Base</key> <string></string> <key>Comment</key> <string>algrey - cpuid_set_cpufamily - force CPUFAMILY_INTEL_PENRYN</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>MduAPQAAAAAGdQA=</data> <key>Identifier</key> <string>kernel</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data>/////wAAAP///wA=</data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>17.0.0</string> <key>Replace</key> <data>u7xP6njpXQAAAJA=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> <dict> <key>Base</key> <string></string> <key>Comment</key> <string>Ranem board-id to board-ix</string> <key>Count</key> <integer>1</integer> <key>Enabled</key> <true/> <key>Find</key> <data>Ym9hcmQtaWQ=</data> <key>Identifier</key> <string>com.apple.driver.AppleGraphicsDevicePolicy</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data></data> <key>MaxKernel</key> <string>19.99.99</string> <key>MinKernel</key> <string>19.0.0</string> <key>Replace</key> <data>Ym9hcmQtaXg=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> Did this and got the Tianbcore boot loop again. Quote Link to comment
ghost82 Posted September 12, 2020 Share Posted September 12, 2020 (edited) On 9/11/2020 at 4:41 AM, paulmorabi said: <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/fe4fb58e-51df-092b-3abf-9214097e89fc_VARS-pure-efi.fd</nvram> Are these correct? Shouldn't point to OVMF_CODE-pure-efi.fd, or did you rename the file? Edited September 12, 2020 by ghost82 Quote Link to comment
paulmorabi Posted September 12, 2020 Share Posted September 12, 2020 3 hours ago, ghost82 said: Are these correct? Shouldn't point to OVMF_CODE-pure-efi.fd, or did you rename the file? It's possible I changed it as I've changed so many things to try and get this working. Anyhow, I changed to what you recommended and it's giving the same bootloop Tiancore logo Quote Link to comment
ghost82 Posted September 12, 2020 Share Posted September 12, 2020 (edited) I suggest to start from the beginning, I think you changed too many things, change one thing at a time. If your system hangs again download the DEBUG version of opencore, set the config.plist to save to file and share with us. Use stock ovmf. That kernel panic suggest something related to cpu, but could be other. If you want I can make an opencore.qcow2 image, share your smbios data (if you want also via pm). Post again your clean xml and share your cpu details. UPDATE: are you using virtualsmc? If not, you need to add a qemu arg for the osk Edited September 12, 2020 by ghost82 Quote Link to comment
paulmorabi Posted September 12, 2020 Share Posted September 12, 2020 3 minutes ago, ghost82 said: I suggest to start from the beginning, I think you changed too many things, change one thing at a time. If your system hangs again download the DEBUG version of opencore, set the config.plist to save to file and share with us. Use stock ovmf. That kernel panic suggest something related to cpu, but could be other. If you want I can make an opencore.qcow2 image, share your smbios data (if you want also via pm). Post again your clean xml and share your cpu details. OK I will do this. Which XML should I begin with? Created from within Unraid or the one from Leoyzen's GitHub? Quote Link to comment
ghost82 Posted September 12, 2020 Share Posted September 12, 2020 Just now, paulmorabi said: Which XML should I begin with? unraid, then I will check and eventually modify. Check my last update in red above, maybe you are missing custom args! Quote Link to comment
paulmorabi Posted September 13, 2020 Share Posted September 13, 2020 17 hours ago, ghost82 said: unraid, then I will check and eventually modify. Check my last update in red above, maybe you are missing custom args! I've made great progress. I created a new VM and modified only a few areas - added a usb keyboard, adjusted the network card model and commented out the topology line. Current XML is as follows: <?xml version='1.0' encoding='UTF-8'?> <domain type='kvm'> <name>OSX Catalina</name> <uuid>de64714c-4863-ade9-48f9-6689fd040f1c</uuid> <metadata> <vmtemplate xmlns="unraid" name="Linux" icon="osx.png" os="linux"/> </metadata> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>4</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0'/> <vcpupin vcpu='1' cpuset='1'/> <vcpupin vcpu='2' cpuset='2'/> <vcpupin vcpu='3' cpuset='4'/> </cputune> <os> <type arch='x86_64' machine='pc-q35-5.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/de64714c-4863-ade9-48f9-6689fd040f1c_VARS-pure-efi.fd</nvram> </os> <features> <acpi/> <apic/> </features> <cpu mode='custom' match='exact' check='none'> <model fallback='forbid'>qemu64</model> <!--<topology sockets='1' dies='1' cores='4' threads='1'/>--> </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='raw' cache='writeback'/> <source file='/mnt/user/domains/OSX Catalina/vdisk1.img'/> <target dev='hdc' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='2'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback' io='threads'/> <source file='/mnt/user/domains/OSX Catalina/BaseSystem.img'/> <target dev='hdd' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='3'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/mnt/user/domains/OSX Catalina/OpenCoreEFI.qcow2'/> <target dev='hde' bus='sata'/> <boot order='1'/> <address type='drive' controller='0' bus='0' target='0' unit='4'/> </disk> <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> <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='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </controller> <controller type='pci' index='1' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='1' port='0x10'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='pci' index='2' model='pcie-to-pci-bridge'> <model name='pcie-pci-bridge'/> <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </controller> <controller type='pci' index='3' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='3' port='0x11'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/> </controller> <controller type='pci' index='4' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='4' port='0x12'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/> </controller> <controller type='pci' index='5' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='5' port='0x13'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/> </controller> <interface type='bridge'> <mac address='52:54:00:b7:9c:1e'/> <source bridge='br0'/> <model type='e1000-82545em'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' 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'> <address type='usb' bus='0' port='1'/> </input> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <input type='keyboard' bus='usb'> <alias name='input2'/> <address type='usb' bus='0' port='3'/> </input> <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> </video> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </memballoon> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='************************'/> <qemu:arg value='-smbios'/> <qemu:arg value='type=2'/> <qemu:arg value='-cpu'/> <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check'/> </qemu:commandline> </domain> I created my own EFI from Leoyzen's GitHub and it did the same Tiano Core bootloop. I used the OpenCoreEFI attached to an earlier thread here with the option to clear NVRAM and also boot OSX. The installer and whole install procedure was in Chinese for some reason and I had to wait until after install to change to English. I'm curious as to the differences between the EFI from GitHub and the debug one. Are there any specific additions that could have fixed the boot loop? (if its CPU based, I'm running a Ryzen 3600XT). I'll next attempt the pass through of my RX570. Thanks for all of your help so far. Quote Link to comment
ghost82 Posted September 13, 2020 Share Posted September 13, 2020 (edited) 3 hours ago, paulmorabi said: I'm curious as to the differences between the EFI from GitHub and the debug one I think both are debug versions: debug version means that it logs more informationthan the release one; the release version logs only warnings and error, the debug one adds useful information to track down issues. What probably changes is the config.plist of opencore in the efi partition, in which there are all the settings for the bootloader: if you are curious you can compare that 2 files and see what are the differences. About the Chinese language, that setting is also in the config.plist and it's stored in nvram. Examples: In Leoyzen's github config.plist file you have: <key>prev-lang:kbd</key> <data>emgtSGFuczoyNTI=</data> the data field is base64, converted to ascii you have: zh-Hans:252 which defines Chinese (zh-Hans) with ABC keyboard (252). Useful info to track where the user comes from ahah A list is available here: https://github.com/acidanthera/OpenCorePkg/blob/master/Utilities/AppleKeyboardLayouts/AppleKeyboardLayouts.txt From opencore manual (docs/configuration.pdf): Quote 7C436110-AB2A-4BBB-A880-FE41995C9F82:prev-lang:kbd ASCII string defining default keyboard layout. Format is lang-COUNTRY:keyboard, e.g. ru-RU:252 for Russian locale and ABC keyboard. Also accepts short forms: ru:252 or ru:0 (U.S. keyboard, compatible with 10.9). By the way, the official config.plist from github has a default setting of ru-RU:252 (which is russian), an incomprehensible language unless you are russian This was intentional to see who reads the documentation Edited September 13, 2020 by ghost82 Quote Link to comment
paulmorabi Posted September 13, 2020 Share Posted September 13, 2020 2 minutes ago, ghost82 said: I think both are debug versions: debug version means that it logs more informationthan the release one; the release version logs only warnings and error, the debug one adds useful information to track down issues. What probably changes is the config.plist of opencore in the efi partition, in which there are all the settings for the bootloader: if you are curious you can compare that 2 files and see what are the differences. About the Chinese language, that setting is also in the config.plist and it's stored in nvram. Examples: In Leoyzen's github config.plist file you have: <key>prev-lang:kbd</key> <data>emgtSGFuczoyNTI=</data> the data field is base64, converted to ascii you have: zh-Hans:252 which defines Chinese (zh-Hans) with ABC keyboard (252). Useful info to track where the user comes from ahah A list is available here: https://github.com/acidanthera/OpenCorePkg/blob/master/Utilities/AppleKeyboardLayouts/AppleKeyboardLayouts.txt From opencore manual (docs/configuration.pdf): OK, that makes sense! So, if I want to keep the current EFI, I can change the above and then 1. How do I disable the additional logging (when ready)? 2. How can I remove the option to clear NVRAM or Boot OSX (also once ready)? Quote Link to comment
ghost82 Posted September 13, 2020 Share Posted September 13, 2020 2 minutes ago, paulmorabi said: OK, that makes sense! So, if I want to keep the current EFI, I can change the above and then 1. How do I disable the additional logging (when ready)? 2. How can I remove the option to clear NVRAM or Boot OSX (also once ready)? Now that you have a basic opencore.qcow2 that works I suggest to shutdown the vm and from unraid copy and backup this opencore.qcow2 somewhere. Save also a copy of your vm xml. 1. Logging: in config.plist it's "Target" in the Debug section <key>Target</key> <integer>0</integer> Target 0 doesn't log 2. You can't remove, but you can hide: in config.plist <key>ShowPicker</key> <false/> Take into account that all of this is covered in the configuration.pdf of opencore: https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/Configuration.pdf As suggested by Acidanthera team the user should read and understand the docs before attempting to use opencore. Quote Link to comment
paulmorabi Posted September 13, 2020 Share Posted September 13, 2020 1 hour ago, ghost82 said: Now that you have a basic opencore.qcow2 that works I suggest to shutdown the vm and from unraid copy and backup this opencore.qcow2 somewhere. Save also a copy of your vm xml. 1. Logging: in config.plist it's "Target" in the Debug section <key>Target</key> <integer>0</integer> Target 0 doesn't log 2. You can't remove, but you can hide: in config.plist <key>ShowPicker</key> <false/> Take into account that all of this is covered in the configuration.pdf of opencore: https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/Configuration.pdf As suggested by Acidanthera team the user should read and understand the docs before attempting to use opencore. Thank you for this and all of your help. Really appreciated. 1 Quote Link to comment
paulmorabi Posted September 14, 2020 Share Posted September 14, 2020 I have managed to get GPU passthrough of my RX570 working in a PopOS VM. I seem to have the reset bug and am working through that, but otherwise OK. When I assign the GPU to OSX, I get a blank screen, no BIOS boot logo or anything. I tried to then assign the GPU and also VNC. The closest I got was a "gio screen lock state 3" error and the desktop background displaying on the external monitor. Usually, it boots into recovery and goes through the install/repair again only to have the same error. Has anyone successfully passed an RX570? Are there any tips with kexts etc. I should load with OpenCore? using ther debug one from previously, I disabled logging and can see Lilu and WhateverGreen are already there. Are there any settings I need to change for this? Quote Link to comment
david279 Posted September 14, 2020 Share Posted September 14, 2020 I have a rx 570 working with my VM right now. I had to stub the card from the unRAID system so it would not try to use it to get it to work though. Without that all i got was blank screens like you have. I have a sapphire rx 570. Quote Link to comment
paulmorabi Posted September 14, 2020 Share Posted September 14, 2020 6 minutes ago, david279 said: I have a rx 570 working with my VM right now. I had to stub the card from the unRAID system so it would not try to use it to get it to work though. Without that all i got was blank screens like you have. I have a sapphire rx 570. By stub, you mean have it assigned to VFIO and add "pci=noaer video=vesafb:off,efifb:off" to the kernel boot parameters? If so, I've done this. I'm using an MSI Armor OC (4GB). Did you dump the bios also? Are you allowing unsafe VFIO interrupts? Is ACS override disabled or are you passing anything else through? Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.