Contribute
Register

New DRM enabling method for systems with AMD GPU

Hey guys, I've been investigating this thread also and was wondering if you can provide support. Im running a Z370 HD3P 8700k with a Gigabyte Gaming 8G RX580, I'm using SMBIOS iMac Pro 1,1 with the RX580 as the primary display and the iGPU off. Apple TV works as does DRM'd iTunes videos however Safari crashes when using Netflix or Amazon Prime. I've been told that this should work natively however with and without shiki / WEG it still seems to crash.

The only current solution I have on Catalina is to have DRM content already running in the background (Such as an old iTunes movies I play on the Apple TV app) and this allows Netflix to work as normal. As soon as Apple TV content is shut netflix and safari will freeze forcing a reboot.

I think from investigating the WEG documentation that Polaris cards are broken in Catalina for DRM. If someone can advise accordingly it'd be greatly appreciated.

The thing is (and I am banging my head to how it worked) that on my first hackintosh setup I had Netflix and Prime working on Safari with 10.15.1

The setup was a z370 GIGABYTE, 8350K with UHD 630 set up as headless from Clover Devices tab, RX 580 Pulse and shikigva=1, SMBIOS 18,3

Then I changed that system for an Aorus z390 Pro and an i9-9900K and never got to make it work again.

I don’t know what broke DRM then...
 
The thing is (and I am banging my head to how it worked) that on my first hackintosh setup I had Netflix and Prime working on Safari with 10.15.1

The setup was a z370 GIGABYTE, 8350K with UHD 630 set up as headless from Clover Devices tab, RX 580 Pulse and shikigva=1, SMBIOS 18,3

Then I changed that system for an Aorus z390 Pro and an i9-9900K and never got to make it work again.

I don’t know what broke DRM then...

That is quite interesting, was it working independently of having something like Apple TV in the background? I think it was your headless setup that had it working perhaps and it was using shiki to enable the RX580 to render all content. Is your current setup still a headless one? You could maybe try disabling the iGPU and see if that helps!
 
That is quite interesting, was it working independently of having something like Apple TV in the background? I think it was your headless setup that had it working perhaps and it was using shiki to enable the RX580 to render all content. Is your current setup still a headless one? You could maybe try disabling the iGPU and see if that helps!

No, Apple TV was not in the background, it was completely independent.

My current setup is headless indeed but the EFI I use has it set up via DSDT (I don’t know how TBH, I am not the creator of this particular EFI).

I have the EFI of my previous setup stored in a USB stick if you somehow need to experiment. I own a Vega 56 now and I do not have enough time to mess around swapping cards and SMBIOS’ but I can provide you the EFI I used successfully back then, tomorrow morning (Greece Time).

All I can remember now as I am not at the office to look that EFI is that:
  • I had iMac18,3 SMBIOS
  • Used the Vanilla installation guide Coffee Lake sample config.plist
  • Before I get the RX 580 I used the 8350K UHD 630 for monitor and had to add some Framebuffer properties and device-ids to get rid of a purple tint
  • When I bought the RX 580 I Added the coffee lake headless AAPL,ig-platform-id and also shikigva=1 boot flag.
  • I cannot recall if the BitMovin DRM test worked that way but I am very sure that Netflix and Prime worked well on Safari.
  • All this on 10.15 and 10.15.1, I changed motherboard and CPU before I updated to 10.15.2. Once I switched the hardware I also changed the EFI folder to a completely different one and since then DRM hasn’t worked again.
 
Is there a clear explanation for how to set up CPUfriend? I've tried to set up up with CPUFriend +
CpuFriendDataProvider, or as a modiified ssdtPRGen ssdt with frequency vectors inserted, but I'm not
sure what my XCPM setting(s) should be, and I don't see HWP on an Ivy i5-3470. I wish there
was a better explanation available for setting this up.
Maybe try CPUFriendFriend to help get CPUFriendDataProvider set up?

If that doesn't help, I noticed @macnb got his i7-3770K working with the imacpro1,1 profile and CPUFriend.kext.

I'll be watching your progress closely, as I'm planning on moving my 8300/i7-3770/GTX950 setup over to a Mojave with an RX580 soon using Sniki's guide.

Good luck!
 
Maybe try CPUFriendFriend to help get CPUFriendDataProvider set up?

If that doesn't help, I noticed @macnb got his i7-3770K working with the imacpro1,1 profile and CPUFriend.kext.

I'll be watching your progress closely, as I'm planning on moving my 8300/i7-3770/GTX950 setup over to a Mojave with an RX580 soon using Sniki's guide.

Good luck!

I'm still a little confused. If I look at the CPUFriendFriend documentation, it first tells me to look for the TDP-down
frequency from the Intel Ark website. If I look up an i5-3470 or i5-3570 (the two variants I have) I see a base
frequency of 3.2 Ghz or 3.4 Ghz at a TDP of 77W. The instructions tell me to look for a TDP-down spec but I'm left
guessing what I should choose. I think the auto-generate functions choose 1600 MHz as the minimum frequency,
and I can choose a lower value like 1200 or 800.

It then tells me about EPP options, but I don't see how I input the EPP option to the script, and I am not prompted
for it.

Once I generate a ssdt_data file and a CPUFriendDataProvider.kext, I can install either one, along with CPUFriend.
The ssdt file seems to set plugin-type = 1, so I'm guessing plugin-type should not be selected in Clover config.plist.
Am I supposed to turn on the KernelXCPM patch or not? I don't know. I saw a shuhung comment that seemed to say
Ivy processors work well with CPUFriend and XCPM.

The results file also includes the Mac-7BA5B2D9E42DDD94.plist. Am I supposed to do anything with it, or is this just
a copy of the defaults Apple file fetched from the system, which is used in generation?

Finally, Corpnewt's version and instructions are different from Acidanthera's, which also includes instructions for
combining the output ssdt_data with a ssdtPRGen file. Again, Acidanthera doesn't tell much about other settings and
warns we're supposed to understand it all in advance.

I don't know how to turn on HWP, and Enable HWP in Hackintool doesn't seem to do anything.

Finally, with testing, I look at Intel Power Gadget as a standalone application, and AppleIntelInfo in Hackintool,
but I'm not sure what to look for. I see various arrays of frequencies in AppleIntelInfo, but I also see HWP disabled.
I also see various power consumption using Intel Power Gadget, and slightly different Geekbench 4 CPU scores.
How do I select whats best?
 
Curious what functionality you are missing on AppleTV when running iMacPro1,1 without the shikigva value? I run iMacPro1,1 without any shikigva value and AppleTV app seems to work fine, using RX560 as well.

Tasc and Jay,

FYI, I'm running 10.15.3 Beta 19D49f on an HP8300 with IGPU disabled, an MSI LP RX 560 4GB,
with Lilu 1.4.1 and WEG 1.3.6.

For this experiment, I used an m4v movie I downloaded on AppleTV (Fellini's The Clowns) and HLS
video streaming (Snoopy).

First I removed the shikigva argument and rebooted. On AppleTV, I hear the video on both samples,
but I get a constant green screen on Snoopy and a constant red screen on The Clowns.

Then I set shikigva=128 and rebooted. On AppleTV, I hear the video on both samples,
but I get a constant green screen on Snoopy and a constant red screen on The Clowns.

Then I set shikigva=16 and rebooted. To my surprise, on AppleTV, both samples were working perfectly.
However, if I go to the downloaded Clowns file, and click on it, Quicktime tries to play it and crashes.

Then I set shikigva=144 and rebooted. Both samples were working perfectly on AppleTV, and if I go to
the downloaded Clowns file, and click on it, Quicktime plays its perfectly.

I must admit I did not try resetting my AppleTV or to update_dyld_shared_cache.

Lisa
 
I'm still a little confused. If I look at the CPUFriendFriend documentation, it first tells me to look for the TDP-down
frequency from the Intel Ark website. If I look up an i5-3470 or i5-3570 (the two variants I have) I see a base
frequency of 3.2 Ghz or 3.4 Ghz at a TDP of 77W. The instructions tell me to look for a TDP-down spec but I'm left
guessing what I should choose. I think the auto-generate functions choose 1600 MHz as the minimum frequency,
and I can choose a lower value like 1200 or 800.

It then tells me about EPP options, but I don't see how I input the EPP option to the script, and I am not prompted
for it.

Once I generate a ssdt_data file and a CPUFriendDataProvider.kext, I can install either one, along with CPUFriend.
The ssdt file seems to set plugin-type = 1, so I'm guessing plugin-type should not be selected in Clover config.plist.
Am I supposed to turn on the KernelXCPM patch or not? I don't know. I saw a shuhung comment that seemed to say
Ivy processors work well with CPUFriend and XCPM.

The results file also includes the Mac-7BA5B2D9E42DDD94.plist. Am I supposed to do anything with it, or is this just
a copy of the defaults Apple file fetched from the system, which is used in generation?

Finally, Corpnewt's version and instructions are different from Acidanthera's, which also includes instructions for
combining the output ssdt_data with a ssdtPRGen file. Again, Acidanthera doesn't tell much about other settings and
warns we're supposed to understand it all in advance.

I don't know how to turn on HWP, and Enable HWP in Hackintool doesn't seem to do anything.

Finally, with testing, I look at Intel Power Gadget as a standalone application, and AppleIntelInfo in Hackintool,
but I'm not sure what to look for. I see various arrays of frequencies in AppleIntelInfo, but I also see HWP disabled.
I also see various power consumption using Intel Power Gadget, and slightly different Geekbench 4 CPU scores.
How do I select whats best?

the lowest frequency Mode (LFM) that the desktop 3rd gen core ivy bridge can operate is 1600MHz
(mobile ivy bridge lowest frequency is 800 MHz or 1200 MHz, depends on which variant, e.g. i7-3740QM@1200MHz, 1037U@800MHz )

i.e. i5-3470 / i5-3570 / all 3rd gen Core/Pentium/Celeron, the LFM is 1600 MHz

3rd gen core ivy bridge do not support HWP (Intel Speed Shift Technology), HWP was introduced since Skylake, you may forget it
 
the lowest frequency Mode (LFM) that the desktop 3rd gen core ivy bridge can operate is 1600MHz
(mobile ivy bridge lowest frequency is 800 MHz or 1200 MHz, depends on which variant, e.g. i7-3740QM@1200MHz, 1037U@800MHz )

i.e. i5-3470 / i5-3570 / all 3rd gen Core/Pentium/Celeron, the LFM is 1600 MHz

3rd gen core ivy bridge do not support HWP (Intel Speed Shift Technology), HWP was introduced since Skylake, you may forget it

thanks for the info. so it seems that CorpNewt's LFM generation doesn't provide much that is already
provided in ssdtPRGen or in generate mode with XCPM. Does acidanthera's method enhance the
operation of ssdtPRGen's output?
 
thanks for the info. so it seems that CorpNewt's LFM generation doesn't provide much that is already
provided in ssdtPRGen or in generate mode with XCPM. Does acidanthera's method enhance the
operation of ssdtPRGen's output?

I don't know much about CPUFriend, I don't use it

Piker-Alpha/ssdtPRGen.sh use CPU lookup table to generate the frequency vector file (https://github.com/Piker-Alpha/ssdtPRGen.sh/tree/Beta/Data)
you can edit the table, or override it, maybe CPUFriend is based on the ssdtPRGen

Real ivy bridge based MacMini6,x, IMac13,x do not run in XCPM mode.
I have tested on my hacks, XPCM mode on/off, I cannot spot the difference in power consumption, so I decided not to use it.
 
I'm still a little confused. If I look at the CPUFriendFriend documentation, it first tells me to look for the TDP-down
frequency from the Intel Ark website. If I look up an i5-3470 or i5-3570 (the two variants I have) I see a base
frequency of 3.2 Ghz or 3.4 Ghz at a TDP of 77W. The instructions tell me to look for a TDP-down spec but I'm left
guessing what I should choose. I think the auto-generate functions choose 1600 MHz as the minimum frequency,
and I can choose a lower value like 1200 or 800.

It then tells me about EPP options, but I don't see how I input the EPP option to the script, and I am not prompted
for it.

Once I generate a ssdt_data file and a CPUFriendDataProvider.kext, I can install either one, along with CPUFriend.
The ssdt file seems to set plugin-type = 1, so I'm guessing plugin-type should not be selected in Clover config.plist.
Am I supposed to turn on the KernelXCPM patch or not? I don't know. I saw a shuhung comment that seemed to say
Ivy processors work well with CPUFriend and XCPM.

The results file also includes the Mac-7BA5B2D9E42DDD94.plist. Am I supposed to do anything with it, or is this just
a copy of the defaults Apple file fetched from the system, which is used in generation?

Finally, Corpnewt's version and instructions are different from Acidanthera's, which also includes instructions for
combining the output ssdt_data with a ssdtPRGen file. Again, Acidanthera doesn't tell much about other settings and
warns we're supposed to understand it all in advance.

I don't know how to turn on HWP, and Enable HWP in Hackintool doesn't seem to do anything.

Finally, with testing, I look at Intel Power Gadget as a standalone application, and AppleIntelInfo in Hackintool,
but I'm not sure what to look for. I see various arrays of frequencies in AppleIntelInfo, but I also see HWP disabled.
I also see various power consumption using Intel Power Gadget, and slightly different Geekbench 4 CPU scores.
How do I select whats best?
Unfortunately, I haven’t started working on this for my hack, so I’m not going to be much help. I do know the LFM should be 1600MHz, as shown in the attached screenshot (linked from the Intel Ark website).
A15F40B3-D573-41DE-8072-373EF4049354.jpeg
Sorry I can’t be of much more help. Maybe we can get @macnb over here to help us out :)
 
Back
Top