Jump to content

Clover Problems and Solutions


ErmaC
3,206 posts in this topic

Recommended Posts

@Slice

 

It seems that XPS 13 9350(Skylake) has a bug that Clover failed to inject long ProductName, e.g. if I set ProductName to MacBookPro13,1 macOS just shows MacBookPro1

 

Any other information I have to provide? For example the ioreg, screenshot after setting ProductName to MacBookPro13,1 ...?

 

syscl

Make, please, full DarwinDumper report in this case.

Exclude: BIOS, OpenCL, HTML report. Compress to LZMA and upload here.

My test was that :   (AsciiStrStr(gKextBoundleIdentifier, Entry->KernelAndKextPatches->KextPatches[i].Name) != NULL) )

 

 

Yes, you are right. "StrStr != Null" instead of "StrStr == 0" as cecekpawon made. Clover 3956 correct.

Link to comment
Share on other sites

Make, please, full DarwinDumper report in this case.

Exclude: BIOS, OpenCL, HTML report. Compress to LZMA and upload here.

Yes, you are right. "StrStr != Null" instead of "StrStr == 0" as cecekpawon made. Clover 3956 correct.

@Slice

 

Here you go~

Since I haven't had the permission to upload lamz, thus I compress lzma into zip.

DarwinDumper_3.0.2_07.12_02.29.02_MacBookPro1_AMI_X64_3949_Sierra_16B2657_syscl.tar.lzma.zip

 

syscl

Link to comment
Share on other sites

here is kexttopatch.

 

wifi patch is not working.

 

i maybe think that info.plist patch is not working. other hex patches are working(sound, boot glitch patch, trim enabler).

 

here

Sherlocks,

I have to remind that KextPatch will work only for kext that loaded into kernelcache, or ForcedLoaded from Clover folder.

But you can't patch kext that have no name match because it is not loaded yet.

You want to correct NameMatch but the kext is not loaded yet because Name is not Matched before patch. 

Understand?

Link to comment
Share on other sites

Sherlocks,

I have to remind that KextPatch will work only for kext that loaded into kernelcache, or ForcedLoaded from Clover folder.

But you can't patch kext that have no name match because it is not loaded yet.

You want to correct NameMatch but the kext is not loaded yet because Name is not Matched before patch.

Understand?

Okay. I just wondered that working or not working compared before in latest commit.

 

Usually use binary patch name in many patches before. So i understand only use binary name.

 

Example AirPortBrcm4360 binary file in MacOS folder.

 

But Fred mention it, com.apple.driver.AirPortBrcm4360 on IOKitPersonalities in info.plist.

 

So i started confusion.

 

I understand what you said now.

 

Thank you.

 

 

나의 LG-F410S 의 Tapatalk에서 보냄

Sherlocks

 

The problem is that Clover without this patch, in some case try to patch kext not related with what you want to patch!

It works because bytes are not found in bin, but in case of found, what will happen ? OS X will not boot.

 

 

Here is part of my config.

attachicon.gifconfig.plist.zip

 

Fred

I understand now.

 

I see your config.plist file.

 

You added PCI 1-3 patches. I dont use pci 1-3. I know some laptop need more binary patch. But there is not me in this case.

 

I just compared before. Now, i learned more info and checked code from you and Slice. I can understand structure for operation.

 

 

Thank you

 

 

 

나의 LG-F410S 의 Tapatalk에서 보냄

Link to comment
Share on other sites

@Slice

 

Here you go~

Since I haven't had the permission to upload lamz, thus I compress lzma into zip.

attachicon.gifDarwinDumper_3.0.2_07.12_02.29.02_MacBookPro1_AMI_X64_3949_Sierra_16B2657_syscl.tar.lzma.zip

 

syscl

As I see the cutted name comes from Clover. It is strange as I can't replicate the behavior.

Did you manually edit GUI->SMBIOS?

Link to comment
Share on other sites

As I see the cutted name comes from Clover. It is strange as I can't replicate the behavior.

Did you manually edit GUI->SMBIOS?

Nope. This is the so called "restriction" like I said. - When the SMBios is greater than 11 chars (e.g. MacBookPro13,3) and then only 11 chars are accepted. That is MacBookPro1. So that's why yesterday I suggested you use MacBook as the default SMBios since MacBookx,x is only 10 chars. And in the future if MacBook gets updated (Like MacBook10,1) and just up to 11 chars. This is legal. (Less than/Equal to 11 anyway.) This can work properly. But using MacBookPro or MacBookAir is a better way. And any idea to fix this? Thanks.

 

Edit: I suppose this may be related to motherboard cuz it seems that only Dell Skylake laptop has this bug. Other laptops have not found this issue yet.

 

PMheart

  • Like 1
Link to comment
Share on other sites

There is no restriction. Proof

Screen Shot 2016-12-07 at 16.27.58.png

 

I just want to find an origin of the error. It is not an error of Clover as I shown on the screen made now.

It is not an error of macOS as you see also from this screen.

It is not an error of BIOS because I checked ioreg.txt and see the cutted name written into "Model" which comes from DataHubDxe which get it from gSettings.ProductName which comes from config.plist or from GUI. Nothing more.

I came to conclusion that users made something else to get this effect. It is not my error as you see from my screenshot.

Link to comment
Share on other sites

There is no restriction. Proof

attachicon.gifScreen Shot 2016-12-07 at 16.27.58.png

 

I just want to find an origin of the error. It is not an error of Clover as I shown on the screen made now.

It is not an error of macOS as you see also from this screen.

It is not an error of BIOS because I checked ioreg.txt and see the cutted name written into "Model" which comes from DataHubDxe which get it from gSettings.ProductName which comes from config.plist or from GUI. Nothing more.

I came to conclusion that users made something else to get this effect. It is not my error as you see from my screenshot.

The bug (wherever it is) only happens on certain (relatively new) Dell computers/laptops.

 

I did a little google search and found an example (there are many such examples).

 

See here: https://www.tonymacx86.com/threads/bcm94350zae-14e4-43a3-not-working-in-10-11.188509/page-2#post-1226888

 

You can see in config.plist/SMBIOS the full name MacBookPro12,1, but in ioreg MacBookPro1.

  • Like 1
Link to comment
Share on other sites

As I see the cutted name comes from Clover. It is strange as I can't replicate the behavior.

Did you manually edit GUI->SMBIOS?

This occurs on both XPS 13 (9350) and XPS 15 (9550) model, which are both skylake model. In Dell Precision M3800(Haswell) model, no such issue. 

 

Any idea @Slice?

 

syscl

Link to comment
Share on other sites

The bug (wherever it is) only happens on certain (relatively new) Dell computers/laptops.

 

I did a little google search and found an example (there are many such examples).

 

See here: https://www.tonymacx86.com/threads/bcm94350zae-14e4-43a3-not-working-in-10-11.188509/page-2#post-1226888

 

You can see in config.plist/SMBIOS the full name MacBookPro12,1, but in ioreg MacBookPro1.

 

This occurs on both XPS 13 (9350) and XPS 15 (9550) model, which are both skylake model. In Dell Precision M3800(Haswell) model, no such issue. 

 

Any idea @Slice?

 

syscl

Guys,

Open Clover sources.

Search all occurrence of ProductName, where it set and how it used.

First assignment is

  Prop = GetProperty (DictPointer, "ProductName");
  if (Prop != NULL) {
    MACHINE_TYPES Model;
    AsciiStrCpy (gSettings.ProductName, Prop->string);
 

Can there be a possible problem?

 

Last use before start a system is 

    LogDataHub(&gEfiMiscSubClassGuid,      L"Model",                ProductName,         (UINT32)StrSize(ProductName));

I check ioregDT.txt to see in syscl report that the nam is already cutted here. This place is not accessible for any custom patches and BIOS influence. 

As well I see SMBIOS.Table1 contains cutted name.

So I must propose that gSettings.ProductName is already "MacBookPro1". 

To check if read from config.plist works I started my computer with such config and show you result.

NO. Clover works without error. In my case the name if FULL. Someone else cuts your ProductName for Clover read only 10 chars. It is not my error and it can not depend on hardware. All this happen from config.plist, Clover GUI with manual editing and inside Clover. No BIOS, no motherboard, no external wisard.

Link to comment
Share on other sites

Guys,

Open Clover sources.

Search all occurrence of ProductName, where it set and how it used.

First assignment is

  Prop = GetProperty (DictPointer, "ProductName");
  if (Prop != NULL) {
    MACHINE_TYPES Model;
    AsciiStrCpy (gSettings.ProductName, Prop->string);
 
Can there be a possible problem?

 

Last use before start a system is 

    LogDataHub(&gEfiMiscSubClassGuid,      L"Model",                ProductName,         (UINT32)StrSize(ProductName));

I check ioregDT.txt to see in syscl report that the nam is already cutted here. This place is not accessible for any custom patches and BIOS influence. 

As well I see SMBIOS.Table1 contains cutted name.

So I must propose that gSettings.ProductName is already "MacBookPro1". 

To check if read from config.plist works I started my computer with such config and show you result.

NO. Clover works without error. In my case the name if FULL. Someone else cuts your ProductName for Clover read only 10 chars. It is not my error and it can not depend on hardware. All this happen from config.plist, Clover GUI with manual editing and inside Clover. No BIOS, no motherboard, no external wisard.

 

Unless you have one of the laptops that shows the bug, you will not be able to reproduce the problem.

It has something to do with SMBIOS patching...

I assure you it is not user error. The bug is real and consistent with the laptops in question. Reason unknown.

Link to comment
Share on other sites

@syscl

Check, please, if you have a file  SMBIOS.PLIST in your CLOVER folder. If no then check for invisible files.

 

Guys, how did you imagine Dell hardware may influence on Clover reading config.plist? Nonsense.

Link to comment
Share on other sites

@syscl

Check, please, if you have a file  SMBIOS.PLIST in your CLOVER folder. If no then check for invisible files.

 

Guys, how did you imagine Dell hardware may influence on Clover reading config.plist? Nonsense.

It seems that only Dell Skylake laptops have this bug. The legacy platform like Broadwell does not. And other models like Asus does not too... So this can be related to motherboard... Just guessing.

Link to comment
Share on other sites

It seems that only Dell Skylake laptops have this bug. The legacy platform like Broadwell does not. And other models like Asus does not too... So this can be related to motherboard... Just guessing.

Again. How did you imagine it can influence on Clover reading config.plist?

Link to comment
Share on other sites

Again. How did you imagine it can influence on Clover reading config.plist?

Sorry I don't know... I don't own Skylake models. As @RehabMan and @syscl said, this only happened on certain Dell Skylake models. And I don't think this is related to config.plist. Maybe hardware issues.

BTW I'd like to know how Clover patches SMBios? Thanks

 

PMheart

  • Like 1
Link to comment
Share on other sites

Sorry I don't know... I don't own Skylake models. As @RehabMan and @syscl said, this only happened on certain Dell Skylake models. And I don't think this is related to config.plist. Maybe hardware issues.

Hardware issue can't influence on clovers calculations.

It is user's issue.

BTW I'd like to know how Clover patches SMBios? Thanks

 

PMheart

Create it from zero using data from original smbios.

Did you propose that original SMBIOS will contain "MacBookPro1"?

Link to comment
Share on other sites

Sorry I don't know... I don't own Skylake models. As @RehabMan and @syscl said, this only happened on certain Dell Skylake models. And I don't think this is related to config.plist. Maybe hardware issues.

BTW I'd like to know how Clover patches SMBios? Thanks

 

PMheart

 

Post a link to your EFI directory.

 

Fred

Link to comment
Share on other sites

If it happens after that then I will see on my computer. Don't.

Are you testing it on one of the Skylake Dell laptops that is affected?

 

Someone with the affected hardware and some coding skills needs to take a close look at it.

Link to comment
Share on other sites

Hardware issue can't influence on clovers calculations.

It is user's issue.

Create it from zero using data from original smbios.

Did you propose that original SMBIOS will contain "MacBookPro1"?

Nope. I can assure this is not users' issues. Maybe Clover bug. But not reading config.plist...

 

Post a link to your EFI directory.

 

Fred

Ah necessary? I don't own SKL models. Here is the EFI folder of my DIY (Configurations, please check my signature.) if necessary: (I just kept the main part to reduce the archive size.)

 

If it happens after that then I will see on my computer. Don't.

Cuz you are't currently using a Dell Skylake. As I said. Seems other models don't have this bug.

Link to comment
Share on other sites

×
×
  • Create New...