Jump to content

Clover General discussion


ErmaC
30,171 posts in this topic

Recommended Posts

On 6/1/2019 at 10:25 AM, Slice said:

Looks like your ACPI has some difficulties for Clover. Provide, please, debug.log to see the moment of the stop.

 

 

I checked the debug.log but didn't see anything.

 

On 6/1/2019 at 10:34 AM, arsradu said:

Running 4934 here. Aaand..no issues getting the ACPI tables on my side. So, as Slice mentioned, it's most likely something specific for your case. :)

 

Just wanted to share my own results, so you don't think it's a general issue with this version. Cause it doesn't look like it.

 

I mentioned the version which I used recently. But this has happened to me with the earlier version too. Just like you said probably this is specific to my case.

debug.log

  • Like 2
Link to comment
Share on other sites

1 hour ago, telepati said:

 

I checked the debug.log but didn't see anything.

 

debug.log

You said the the boot freezed but in this debug.log there are no freezes. Reproduce the action with freeze.

Link to comment
Share on other sites

6 hours ago, Slice said:

You said the the boot freezed but in this debug.log there are no freezes. Reproduce the action with freeze.

 

I don't know how do I do that?  When the clover freeze I am making force restart from the case and next boot clover creates a new debug.log without freeze log. is clover capable of creating multiple debug.log for every boot?

 

Cause when I make a boot I can see just one debug.log file in the MISC folder.

Edited by telepati
Link to comment
Share on other sites

Will Clover in the future support Symbolic kext and kernel patcher like OpenCore, so you don't always have to update Clover to support the latest version of macOS?

 

Edited by Cod32
Link to comment
Share on other sites

2 hours ago, Cod32 said:

Will Clover in the future support Symbolic kext and kernel patcher like OpenCore, so you don't always have to update Clover to support the latest version of macOS?

 

Make pull request please.

Link to comment
Share on other sites

Hi @Slice

 

Thanks for merging, but I made a very stupid typo in FakeCPUID patch, which can be checked here:

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l569

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l578

 

&HSieMojSearchModel[0] and &CataSearchModel[0] got reversed by accident, and I think you know the correct order. ;)

 

By the way, I also missed a prompt line like

DBG_RT(Entry, "...done!\n");

 

Please fix it! Thanks!

 

PMheart

  • Like 3
Link to comment
Share on other sites

1 hour ago, PMheart said:

Hi @Slice

 

Thanks for merging, but I made a very stupid typo in FakeCPUID patch, which can be checked here:

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l569

https://sourceforge.net/p/cloverefiboot/code/4939/tree//rEFIt_UEFI/Platform/kernel_patcher.c#l578

 

&HSieMojSearchModel[0] and &CataSearchModel[0] got reversed by accident, and I think you know the correct order. ;)

 

By the way, I also missed a prompt line like

DBG_RT(Entry, "...done!\n");

 

Please fix it! Thanks!

 

PMheart

OK, committed.

  • Like 2
  • Thanks 2
Link to comment
Share on other sites

11 hours ago, telepati said:

 

I don't know how do I do that?  When the clover freeze I am making force restart from the case and next boot clover creates a new debug.log without freeze log. is clover capable of creating multiple debug.log for every boot?

 

Cause when I make a boot I can see just one debug.log file in the MISC folder.

Yes, debug.log is concatenated with previous one so you can see first attempt up to freeze and then next successful start.

  • Like 1
Link to comment
Share on other sites

Hi,

 

I have updated XCPM patches in kernel_patcher.c (is there still anyone using KernelXCPM now? ...) and checked some parts (RTC and PCI) in kext_patcher.c (although it turned out that all the old patches still remain available, I'd still like to do this renaming, just for confirmation. :))

 

Index: rEFIt_UEFI/Platform/kernel_patcher.c
===================================================================
--- rEFIt_UEFI/Platform/kernel_patcher.c	(revision 4940)
+++ rEFIt_UEFI/Platform/kernel_patcher.c	(working copy)
@@ -896,6 +896,11 @@
         STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
         STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC1, 0x3C, 0x22 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
+    // PMheart: attempt to add 10.15 compatibility
+    } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+        STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+        STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC1, 0x3C, 0x22 };
+        applyKernPatch(kern, find, sizeof(find), repl, comment);
     }
     
     DBG("Searching _xcpm_pkg_scope_msr ...\n");
@@ -1051,12 +1056,17 @@
         STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
         STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC6, 0x3C, 0x22 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
+    // PMheart: attempt to add 10.15 compatibility
+    } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+        STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+        STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC6, 0x3C, 0x22 };
+        applyKernPatch(kern, find, sizeof(find), repl, comment);
     }
 
     comment = "_cpuid_set_info_rdmsr";
-    // PMheart: attempt to add 10.14 compatibility
-    if (os_version >= AsciiOSVersionToUint64("10.12") && os_version < AsciiOSVersionToUint64("10.15")) {
-        // 10.12 - 10.14
+    // PMheart: bytes seem stable as of 10.12
+    if (os_version >= AsciiOSVersionToUint64("10.12")) {
+        // 10.12+
         STATIC UINT8 find[] = { 0xB9, 0xA0, 0x01, 0x00, 0x00, 0x0F, 0x32 };
         STATIC UINT8 repl[] = { 0xB9, 0xA0, 0x01, 0x00, 0x00, 0x31, 0xC0 };
         applyKernPatch(kern, find, sizeof(find), repl, comment);
@@ -1138,6 +1148,11 @@
     STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
     STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC6, 0x3C, 0x22 };
     applyKernPatch(kern, find, sizeof(find), repl, comment);
+  // PMheart: attempt to add 10.15 compatibility
+  } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+      STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+      STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC6, 0x3C, 0x22 };
+      applyKernPatch(kern, find, sizeof(find), repl, comment);
   }
   
   DBG("KernelIvyBridgeXCPM() <===\n");
@@ -1279,8 +1294,13 @@
   } else if (os_version < AsciiOSVersionToUint64("10.15")) {
     // 10.13/10.14
     STATIC UINT8 find[] = { 0x89, 0xD8, 0x04, 0xC4, 0x3C, 0x22 };
-    STATIC UINT8 repl[] = { 0x89, 0xD8, 0xC2, 0xC1, 0x3C, 0x22 };
+    STATIC UINT8 repl[] = { 0x89, 0xD8, 0x04, 0xC1, 0x3C, 0x22 };
     applyKernPatch(kern, find, sizeof(find), repl, comment);
+  // PMheart: attempt to add 10.15 compatibility
+  } else if (os_version < AsciiOSVersionToUint64("10.16")) {
+      STATIC UINT8 find[] = { 0x8D, 0x43, 0xC4, 0x3C, 0x22 };
+      STATIC UINT8 repl[] = { 0x8D, 0x43, 0xC1, 0x3C, 0x22 };
+      applyKernPatch(kern, find, sizeof(find), repl, comment);
   }
   
   DBG("KernelIvyE5XCPM() <===\n");
Index: rEFIt_UEFI/Platform/kext_patcher.c
===================================================================
--- rEFIt_UEFI/Platform/kext_patcher.c	(revision 4940)
+++ rEFIt_UEFI/Platform/kext_patcher.c	(working copy)
@@ -410,9 +410,9 @@
 STATIC UINT8   MavMoj3Search[]  = { 0x75, 0x2e, 0x0f, 0xb6 };
 STATIC UINT8   MavMoj3Replace[] = { 0xeb, 0x2e, 0x0f, 0xb6 };
 
-// RodionS: 10.14.4+
-STATIC UINT8   Moj4Search[]  = { 0x75, 0x33, 0x0f, 0xb7 };
-STATIC UINT8   Moj4Replace[] = { 0xeb, 0x33, 0x0f, 0xb7 };
+// RodionS: 10.14.4+ / 10.15 DB1
+STATIC UINT8   Moj4CataSearch[]  = { 0x75, 0x33, 0x0f, 0xb7 };
+STATIC UINT8   Moj4CataReplace[] = { 0xeb, 0x33, 0x0f, 0xb7 };
 
 //
 // We can not rely on OSVersion global variable for OS version detection,
@@ -442,7 +442,7 @@
     NumLion_X64 = SearchAndCount(Driver, DriverSize, LionSearch_X64, sizeof(LionSearch_X64));
     NumML  = SearchAndCount(Driver, DriverSize, MLSearch,  sizeof(MLSearch));
     NumMavMoj3 = SearchAndCount(Driver, DriverSize, MavMoj3Search, sizeof(MavMoj3Search));
-    NumMoj4 = SearchAndCount(Driver, DriverSize, Moj4Search, sizeof(Moj4Search));
+    NumMoj4 = SearchAndCount(Driver, DriverSize, Moj4CataSearch, sizeof(Moj4CataSearch));
   } else {
     NumLion_i386 = SearchAndCount(Driver, DriverSize, LionSearch_i386, sizeof(LionSearch_i386));
   }
@@ -469,7 +469,7 @@
     Num = SearchAndReplace(Driver, DriverSize, MavMoj3Search, sizeof(MavMoj3Search), MavMoj3Replace, 1);
     DBG_RT(Entry, "==> Mav/Yos/El/Sie/HS/Moj3 X64: %d replaces done.\n", Num);
   } else if (NumMoj4 == 1) {
-    Num = SearchAndReplace(Driver, DriverSize, Moj4Search, sizeof(Moj4Search), Moj4Replace, 1);
+    Num = SearchAndReplace(Driver, DriverSize, Moj4CataSearch, sizeof(Moj4CataSearch), Moj4CataReplace, 1);
     DBG_RT(Entry, "==> Mojave4 X64: %d replaces done.\n", Num);
   } else {
     DBG_RT(Entry, "==> Patterns not found - patching NOT done.\n");
@@ -841,8 +841,8 @@
 STATIC UINT8   BroadwellE_IOPCI_Repl_SieHS[] = { 0x48, 0x81, 0xFB, 0x00, 0x00, 0x00, 0x80 };
 
 // Mojave
-STATIC UINT8   BroadwellE_IOPCI_Find_Moj[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x40 };
-STATIC UINT8   BroadwellE_IOPCI_Repl_Moj[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x80 };
+STATIC UINT8   BroadwellE_IOPCI_Find_MojCata[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x40 };
+STATIC UINT8   BroadwellE_IOPCI_Repl_MojCata[] = { 0x48, 0x3D, 0x00, 0x00, 0x00, 0x80 };
 
 VOID BDWE_IOPCIPatch(UINT8 *Driver, UINT32 DriverSize, CHAR8 *InfoPlist, UINT32 InfoPlistSize, LOADER_ENTRY *Entry)
 {
@@ -864,7 +864,7 @@
   } else if (os_ver < AsciiOSVersionToUint64("10.14")) {
     count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_SieHS, sizeof(BroadwellE_IOPCI_Find_SieHS), BroadwellE_IOPCI_Repl_SieHS, 0);
   } else {
-    count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_Moj, sizeof(BroadwellE_IOPCI_Find_Moj), BroadwellE_IOPCI_Repl_Moj, 0);
+    count = SearchAndReplace(Driver, DriverSize, BroadwellE_IOPCI_Find_MojCata, sizeof(BroadwellE_IOPCI_Find_MojCata), BroadwellE_IOPCI_Repl_MojCata, 0);
   }
   
   if (count) {

 

Thanks!

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

25 minutes ago, Wackymac said:

does anyone know how to find what "CPUType" is supported in which smbios? and more importantly the value to use?

Let Clover do this itself.

  • Like 1
Link to comment
Share on other sites

22 hours ago, Matgen84 said:

Hi

 

Latest r4940 failed twice to install (compile with kids script UDK2018). Anyone have this problem?

Capture d’écran 2019-06-04 à 12.07.19.png

 

Uhm....nope. No such issue on my side. I've had 4940 a few days ago. Now I'm on 4945. But no...no such issues on my side.

Link to comment
Share on other sites

1 minute ago, arsradu said:

 

Uhm....nope. No such issue on my side. I've had 4940 a few days ago. Now I'm on 4945. But no...no such issues on my side.

 

I use newfs_mdos command and reinstall Clover on EFI partition. Succeed. I don't know why there is such issue. I'm on 4945 now.

Link to comment
Share on other sites

Just now, Matgen84 said:

 

Thanks. 

 

what is the reason for the installation failure

ESP already corrupted, otherwise why use newfs_mdos? Anyway when that happens you can find the reason by looking at the installation log of Installer.app by just looking at its Menu before closing the application.

  • Like 1
Link to comment
Share on other sites

16 minutes ago, vector sigma said:

ESP already corrupted, otherwise why use newfs_mdos? Anyway when that happens you can find the reason by looking at the installation log of Installer.app by just looking at its Menu before closing the application.

 

 

I use newfs_msdos command because I supposed ESP corrupted when I try to install Clover. 
I did not know there was a install.log in Installer.app

 

Sorry for my bad english

Link to comment
Share on other sites

38 minutes ago, Matgen84 said:

I use newfs_msdos command because I supposed ESP corrupted when I try to install Clover. 

Why I told you was corrupted already:

 

4 hours ago, Matgen84 said:

I use newfs_mdos command and reinstall Clover on EFI partition. Succeed.

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, Matgen84 said:

 

 

I use newfs_msdos command because I supposed ESP corrupted when I try to install Clover. 
I did not know there was a install.log in Installer.app

 

Sorry for my bad english

See in Root disk /Volumes

2074230145_Capturedcranle2019-06-0510_14_42.png.fef38059aaf7d764e40147ce065a6741.png

 

if you have folder EFI, ESP or EFIROOTDIR delete them and try again

Edited by chris1111
  • Thanks 2
Link to comment
Share on other sites

39 minutes ago, chris1111 said:

See in Root disk /Volumes

2074230145_Capturedcranle2019-06-0510_14_42.png.fef38059aaf7d764e40147ce065a6741.png

 

if you have folder EFI, ESP or EFIROOTDIR delete them and try again

 


 

The problem has been solved for two days already. Thank you for this tip :)

  • Like 1
Link to comment
Share on other sites

20 hours ago, Slice said:

Let Clover do this itself. 

well currently im on iMac Pro SMBIOS and have a core i9. so it doesnt work. ide have to switch over to iMac 19.1 (i think?) but the rest of my hardware fits better with the iMac Pro. @MaLd0n claims that 0x1009 should work. but it doesn't. so im wondering where you find said info.

 

**i should clarify that is a skylake-x i9

Edited by Wackymac
Link to comment
Share on other sites

×
×
  • Create New...