Jump to content
DI2edd

Catalina VM unable to reboot

2 posts in this topic

Recommended Posts

Hi,

 

I'm writing from a Catalina QEMU/KVM VM which, I must say, works pretty damn well besides the fact that rebooting just doesn't work. But first, a bit of background:

I'm using OpenCore 0.5.5 through DuetPkg because I'm forced on SeaBIOS (legacy boot) because of legacy IGD passthrough (OVMF doesn't support the semi-hack that's needed for it to function), and that works well enough; I switched from Clover because it didn't allow me to use the "host" cpu model on QEMU, which OpenCore did, and so far so good.

 

The problem is that, whenever i attempt a reboot, the screen would just turn black and thats's it. I can even see that every 30 seconds it polls the battery's status through ACPI (I modified QEMU for that and left some debugging printfs).

On the other hand, shutting down works as expected. One thing I noticed is that, on shutdown, I can see the last line of verbose output on the screen is "CPU_HALTED", whereas on reboot I don't get that (don't even know if that's to be expected).

 

The point is that I'm not even sure this is a bootloader issue, because I booted a Fedora live ISO through OpenCore, and that rebooted with no problems, but at the same time I remember that with Clover I didn't have such an issue. Perhaps it was one of Clover's "Fixes" that is not automatic with OpenCore?

 

Anyway, I attached my config.plist.

 

Thank you.

config.plist

Share this post


Link to post
Share on other sites
Advertisement

Ok, uhmm, it's been only a couple of hours later but I solved it. Here's how for future reference.

 

So apparently MacOs only supports rebooting through the FADT's reset register. Now, every modern computer should have one, because that comes with ACPI revision 2, which is ancient enough.

Now, remember I told you that I'm stuck with SeaBIOS because of legacy IGD passthrough? Well, that's not the only restriction that it implies; in fact, to passthrough the integrated graphics device you have to use QEMU's i440fx's chipset (super very old) instead of the (albeit also quite old at this point) Q35 one.

 

Well, it turns out that, despite numerous attempts, to this day, QEMU 4.2 only supports the reset register with Q35. Luckily, fixing that was very easy (just remember to also raise the ACPI revision from 1 to 3, otherwise it won't have any effect).

 

And just like that, resetting works.

 

Still, not sure if I'm just misinterpreting, but what's the point of FadtEnableReset, then? I toggled it and it still did nothing. Maybe it didn't change the ACPI revision? If that's the case, then I wouldn't think it's super useful.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By IronManJFF
      Z77MX-QUO-AOS Migrating from OZ to OpenCore (based on OpenCore 0.5.7-2020-03-08)
       
      0) Disclaimer : This a Guide for the QUO motherboard, 100% to fail on any other. I have not tested it with iGPU only so take note. I have not tested it with any other SMBIOS than iMac13,2. I have not tested 'FileVault' drives or Fusion drives.
      1) Backup your current firmware and settings  use Q-Flash  Save BIOS to ROM... if you don't and end up with a brick you deserve what is happening to you
       
      2) Backup your data, only fools don't take backups
       
      Follow these steps ..don't come bitching if you don't do them in the correct order (and don't be creative, well you can be after you make it work with this recipe)
       
      3) Retrieving info, you will need using HackinTool 
      Board Serial Number  ROM ModelIdentifier Serial Number System ID 4) Download "OC to OC Migration.zip" (to come) and extract it 
      5) Now Open this file using XCode or your favorite Plist Editor
        

       
      6) Fill in the info from Step 3 in the Generic Section (don't touch anything else)
       

       
      7) Save as config.plist
       
      8) Open your EFI folder from your boot drive (the one that has the OZ folder), time to copy the stuff over
       

       
      9) Time to flash the OC-friendly firmware, put the firmware on a USB stick and flash it
       

       
      10) If all goes well when it reboots , you will see the original QUO Boot Logo and then it will greet you with a Bootpicker screen .. kinda like when you hold Option on a real Mac. something like (to see reset NVRAM, Recovery HD and access to UEFI Shell from this screen .. press Spacebar)

       
      11) Choose which OS to Boot and enjoy!
       
       
      Special Topics:
       
      The OC-friendly firmware basically it is :
             The H20-XMASS firmware
      stripped of Ozmosis, FakeSMC, HFS, APFSDriverLoader,VoodooHDA and anything Oz specific while retaining the DSDT that made it special snapped back the QUO Boot Logo from the original firmware (F3A) was the only way I found to fix black screen on cold boot Optimized Defaults values to be OC-friendly       
       
      To get into UEFI Shell before invoking OC ---> Hold F12 at startup (nothing new)
      Setting Default Boot Drive ---> OC honors Startup Disk Control Panel
      Windows (UEFI) ---> Two ways , pick one and stick with it
      From OC Boot Picker (that is what I do) From the mobo native boot picker (Holding F12 at startup and choosing Windows) HD4000 headless ---> In firmware setting .. iGPU enabled, Init Display first PEG (that's it --will not work with SMBIOS MacMini), make sure you have a working setup before enabling this feature.
      Parrallels Desktop, VMWare Fusion, Virtual Box --> In firmware setttings, Intel Virtualization Technology  Enabled (i left it off by default because there might be people with Sandy Bridge or Pentium CPU)
       
      To remove the BootPicker at startup (you can still make it show by holding Option at boot) --> Set ShowPicker key to false in config.plist
      To disable the BootChime et startup --> Set AudioSupport key to false in config.plist
       
      Troubleshooting:
       

       
      To retrieve Debug log from Terminal
      nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:boot-log | awk '{gsub(/%0d%0a%00/,"");gsub(/%0d%0a/,"\n")}1'  
      Get the migration kit
       
       
    • By lukeylad118
      Installed Catalina 10.15.4 (19E287) Vanilla with OpenCore on my HP Elitedesk 800 G2 Mini.

      Everything is working (Wifi isn't but I'm using Ethernet anyway) but my second display.

      I'm trying to get them both connected via DisplayPort as the only other output on my computer is VGA.

      I've tried manually setting the framebuffer arguments, but I cannot get it to output to both displays. Yet if I unplug one and restart, it will use the other one just fine.

      Any help would be greatly appreciated.



      HP800G2-Mini.iojones
      EFI.zip
    • By tonyx86
      This thread for installing Catalina on the Dell Latitude E6410 WITH NVIDIA GRAPHICS (BIOS A17, NVidia 3100m) will help you install a fresh installation of Catalina on your Dell Latitude E6410, it will help you upgrade from 10.15.2 to 10.15.3 (if you originally installed Catalina from this thread) and it will also help you upgrade from Mojave 10.14.6 if you have already installed Mojave by following the instructions here.  The instructions in this first post assume that you are installing Catalina in an APFS container.  If you are curious about the evolution of this solution and how sleep/wake was solved, review the Mojave installation thread.
       
      Important: This Thread is NOT intended to help you install macOS on a Latitude E6410 with Intel HD Graphics (without Nvidia graphics).  The DSDT attached to this first post (in E6410-Catalina.zip) is VERY SPECIFIC to the Nvidia graphics implementation and has not been edited for HD Graphics - there are elements required for HD Graphics that are missing from the attached DSDT and there are DSDT mods that have not been tested with HD Graphics.  Also, the kexts attached to this first post are specific to a Broadcom Wi-Fi card which must replace the original Intel Wi-Fi card.
       
      This first post will be modified to reflect lessons learned and to reflect the most current working state of my Latitude E6410 (with NVidia 3100m discrete graphics) running Catalina.  Issues, observations and performance tips are recorded toward the bottom of this first post.  My recommended CLOVER configuration is specified toward the bottom of this first post.
       
      *** If you want help with your installation, please post your issue along with problem reporting files generated using @black.dragon74's problem reporting tool.  Google 'GENERATE PROPER PROBLEM REPORTING FILES black.dragon74' to find it. ***.  If Catalina's Read-Only protections block your installation of black.dragon74's gen_debug script, please copy the attached gen_debug script to your Desktop, change script properties with the terminal command 'chmod a+x ~/Desktop/gen_debug' and run the script from your Desktop.
       
      My system is as follows:
      Dell Latitude E6410 (I7-620m, Nvidia 3100M, 8GB DDR3, 512GB SSD, 1440x900 display, BIOS: A17) Wi-Fi: Broadcom BCM 94352HMB (replaced original Wi-Fi card) BIOS (version A17) configured as follows (leave default unless listed here): Boot Sequence: USB, Internal HDD, CD/DVD, Modular Bay HDD; Boot List Option: Legacy; Integrated NIC:Enabled; Parallel Port: Disabled; Serial Port: Disabled; SATA Operation: AHCI; Misc Devices: Enable Modular Bay, Camera, External USB, Microphone, Media Card and 1394; Latitude ON Reader: Disabled; Keyboard Illumination: Auto ALS and Input; Ambient Light Sensor: Enabled; OROM Keyboard Access: Disable; TPM Security: Disable; Computrace:Deactivate; CPU XD Support: Enable; Performance: Enable all options; Power Management: Disable Wake on AC, Disable Wake on LAN/WAN, Express Charge: Standard, Charge Behavior: Enabled; Keypad: Fn Key Only; Mouse/Touchpad: Touchpad/PS-2 Mouse; USB Emulation: Enable Legacy; Fn Key Emulation: Disabled; Fastboot: Thorough; Virtualization: Enable Intel Virtualization, Disable VT for Direct I/O, Disable Trusted Execution; Wireless Switch: Bluetooth and WLAN; Wireless Device Enable: Bluetooth and WLAN;   
      Versions of the software used in this installation are listed below the installation steps.  EFI and kexts for Catalina are attached to this first post in E6410-Catalina.zip.  CLOVER configuration is specified below the installation steps.
       
      Wi-Fi connection to an Access Point is delayed when using AppleALC for sound.  Do not use Apple ALC.  Use VoodooHDA pkg 2.9.2 v15 for sound.
       
      Steps to install Catalina on a Dell Latitude E6410 (BIOS A17, NVidia 3100m)
       
      If you want to try upgrading to 10.15.4, see instructions at this post.  Follow instructions below for 10.15.3.
       
      Make sure that your system matches my system description above (including BIOS version, Wi-Fi card, BIOS settings) If performing an upgrade from Mojave or a previous version of Catalina, backup your Mojave or Catalina partition! (Carbon Copy or similar) Download Catalina Installer Download DosDude Catalina Patcher Use DosDude Patcher to create Catalina USB Installer Delete LegacyUSBInjector.kext (we're using @RehabMan's USBInjectAll.kext with custom SSDT) and delete SIPManager.kext (CLOVER is managing SIP) from Catalina USB Installer's /Library/Extensions folder Copy all but the FakeSMC sensor kexts in E6410-Catalina.zip (attached) LE folder to the Catalina USB Installer /Library/Extensions (copy all kexts (including FakeSMC.kext) but not the FakeSMC sensor kexts) Install CLOVER Bootloader (Legacy) on USB Installer using the EFI in the E6410-Catalina.zip (attached).  Use the CLOVER configuration specified below.  Be sure to replace the XX-MASKED-XX parameters in the attached config.plist with your own values. Reset your Latitude E6410 NVRAM by doing the following (this may be important if you're making changes to your existing EFI and won't hurt anything if you're not making any changes) turn-off your laptop remove A/C power and main battery press and hold the power button for 30 seconds restore A/C power and battery Boot your Latitude E6410 from the Catalina USB Installer that you created in steps 5-8. Select "Reinstall macOS" (note that I have existing installations of Mojave and High Sierra on my Latitude E6410, so it's possible that this menu item changes to "Install macOS" if you don't have any previous macOS installations). Select your Catalina destination partition (which will be your Mojave or previous Catalina partition if you are upgrading) After the Catalina Installer reboots the first time, boot from the "macOS Installer" partition on the disk that you selected as your Catalina destination (not the macOS installer on the USB) After the Catalina Installer reboots the second time, boot the Catalina macOS Installer on the USB Select the Post Install Patcher utility Select only the following Post Install Patches (no other patches / options) Install Patch Updater Legacy Video After the Post Install Patcher reboots,  boot from the newly installed (or upgraded) Catalina partition and complete the macOS configuration Remove these kexts (if they exist) from /Library/Extensions: LegacyUSBInjector.kext, LegacyUSBVideoSupport.kext and SIPManager.kext If you are performing a fresh installation of Catalina (I may be changing kext installation to EFI/Clover/kexts/Other to address Brcm Bluetooth Issue.  See discussions in Known Issues below and later in this thread): Install CLOVER on your boot disk and configure EFI using files in the attached E6410-Catalina.zip.  Use the CLOVER configuration below.  Your EFI Clover/kexts/Other folder needs only FakeSMC.kext, IntelMausiEthernet.kext, USBInjectAll.kext and VoodooPS2.kext.  Be sure to replace the XX-MASKED-XX parameters in the attached config.plist with your own values. Install all kexts in the attached E6410-Catalina.zip LE folder to your /Library/Extensions folder.  NOTE: These instructions assume installation of Brcm kexts in /Library/Extensions.  Read the Brcm install instructions if you're installing kexts in EFI/Clover/kexts/Other, since your installation and at least one kext WILL BE DIFFERENT. Copy HWMonitor from the application folder in the attached E6410-Catalina.zip to your Applications folder. Install VoodooHDA (I installed using the Classic method) Skip to Step 21 If you are upgrading from a previous version of Catalina using the instructions from this thread or from Mojave that you installed using the instructions here (I may be changing kext installation to EFI/Clover/kexts/Other to address Brcm Bluetooth Issue.  See discussions in Known Issues below and later in this thread): Update Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /Library/Extensions) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. NOTE: These instructions assume installation of Brcm kexts in /Library/Extensions.  Read the Brcm install instructions if you're installing kexts in EFI/Clover/kexts/Other, since your installation and at least one kext WILL BE DIFFERENT. Update IntelMausiEthernet.kext Remove VoodooSDHC.kext from /Library/Extensions Re-install VoodooHDA if necessary (I installed using the Classic method) Ensure PROPER kext installation: If you're manually installing kexts in /Library/Extensions, make sure that you execute the following (in terminal) cd /Library/Extensions sudo chown -R root:wheel *.kext sudo chmod -R 755 *.kext sudo kextcache -i / After you execute 'sudo kextcache -i /' you should observe that ALL kexts are allowed.  If not, your kext directory attributes are probably incorrect.  Repeat kext installation and try again. Reboot from your new/upgraded Catalina partition Welcome to macOS Catalina! Change the keyboard type to ISO (System Preferences > Keyboard > Change Keyboard Type) Swap the Command and Option keys (System Preferences > Keyboard > Modifier Keys) Set hibernatemode: In terminal, execute sudo pmset -a hibernatemode 0 sudo rm -f /var/vm/sleepimage sudo touch /var/vm/sleepimage sudo chflags schg /var/vm/sleepimage  
      Version Info at the time of this writing:
      Catalina Installer 10.15.3 CLOVER v2.5k r5103 DosDude Catalina Patcher: v1.3.0 Lilu.kext 1.4.2 AirportBrcmFixup.kext 2.0.6 BrcmFirmwareRepo.kext 2.5.1 BrcmBluetoothInjector.kext 2.5.1 BrcmPatchRAM3.kext 2.5.1 IntelMausiEthernet.kext 2.5.0
      VoodooHDA.kext 2.9.2 v15 (NOT AppleALC)
       
      What is not working (that was working in Mojave)
      SD Card Slot (had to remove VoodooSDHC.kext which caused system freeze on wake)  
      Known Issues and Their Solutions
      (Solved - no further work required) USB sleep/wake power IORegistry keys are not injected (not included in Mojave's or Catalina's IOUSBHostFamily.kext).  Solution is to added SSDT-USBX.aml to EFI/CLOVER/ACPI/patched.  The attached SSDT-USBX.aml includes USB sleep/wake properties for MacBookPro6,2 from High Sierra 10.13.6 IOUSBHostFamily.kext. (No solution yet) Brightness slider does not work in System Preferences > Displays.  Brightness is easily controlled with Dell brightness keys.  There is some work on this later in this thread, but I will not be solving this as I'm content with the Dell brightness keys (and Ambient Light Sensor works to auto-adjust brightness). I continue to refine the DSDT and CLOVER config.plist to optimize my Latitude E6410 for multi-booting between various macOS versions (High Sierra, Mojave and Catalina at the time of this writing). If you upgrade your Latitude E6410 EFI using my attached EFI, you may find that your Latitude E6410 is stuck in a boot-loop that ends in a white screen and reboots.  Clear your system by doing the following: turn off your laptop, remove A/C power, remove the main battery, press and hold the power button for 30 seconds, restore A/C power and battery, boot normally.  I have only found this to be necessary (very rarely) after making an EFI change, but you may find it helpful if making kext changes in /Library/Extensions as well. (Possible solution: move Brcm kexts to E/C/k/O with Clover "Inject Kexts" = YES.  Not yet implemented in the attached E6410-Catalina.zip file, so I'm leaving this work-around). (Work-around - no permanent solution yet) Cannot turn on Bluetooth after shutting-down with Bluetooth off.  Work-around is to leave Bluetooth on.  I don't use Bluetooth and don't mind, so this will likely be solved by someone else.  If you experience this issue and can't turn-on Bluetooth, I have found that putting the laptop to sleep (Fn-F1) and then waking the laptop restores proper operation of Bluetooth.  I have posted a problem description, logs and problem reporting files in this thread for help with this problem. (Solved - no further work required) Laptop does not sleep when closing lid.  Solution appears to be a combination of adding Notify (LID0) code to Method (BTNV), adding Device (PNLF) and adding the definition for pwm-info in the DSDT.  No surprise that the Latitude E6410 has yet another incomplete ACPI implementation.  I am using the same EFI for High Sierra 10.13.6, Mojave 10.14.6 and Catalina 10.15.3 and it works in all three macOSes. (No solution yet) No SD Card Slot (had to remove VoodooSDHC.kext) - I read somewhere that there is a solution that does not require any kexts (just a DSDT edit).  Haven't yet implemented this fix. (Not a problem that needs to be solved - leaving for historical purposes.  I am running Catalina without this.) - IOHWControl does not load under GFX0 (as observed in IORegistryExplorer).  Solution (if it needs to be solved) is to install AppleHWSensor.kext from a DosDude-patched Mojave /S/L/E in Catalina's /L/E.  Copy and install your own or use the kext attached to this post. (Solved - no further work required) Wi-Fi connection is delayed until a minute or so after boot - Use VoodooHDA and NOT AppleALC (Solved - no further work required) External USB ports do not work after waking from sleep (S3) - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Boot and shut-down time of Catalina is slower than Mojave - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Wi-Fi is not immediately available at OS startup - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Laptop freezes on wake - Remove VoodooSDHC.kext from /Library/Extensions  
      Tips for Improved Performance (on this and other older systems)
      System Preferences > Spotlight > Search Results: Uncheck all options System Preferences > Spotlight > Privacy: Add all Volumes System Preferences > Accessibility > Display: Check "Reduce motion" System Preferences > Accessibility > Display: Check "Reduce transparency"  
      Other tips
      If your fan is always running and temps are good, try pressing Fn + z (I haven't noticed this issue for a while since I completed DSDT edits for Mojave, but keeping this here for historical purposes)  
      CLOVER Installation: Use these configuration options
      Install Clover in the ESP Boot Sectors Install boot0af in MBR Clover for BIOS (legacy) booting Clover EFI 64-bits SATA BIOS Drivers, 64-bit Recommended drivers FSInject File System drivers ApfsDriverLoader Install RC scripts on target volume Themes Choose your desired theme Install Clover Preference Pane After clicking "Continue", if prompted with "This Clover package is incompatible with this version of macOS," install anyway  
      After CLOVER installation is complete Copy the following from the attached E6410-Catalina.zip ACPI patched contents config.plist (change XX-MASKED-XX values to your own) kexts/Other (remove all other kext folders) Remove christmas and new year folders from themes (if present)  
      Credits
      Thanks to those who contributed to my Mojave solution and to the DosDude team (for the incredible macOS patchers), I think this Catalina installation was the easiest macOS installation that I have experienced (so far).  Many thanks to @Slice and his team for the incredible work on CLOVER and for continuing to support old legacy systems like this.  Also, thanks to @Mieze and @headkaze and others I'm sure for maintaining the Brcm kexts.  And finally, I still prefer to manually apply patches to the DSDTs in my systems.  CLOVER offers extensive patching functionality, but I'm old-school and like to have an error-free, fully-patched DSDT with a simple CLOVER config.plist.  I think that this manual DSDT patching approach (which required an extensive review and debugging of the original unpatched DSDT in this thread) is the reason that this Latitude E6410 is such a perfect MacBookPro6,2.  Thank you @RehabMan for being a great teacher and for always insisting on problem reporting files .
       
       

      AppleHWSensor.kext.zip

      gen_debug
      E6410-Catalina-3v6.zip
    • By IDON-NO
      Supplemental update
      macOS Catalina 10.15.4 (19E287)
       
      Update went Fine 
       
      https://developer.apple.com/news/releases/?id=04082020b

    • By RoroMush
      Hi Guys,
       
      I was finally able to get my Catalina installer to boot using by changing EC0 to EC 4543305f 45435f5f. Huge headache with this as it took me a good couple of days to fix the error. 
       
      The good news is I can make it to the installer but now the problem is now the Catalina installer gets stuck at 2 minutes with the error code showing disk25s1 is not convertible to APFS.
       
      My Troubleshooting Steps:
       
      - Tried another NVMe drive, with same results
      - Checked Samsung Magician for updates, no luck
      - Formatted the drives in Ubuntu, same exact installer error.
       
      For some reason the disks always show as "Writable: NO" 
       
      Hardware:
      - Asus Z390-E 
      - Intel i7 9700K
      - Samsung 970 Pro
      - 16GB Crucial 
      - Intel UHD Graphics
       
      Is there something wrong with my kexts or config? 
       
      Thank You!
       
       
       
      EFI.zip

×