Jump to content

Clover General discussion


ErmaC
29,866 posts in this topic

Recommended Posts

I have android OS installer on a usb stick and clover recognises it as a linux OS but when I try to boot it from clover it just says boot error. I can boot it by selecting boot options F7 before clover loads and run it without installing it (like ubuntu) so there is no hardware issues. 

Is there a way to boot android from clover as I plan on installing android alongside el captain and windows?

Link to comment
Share on other sites

The /Devices/Arbitrary feature is documented in the Clover changes thread.

 

And there are numerous guides for ACPI patching...

 

ok, wanna hear something funny?

 

There is no Realtek device (I looked for the Realtek ID 10EC) in boot log. So I'm not sure how would I use the Arbitrary feature of Clover. However, it seems to be recognized in DPCI Manager.

 

post-1303722-0-23712700-1466226110_thumb.png

 

 

Link to comment
Share on other sites

Guys, can anyone, please, fix the Clover Audio layout-id injection for Skylake? It's the best and the easier method to get that fixed. Seems I'm not the only one with this issue. I know it's probably easier said than done, but if I can help in any way (other than coding, that is, since I don't have the knowledge for that), I would be happy to do it.

IN the meantime, I'm trying the Arbitrary method to inject layout-id=1
 
Could you guys please, take a look and tell me if it's ok, or if I need all that? Like do I need "model" and "built-in"? Also, can anyone, please, tell me, how to calculate these Base64 values like AQAAAA==? Base64decode.org, for example, shows this:post-1303722-0-19112600-1466248407.png . What the hell is that? :))
 

<key>Devices</key><dict>
<key>Arbitrary</key>
<array>
<dict>
<key>PciAddr</key>
<string>00:1F.03</string> // took this from boot.log. So I'm pretty sure this is correct.
<key>Comment</key>
<string>Realtek ALC1150</string> // I suppose I can write anything here
<key>CustomProperties</key>
<array>
<dict>
<key>Key</key>
<string>model</string>
<key>Value</key>
<string>Realtek ALC1150</string> // I suppose I can write anything here. If not, where do I get the model for an audio controller?
</dict>
<dict>
<key>Key</key>
<string>built-in</string>
<key>Value</key>
<data>AQAAAA==</data> // what is this? Do I need it? In Ioreg, I already have "built-in" set to <00>
</dict>
<dict>
<key>Key</key>
<string>layout-id</string>
<key>Value</key>
<string>1</string>
</dict>
</array>
</dict>
</array>
Link to comment
Share on other sites

Yep but remembar to find the cause of the layout-id = 0 in your ioreg because is not a Clover fault  :P

EDIT

// HDA - determine layout-id
    if (gSettings.HDALayoutId > 0) {
      // layoutId is specified - use it
      layoutId = (UINT32)gSettings.HDALayoutId;
      DBG(" setting specified layout-id=%d (0x%x)\n", layoutId, layoutId);
    } else {
      // use detection: layoutId=codec dviceId or use default 12
      codecId = HDA_getCodecVendorAndDeviceIds(PciIo);
      if (codecId != 0) {
        DBG(" detected codec: %04x:%04x\n", (codecId >> 16), (codecId & 0xFFFF));
        layoutId = getLayoutIdFromVendorAndDeviceId(codecId);
      } else {
        DBG(" codec not detected\n");
      }
      // if not detected - use 12 as default
      if (layoutId == 0) {
        layoutId = 12;
      } 

 

apparently cannot be 0 but at least 12 if not set/detected

Link to comment
Share on other sites

Yep but remembar to find the cause of the layout-id = 0 in your ioreg because is not a Clover fault  :P

 

:D Well...I plan to do that. But if it's not the CPU (although other people with the same CPU architecture, namely Skylake, are having the exact same issue, can't be a coincidence), what else can it be? I do want to learn and I do want to find out the cause of this. I don't even know where to start my investigation. :))

 

So far, two people said it's an issue with Clover's layout-id injection being not supported (yet) for Skylake. These are still very new CPUs so to me, it's quite to be expected not to have support for everything. It's normal. But I honestly don't know what else could it be. If you have a way of finding out the cause of this issue, please, do tell me. I'm all in favor of that. I just don't know where to start. :(

Link to comment
Share on other sites

:D Well...I plan to do that. But if it's not the CPU (although other people with the same CPU architecture, namely Skylake, are having the exact same issue, can't be a coincidence), what else can it be? I do want to learn and I do want to find out the cause of this. I don't even know where to start my investigation. :))

 

So far, two people said it's an issue with Clover's layout-id injection being not supported (yet) for Skylake. These are still very new CPUs so to me, it's quite to be expected not to have support for everything. It's normal. But I honestly don't know what else could it be. If you have a way of finding out the cause of this issue, please, do tell me. I'm all in favor of that. I just don't know where to start. :(

Having a layout-id set in the ioreg is not a coincidence :D (the starting point for you should be there IMHO)

BTW you have to ask fusion71au here:http://www.insanelymac.com/forum/files/file/496-applehda-patcher/?st=120#commentsStarthas a Skylake system so can tell if has done something special.

@Slice may propose a change:

from:

// if not detected - use 12 as default
      if (layoutId == 0) {
        layoutId = 12;
      }  

to

// if not detected - use 3 as default
      if (layoutId == 0) {
        layoutId = 3;
      }  

layout-12 is no longer popular (as well for "getLayoutIdFromVendorAndDeviceId" .. never see that happened for a while patching AppleHDA)

  • Like 2
Link to comment
Share on other sites

I've got this problem. Booting 10.11.5. This happens after selecting the drive,

 

C1zXVCj.jpg

 

Here is my config,

 

attachicon.gifconfig.plist.zip

You have to fully install Update clover r3566 package.

 

I have this problem before. Dont use copy and paste bootx64.efi and etc.

 

나의 LG-F410S 의 Tapatalk에서 보냄

Having a layout-id set in the ioreg is not a coincidence :D (the starting point for you should be there IMHO)

BTW you have to ask fusion71au here:http://www.insanelymac.com/forum/files/file/496-applehda-patcher/?st=120#commentsStarthas a Skylake system so can tell if has done something special.

 

@Slice may propose a change:

from:

// if not detected - use 12 as default
      if (layoutId == 0) {
        layoutId = 12;
      }
to
// if not detected - use 3 as default
      if (layoutId == 0) {
        layoutId = 3;
      }
layout-12 is no longer popular (as well for "getLayoutIdFromVendorAndDeviceId" .. never see that happened for a while patching AppleHDA)
Good. But most of codecs are divided by desktop and laptop.

 

Mirone use desktop layout 1 and laptop layout 3.

 

What is focus on default? Desktop Or laptop?

 

나의 LG-F410S 의 Tapatalk에서 보냄

  • Like 1
Link to comment
Share on other sites

You have to fully install Update clover r3566 package.

 

I have this problem before. Dont use copy and paste bootx64.efi and etc.

 

나의 LG-F410S 의 Tapatalk에서 보냄

 

It's r3556 I've got. Can't see r3566 anywhere... Found it. I'll give it a go. Probably should mention this is an AMD system too. The one in my signature. 

Link to comment
Share on other sites

Yep but remembar to find the cause of the layout-id = 0 in your ioreg because is not a Clover fault  :P

EDIT

// HDA - determine layout-id
    if (gSettings.HDALayoutId > 0) {
      // layoutId is specified - use it
      layoutId = (UINT32)gSettings.HDALayoutId;
      DBG(" setting specified layout-id=%d (0x%x)\n", layoutId, layoutId);
    } else {
      // use detection: layoutId=codec dviceId or use default 12
      codecId = HDA_getCodecVendorAndDeviceIds(PciIo);
      if (codecId != 0) {
        DBG(" detected codec: %04x:%04x\n", (codecId >> 16), (codecId & 0xFFFF));
        layoutId = getLayoutIdFromVendorAndDeviceId(codecId);
      } else {
        DBG(" codec not detected\n");
      }
      // if not detected - use 12 as default
      if (layoutId == 0) {
        layoutId = 12;
      } 
 

apparently cannot be 0 but at least 12 if not set/detected

 

It has been a while since I looked at it, but from what I remember Clover cannot find the PCI audio device on (some) Skylake because it is searching for PCI class incorrectly...

 

Note that Apple changed the class match for AppleHDAController because they made the same mistake:

 

10.7.5 and 10.11.5 happen to be the two versions I have installed on my desktop:

10.7.5: IOPCIClassMatch=0x04020000&0xFFFE0000

10.11.5: IOPCIClassMatch=0x04010000&0xFFFD0000

 

It is possible Clover code was based on the old/wrong IOPCIClassMatch.

 

I don't use Clover audio inject (prefer ACPI or /Devices/Arbitrary), so I didn't bother trying to fix it...

  • Like 2
Link to comment
Share on other sites

It's r3556 I've got. Can't see r3566 anywhere... Found it. I'll give it a go. Probably should mention this is an AMD system too. The one in my signature.

I posted #10416. Do you have same situtation? If you use f1 help menu

 

나의 LG-F410S 의 Tapatalk에서 보냄

Link to comment
Share on other sites

It has been a while since I looked at it, but from what I remember Clover cannot find the PCI audio device on Skylake because it is searching for PCI class incorrectly...

 

Note that Apple changed the class match for AppleHDAController because they made the same mistake:

 

10.7.5 and 10.11.5 happen to be the two versions I have installed on my desktop:

10.7.5: IOPCIClassMatch=0x04020000&0xFFFE0000

10.11.5: IOPCIClassMatch=0x04010000&0xFFFD0000

 

It is possible Clover code was based on the old/wrong IOPCIClassMatch.

 

I don't use Clover audio inject (prefer ACPI or /Devices/Arbitrary), so I didn't bother trying to fix it...

Anyway did not see peoples doing layoutXXXX.xml based on this.

Link to comment
Share on other sites

I posted #10416. Do you have same situtation? If you use f1 help menu

 

나의 LG-F410S 의 Tapatalk에서 보냄

Help menu works OK. Using r3566 instead of my earlier picture I now just get this rather than OS X booting

 

bc200299964dfeb786cb23d9b60bb405.jpg

 

Sent from my SM-G920F using Tapatalk

Link to comment
Share on other sites

Anyway did not see peoples doing layoutXXXX.xml based on this.

It is not a layout XML problem. It is a problem trying to use config.plist/Audio/Inject to inject layout-id.

 

Clover has to find the PCI device for onboard audio... and the mask/compare it is using to compare the PCI class is wrong and only works pre-Skylake (or SKL systems without the alternate HDA class).

 

This is the code, Settings.c/SetDevices:

        else if (gSettings.HDAInjection &&
                 (Pci.Hdr.ClassCode[2] == PCI_CLASS_MEDIA) &&
                 (Pci.Hdr.ClassCode[1] == PCI_CLASS_MEDIA_HDA)) {
          //no HDMI injection
          if ((Pci.Hdr.VendorId != 0x1002) &&
              (Pci.Hdr.VendorId != 0x10de)) {
            TmpDirty    = set_hda_props (PciIo, &PCIdevice, Entry->OSVersion);
            StringDirty |= TmpDirty;
          }
        }
PCI_CLASS_MEDIA is defined in Pci22.h:

#define PCI_CLASS_MEDIA               0x04
PCI_CLASS_MEDIA_HDA is defined in Platform.h:

#define PCI_CLASS_MEDIA_HDA         0x03
Some SKL systems have the HDAS as:

0:101  0:000  PCI (00|00:1F.03) : 8086 A170 class=040100
It matches against the updated IOPCIClassMatch for AppleHDAController, but does not match for what Clover is looking for.

 

An EFI/Clover + Clover bootlog + ioreg should help clarify what is happening...

Link to comment
Share on other sites

×
×
  • Create New...