Jump to content

Clover General discussion


ErmaC
29,866 posts in this topic

Recommended Posts

Did you replace \EFI\BOOT\BOOTX64.efi too? It should not have been able to print anything out.

 

they should be the same binary they just have different names. so rename it in the boot folder

 

Done, I downloaded bootx64.efi and copied it to the Clover folder and rename it ! Still same freeze and the APFS log is still there.

 

Btw: why we have 2 Clover binaries ? instead of just: \EFI\Boot\BOOTX64.efi ?

Link to comment
Share on other sites

Done, I downloaded bootx64.efi and copied it to the Clover folder and rename it ! Still same freeze and the APFS log is still there.

 

Btw: why we have 2 Clover binaries ? instead of just: \EFI\Boot\BOOTX64.efi ?

 

Because clover is at \EFI\CLOVER\CLOVERX64.efi and \EFI\BOOT\BOOTX64.efi is the path for the default boot loader of volume, and could be anything you want it to be, like windows or linux.

 

So the APFS driver must actually locate the EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL to write to output instead of using the ConOut from SystemTable.... Oh jeez.

 

EDIT: Whenever it writes to the console that causes the graphics to switch back to 1024x768. But also the graphics are doing stuff, and especially when using CsmVideo and it needs to reconnect. Does ConSplitter need to be used immediately if APFS driver is being loaded?

Link to comment
Share on other sites

Graphics switch to 1024 x 768 when entering UEFI Shell also. I have Windows 8 WHQL set in UEFI settings so it loads the UEFI GOP Driver. This way, the BGRT (The logo of the OEM) is at native resolution, in my case 1920 x 1080.

 

The thing is that I don't understand why UEFI Shell and APFS driver switch it to 1024 x 768. 

Link to comment
Share on other sites

Graphics switch to 1024 x 768 when entering UEFI Shell also. I have Windows 8 WHQL set in UEFI settings so it loads the UEFI GOP Driver. This way, the BGRT (The logo of the OEM) is at native resolution, in my case 1920 x 1080.

 

The thing is that I don't understand why UEFI Shell and APFS driver switch it to 1024 x 768. 

 

 

won't understand your claims, adjust.

Link to comment
Share on other sites

Graphics switch to 1024 x 768 when entering UEFI Shell also. I have Windows 8 WHQL set in UEFI settings so it loads the UEFI GOP Driver. This way, the BGRT (The logo of the OEM) is at native resolution, in my case 1920 x 1080.

 

The thing is that I don't understand why UEFI Shell and APFS driver switch it to 1024 x 768. 

 

CSM OFF in BIOS? Just double checking.

Link to comment
Share on other sites

Unfortunately, no, those keys are being consumed by the input buffer for FileVault2 for startup keys and stuff.... For now you will have to put at least Timeout=1, in the future I guess that protocol will need to be located and checked for this purpose.... I've no idea who's going to do that....

 

EDIT: I should also point out the startup combinations for mac don't work because that is part of the mac firmware and is not implemented in clover.... Yet, I guess.

I have worked for that and successful! Now, how could I commit&Push it to sourceforge?

Link to comment
Share on other sites

Graphics switch to 1024 x 768 when entering UEFI Shell also. I have Windows 8 WHQL set in UEFI settings so it loads the UEFI GOP Driver. This way, the BGRT (The logo of the OEM) is at native resolution, in my case 1920 x 1080.

 

The thing is that I don't understand why UEFI Shell and APFS driver switch it to 1024 x 768. 

 

They switch because the console has a specific resolution for the size of character and by columns and rows. So anytime the console is written to it switches to the mode it needs to write out the characters to the graphics. The shell is fine because it is an application and the only thing using the console/graphics during that time (everything should be reset when you exit back into clover). APFS is a driver, it acts asynchronously, so as stuff happens with the volumes handled by the driver, it prints out messages, which if you are drawing on the screen or otherwise using something to do with graphics, this switch is a problem because it probably preempts the current task of drawing, making the graphics buffer no longer valid but it's still drawing inside that buffer. As far as CsmVideo, I noticed this because someone opened a ticket for this exact problem but it was spamming in the debug.log that it was blocking the switch to 1024x768, or it just crashed at trying to reconnect.

 

won't understand your claims, adjust.

 

Don't know what this means, I understood him perfectly fine, this though, not as sure....

 

graphics isn't created

 

If graphics weren't created then there would not be anything on screen, not even APFS log. This is related to APFS driver because it directly happened after moving over to APFS after not having used it...

 

I have worked for that and successful! Now, how could I commit&Push it to sourceforge?

 

Post the diff patch here, for review.

Link to comment
Share on other sites

Yes, I always turn off CSM and sometimes I enable fast boot. The second question is. Can we turn off the APFS log in Clover ? 

 

Never enable fast boot. It means your firmware will never be reinitialized fully when you restart, and has no effect besides not loading some stuff from cold boot. Since you don't know what's it's reinitializing, it could leave a bunch of stuff present that you don't want and can cause issues, especially with ACPI. I tried to turn off the APFS log, that's what that binary I posted for you to try did. The only other thing is completely disabling console output, or splitting the console from the graphics output, either way you are left without console output unless clover makes its own console that doesn't need to switch..... Hmmmmm..... Hmmmmmmmmmmmmmmmmmm........................ Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm......................................

Link to comment
Share on other sites

Yes, I always turn off CSM and sometimes I enable fast boot. The second question is. Can we turn off the APFS log in Clover ? 

 

One way here: http://www.insanelymac.com/forum/topic/327584-apfsefi-without-verbose-boot/page-5?do=findComment&comment=2532527

Another way here: http://www.insanelymac.com/forum/topic/291655-ozmosis/?p=2498575 (requires Patcho).

 

I would leave Fast Boot off. I had issues with it, since it was skipping stuff I didn't want skipped, such as the Clover UI. :)

 

I suppose you don't have CSMVideo driver in Clover, right? You don't need it anyway.  And it could create issues if it's installed. Again, just trying to troubleshoot the issue here. Since it looks like you did what you had to do. And still...it doesn't seem to work for you, for some reason.

Link to comment
Share on other sites

One way here: http://www.insanelymac.com/forum/topic/327584-apfsefi-without-verbose-boot/page-5?do=findComment&comment=2532527

Another way here: http://www.insanelymac.com/forum/topic/291655-ozmosis/?p=2498575(requires Patcho).

 

I would leave Fast Boot off. I had issues with it, since it was skipping stuff I didn't want skipped, such as the Clover UI. :)

 

I suppose you don't have CSMVideo driver in Clover, right? You don't need it anyway.  And it could create issues if it's installed. Again, just trying to troubleshoot the issue here. Since it looks like you did what you had to do. And still...it doesn't seem to work for you, for some reason.

 

http://www.insanelymac.com/forum/topic/327584-apfsefi-without-verbose-boot/page-5?do=findComment&comment=2582519

 

The patched driver is also in there, I forgot about that, duh.

  • Like 1
Link to comment
Share on other sites

Never enable fast boot. It means your firmware will never be reinitialized fully when you restart, and has no effect besides not loading some stuff from cold boot. Since you don't know what's it's reinitializing, it could leave a bunch of stuff present that you don't want and can cause issues, especially with ACPI. I tried to turn off the APFS log, that's what that binary I posted for you to try did. The only other thing is completely disabling console output, or splitting the console from the graphics output, either way you are left without console output unless clover makes its own console that doesn't need to switch..... Hmmmmm..... Hmmmmmmmmmmmmmmmmmm........................ Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm......................................

 

 

Good to know that. One more question. If I enable timeout 0 in clover and I press any key why doesn't stop the boot like it should ?

Link to comment
Share on other sites

 

@apianti, is there a way to disable IntelCPUMonitor in clover during the boot process?    We have an issue with the latest High Sierra 13.4 betas which never arose before in High Sierra for AMD CPUs using our custom kernels.    It only seems to affect HS 13.4 and may be related to Apples fixes for Spectre and meltdown bug fixes?   Any thoughts or suggestions on how to find this and disable it for AMD CPU users?  

 

My initial Google searches point towards FakeSMCkext and Ivy Bridge from 2012.    Is there any terminal command that would be able to locate IntelCPUMonitor in HS 13.4 so I could try removing it from the software for testing?      Any help would be greatly appreciated.

 

post-1753549-0-67161300-1518374190_thumb.jpg

Link to comment
Share on other sites

@apianti, is there a way to disable IntelCPUMonitor in clover during the boot process?    We have an issue with the latest High Sierra 13.4 betas which never arose before in High Sierra for AMD CPUs using our custom kernels.    It only seems to affect HS 13.4 and may be related to Apples fixes for Spectre and meltdown bug fixes?

No idea on the AMD CPUs....but I doubt the issues come from the Spectre fix.

 

For as far as I know, the fix has been applied in 10.13.2 Supplemental Update. So...unless there's another iteration on that, I'm not sure they're related.

Link to comment
Share on other sites

No idea on the AMD CPUs....but I doubt the issues come from the Spectre fix.

 

For as far as I know, the fix has been applied in 10.13.2 Supplemental Update. So...unless there's another iteration on that, I'm not sure they're related.

 

The 13.4 betas have a new separate Immutable kernel in Prelinkedkernels folder that links to the main partition in Scripts, and Payloads folders which are new additions to HS software.    These bugs are kernel related and the fixes are focused on preventing kernel (kernel extensions) penetration by outside users.  

 

Since these have been added in 13.4 the IntelCPUMonitor errors have occurred it may be unrelated but if Apple is trying to apply fixes for Intel CPUs they may be detecting the CPU type in order to add the proper fixes.   Fixes for Skylake are probably different from haswell etc...    

 

Does anyone have any idea as to where IntelCPUMonitor would be located in OS?      

Link to comment
Share on other sites

Post the diff patch here, for review.

Here you go: 

Index: rEFIt_UEFI/refit/main.c
===================================================================
--- rEFIt_UEFI/refit/main.c	(revision 4414)
+++ rEFIt_UEFI/refit/main.c	(working copy)
@@ -1881,6 +1881,7 @@
   BOOLEAN           MainLoopRunning = TRUE;
   BOOLEAN           ReinitDesktop = TRUE;
   BOOLEAN           AfterTool = FALSE;
+    BOOLEAN           KeyPressedForGUI = FALSE;
   REFIT_MENU_ENTRY  *ChosenEntry = NULL;
   REFIT_MENU_ENTRY  *DefaultEntry = NULL;
   REFIT_MENU_ENTRY  *OptionEntry = NULL;
@@ -2123,7 +2124,7 @@
 #endif // ENABLE_SECURE_BOOT
 
   MainMenu.TimeoutSeconds = GlobalConfig.Timeout >= 0 ? GlobalConfig.Timeout : 0;
-
+    KeyPressedForGUI=ReadAllKeyStrokes();
   //DBG("LoadDrivers() start\n");
   LoadDrivers();
   //DBG("LoadDrivers() end\n");
@@ -2468,7 +2469,7 @@
     gEvent = 0; //clear to cancel loop
     while (MainLoopRunning) {
       CHAR8 *LastChosenOS = NULL;
-      if (GlobalConfig.Timeout == 0 && DefaultEntry != NULL && !ReadAllKeyStrokes()) {
+      if (GlobalConfig.Timeout == 0 && DefaultEntry != NULL && !ReadAllKeyStrokes()&&!KeyPressedForGUI) {
         // go strait to DefaultVolume loading
         MenuExit = MENU_EXIT_TIMEOUT;
       } else {

Link to comment
Share on other sites

This just discards any keystrokes that should have been intercepted by either the apple input protocols or the GUI. Instead, after LoadDrivers(), KeyPressedForGUI should be TRUE only after locating the apple key aggregator protocol, and inspecting whether there is any key information present.

Link to comment
Share on other sites

This just discards any keystrokes that should have been intercepted by either the apple input protocols or the GUI. Instead, after LoadDrivers(), KeyPressedForGUI should be TRUE only after locating the apple key aggregator protocol, and inspecting whether there is any key information present.

Just wonder why the AptioInputFix doesn't affect when the GUI Loaded?

I put the ReadAllKeyStrokes there to prevent AptioInputFix some kind of override the key that use to enter GUI from timeout=0

Link to comment
Share on other sites

IntelCPUMonitor isn't a part of the OS, it's part of HWSensors 3.

 

Its a fresh install without HWSensors added by me.   I loaded HS 13.3 from scratch then updated to beta 13.4.    It works fine on the first boot but after a reboot it gets this error.    

Link to comment
Share on other sites

It might be in your ESP.

I erased the drive before the install. But I will try again, so far it has happened on a fresh install and two other drives that were updated from 13.2-13.3 to 13.4. There is also another user with the same error on an FX and a Ryzen system initial boot is fine but the restart gets the error.

 

My research mentioned fakesmckext and HWSensirs plug-ins but I’m not using those for my AMD setup. In fact I removed the fakesmckext from clover. It’s a long boot without it.

Link to comment
Share on other sites

×
×
  • Create New...