Contribute
Register

[Guide] Lenovo Y50 (UHD or 1080p) using Clover UEFI

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,161
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
with alcapplid=1 the HDMI audio and build-in audio both don't work

Yeah, make sense. layout-id 1 was removed from Mojave.

Try with attached AppleALC.kext (but install FakePCIID_Intel_HDMI_Audio.kext). alcapplid=2 (or even default at 7).
This AppleALC.kext removes all patching for AppleHDAController device-id 0x0c0c.
Which means with this AppleALC, you can use only FakePCIID_Intel_HDMI_Audio.kext for the HDAU mapping/spoofing (0x0c0c as 0x0a0c).

My u430 has 0x0a0c and HDMI audio is working fine (with AppleALC).

Edit: Deleted interim AppleALC build.
 
Last edited:
Joined
Oct 17, 2018
Messages
15
Motherboard
lenovo y50
Yeah, make sense. layout-id 1 was removed from Mojave.

Try with attached AppleALC.kext (but install FakePCIID_Intel_HDMI_Audio.kext). alcapplid=2 (or even default at 7).
This AppleALC.kext removes all patching for AppleHDAController device-id 0x0c0c.
Which means with this AppleALC, you can use only FakePCIID_Intel_HDMI_Audio.kext for the HDAU mapping/spoofing (0x0c0c as 0x0a0c).

My u430 has 0x0a0c and HDMI audio is working fine (with AppleALC).
With your AppleALC.kext and alcapplid=2 both HDMI audio and build-in audio are working fine. Thank you very much.
 
Joined
May 23, 2016
Messages
175
Motherboard
Lenovo Y50-70
CPU
i7-4720HQ
Graphics
HD4600 / GTX 960M 1920x1080
Mac
  1. MacBook Pro
Mobile Phone
  1. iOS
With your AppleALC.kext and alcapplid=2 both HDMI audio and build-in audio are working fine. Thank you very much.

Do you have also installed FakePCIID_Intel_HDMI_Audio.kext and FakePCIID?
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,161
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
With your AppleALC.kext and alcapplid=2 both HDMI audio and build-in audio are working fine. Thank you very much.

I assume it also works ok if you don't specify alcapplid=2 (eg. end up using the default which is 7).
Please try and report back.

I will look into a way to disable the AppleHDAController patching in AppleALC in a way that can be officially supported.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,161
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Do you have also installed FakePCIID_Intel_HDMI_Audio.kext and FakePCIID?

Yes... it would be required for mapping HDAU 0x0c0c (unsupported) to 0x0a0c (supported).
 
Joined
Oct 17, 2018
Messages
15
Motherboard
lenovo y50
I assume it also works ok if you don't specify alcapplid=2 (eg. end up using the default which is 7).
Please try and report back.

I will look into a way to disable the AppleHDAController patching in AppleALC in a way that can be officially supported.
I tried from 2 to 7, except 3(both HDMI audio and build-in audio don't work), with the other values, both HDMI audio and build-in audio work well.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,161
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
I tried from 2 to 7, except 3(both HDMI audio and build-in audio don't work), with the other values, both HDMI audio and build-in audio work well.

It means the default value of 7 is fine (likely any valid value for AppleHDA works).

But we need a more official way to disable these actions of AppleALC.

Try attached AppleALC + appropriate config.plist.

...

The config plist change injects alc-controller-patch-disable=1 on HDAU to (hopefully) avoid the default AppleALC patching to AppleHDAController, which then allows FakePCIID to do its thing unaffected by other (not as effective) things that AppleALC is trying to do.

Reply with PR files.

EDIT: Removed interim files (fix now integrated into y50 repo).
 
Last edited:
Joined
Oct 17, 2018
Messages
15
Motherboard
lenovo y50
It means the default value of 7 is fine (likely any valid value for AppleHDA works).

But we need a more official way to disable these actions of AppleALC.

Try attached AppleALC + appropriate config.plist.

This has the following change to AppleALC:
Code:
NUC6i7KYK:applealc.git rehabman$ git diff
diff --git a/AppleALC/kern_alc.cpp b/AppleALC/kern_alc.cpp
index 1a37434..0a1807b 100644
--- a/AppleALC/kern_alc.cpp
+++ b/AppleALC/kern_alc.cpp
@@ -533,6 +533,14 @@ void AlcEnabler::grabControllers() {
                        sect = WIOKit::findEntryByPrefix(sect, ADDPR(codecLookup)[lookup].tree[i], gIOServicePlane);
                     
                        if (sect && i == ADDPR(codecLookup)[lookup].controllerNum) {
+
+                // allow disabling controller patching
+                uint32_t disable;
+                if (WIOKit::getOSDataValue(sect, "alc-controller-patch-disable", disable) && disable) {
+                    SYSLOG("alc", "skipping controller at %s due to alc-controller-patch-disable", ADDPR(codecLookup)[lookup].tree[i]);
+                    break;
+                }
+
                                // Nice, we found some controller, add it
                                uint32_t ven {0}, dev {0}, rev {0}, platform {ControllerModInfo::PlatformAny}, lid {0};

T config plist change injects alc-controller-patch-disable=1 on HDAU to (hopefully) avoid the default AppleALC patching to AppleHDAController, which then allows FakePCIID to do its thing unaffected by other (not as effective) things that AppleALC is trying to do.

Reply with PR files.
With these AppleALC and config.plist, the build-in audio work but the HDMI audio doesn't work.
 

Attachments

  • Problem Reporting.zip
    4.6 MB · Views: 40

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,161
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
With these AppleALC and config.plist, the build-in audio work but the HDMI audio doesn't work.

Need full PR files as requested.
 
Top