- Joined
- Jul 18, 2021
- Messages
- 11
- Motherboard
- Lenovo Thinkpad T430
- CPU
- I5-3320
- Graphics
- Intel HD Graphics 4000
- OS X/macOS
- 10.13.x
- Bootloader
- OpenCore (UEFI)
- Mobile Phone
- Android
- iOS
Become a Premium Member for $25/year with no ads to improve your community experience.
MBP15,2 is a poor choice for your hardware. Use MBP9,2 instead. For Audio, use SSDT-HDEF and make sure to add the correct layout ID. The same layout ID must be used in your config.plist too. In Device Properties and in boot-args.
For Laptops, i recommend patching full set ACPI, Hotpatch can work but requires more advance knowledge.Thank you for this tip.
Unfortunately, I didn't manage to make sound work.
:/
First, using MBP9,2 leads to :
View attachment 3606
No booting process allowed anymore.
After some search, I had to add "-no_compat_check" in the "boot-args" section in order to allow the operating system to boot on a prohibited mac hardware.
Now, it's fine
View attachment 3607
Yes, I'm kind of a newbie, that's why I need help and maybe detailed help.
I tried anything using SSDT-HDEF but I probably missed something important because it's impossible to see the sound device in macOS.
I can see it in ioreg though with ALC-layout-id 23 (0x17) :
View attachment 3609
This alc-layout-id is the same in config.plist :
in boot-args section :
View attachment 3610
and in device properties section :
View attachment 3611
Note that there is also a "layout-id" (value : 07) which is not "alc-layout-id" and is confusing...
Your SSDT-HDEF evocation leads to there :
Nothing in this website seems to be made for ALC3202 or ALC269 chips except these two SSDTs :audio_ALCInjection/ssdt_hdef at master · toleda/audio_ALCInjection
macOS Realtek ALC885 through ALC1220 Onboard Audio - toleda/audio_ALCInjectiongithub.com
"ssdt_hdef-3-no_ioreg/hdef
Supports Realtek ALC/Audio ID; 3 - HD3000/HD4000 HDMI and motherboard audio
Injects Device (HDEF) and Audio ID: 3 (layout-id: 0x03, 0x00, 0x00, 0x00)
ssdt_hdef-3-with_ioreg/hdef
Supports Realtek ALC/Audio ID; 3 - HD3000/HD4000 HDMI and motherboard audio
Injects Audio ID: 3 (layout-id: 0x03, 0x00, 0x00, 0x00)"
One more time a "layout-id" appears here which is neither 0x17 nor 0X07 but 0x03 and is a bit more confusing... I imagine that this audio-ID refers to the type of SSDT-HDEF used (ssdt_hdef-3) but I'm not sure.
I tried those two : no success. Then I tried those two again but this time with a patched DSDT using RehabMan's [Audio layer 3] (like higher) patch. Again : does not work.
Every time, "Pin configurations" is empty in ioreg and it should not be empty, am I wrong ?
View attachment 3612
Could you please be more precise concerning the right way to activate audio ? It appears that doing random stuff without knowing exactly where it's leading and what every patch is doing is not really efficient .
Of course, I've joined ioreg, and verbose log if it can help.
Thanks.
In ACPI, it's Decimal to Hexadecimal. For e.g., if you want to use Layout ID=13, the Hexadecimal value will be D. In ACPI, it will be changed to 0x0D. If you want to use Layout iD=28, the Hexadecimal value will be 1C. In ACPI, it will be changed to 0x1C.Layout ID=17 00 00 00 in Device Properties is hex value (0x17 = 23 decimal value) and alcid=23 in boot-args is directly decimal value. I thought that it was the right way to declare these values but if I'm wrong, what's the good way to declare these values ?
For SSDT-HDEF, the layout ID will be 0x1CShould I put decimal 28 value in every place refering to a layout-id ?
Well, it's upto you how soon you give up or put efforts and manage to get things working.Thank you EliteMacx86 for your explanation. I'll try this asap. See you soon.
[edit] : SSDT-HDEF with layout 0x1C + alcid=28 + layout-ID=28 in Device Properties = still no sound card detected.
:'(
I'm about to give up, I can't get it, i don't understand.
DefinitionBlock ("", "SSDT", 2, "hack", "_HDEF", 0x00000000)
{
External (RMCF.AUDL, IntObj) // (from opcode)
External (RMCF.DAUD, IntObj) // (from opcode)
External (RMDA, IntObj) // (from opcode)
Method (_SB.PCI0.HDEF._DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If (CondRefOf (\RMCF.AUDL))
{
If (LEqual (Ones, \RMCF.AUDL))
{
Return (Zero)
}
}
If (LNot (Arg2))
{
Return (Buffer (One)
{
0x03
})
}
Store (Package (0x08)
{
"layout-id",
Buffer (0x04)
{
0x1C, 0x00, 0x00, 0x00
},
"hda-gfx",
Buffer (0x0A)
{
"onboard-1"
},
"no-controller-patch",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"PinConfigurations",
Buffer (Zero){}
}, Local0)
If (CondRefOf (\RMCF.AUDL))
{
CreateDWordField (DerefOf (Index (Local0, One)), Zero, AUDL)
Store (\RMCF.AUDL, AUDL)
}
Store (Zero, Local1)
If (CondRefOf (\RMDA))
{
Store (One, Local1)
}
If (CondRefOf (\RMCF.DAUD))
{
If (LEqual (Zero, \RMCF.DAUD))
{
Store (One, Local1)
}
}
If (Local1)
{
Store ("hda-gfx", Index (Local0, 0x02))
}
Return (Local0)
}
}
You can match the SSDT contentI'm sorry, I can't see what is still incorrect in SSDT-HDEF... layout-ID is set to 0x1C. Could you please tell me what's wrong with this SSDT-HDEF ?
View attachment 3617
Audio works perfectly on Windows, by the way.