Jump to content
14 posts in this topic

Recommended Posts

@deeveedee I know that your guide was focusing only the 800 G4/G5 but do you think the same principle would apply to make this work in the 705 G4, I was able to make it work without the RX560X so all the AMD patches and Nootedred.kext working with built in Radeon graphics but with the dGPU installed I got the dreaded black screen after it gets to the GUI.

 

I attached my EFI I copied all the DP properties to my config.plist and added WEG,  do you think you can take a look just my graphics setup to see if anything sticks out?

 

It would be a big help, I consider you the biggest expert in this field and in hackintoshing in general, your guides are excellent and well-detailed 

efi.zip

@robi39 Don't Use PciRoot(0x0)/Pci(0x2,0x0) Intel device properties as its not relevant for AMD based machines even don't use PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) device properties as you are not using Whatevergreen.kext, if your AMD IGPU works with Nootedred then Try using MacPro7,1 SMBIOS (Don't Forget to update USBMap Kext Properties for MacPro7,1) & use native ATY,(Framebuffer) for RX560x for  PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) (Actually i don't know which ATY, Framebuffer works natively works without Whatevergreen.

Check your AMD Device properties Pciroot adrress properly as Elitedesk 800 G4 & 705 G4 both are from different CPU architecture     

  • Like 1

@robi39 I think I found your first mistake - you consider me to be the biggest expert in this field... :hysterical:

... but thank you for your confidence in me!

 

I don't have experience with Nootedred, but I love the concept.  Take a look at my EFI attached here for the EliteDesk 800 G4/G5 Mini with RX560 x.  I use WhateverGreen.kext (the officially released version from Acidanthera) to enable the RX 560x without black screen.  Note my DeviceProperties (in config.plist) that override WhateverGreen's auto-handling of CFG_FB_LIMIT.  I did not work very hard to get the RX 560x to work without WhateverGreen, because I am using WEG for the Intel UHD630 iGPU as well (for multiple monitors).

 

Screenshot2024-12-16at2_27_29PM.png.5d01cfa3a49ed8a8d07091ee12cea948.png

 

If I were attempting to get your AMD hack working with RX 560x, I would add WhateverGreen.kext and copy my Radeon RX 560x DeviceProperties (for PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) ) from my EFI here.  After getting the RX 560x to work, then I'd work on getting the AMD iGPU ports to work (assuming that WhateverGreen.kext and Nootedred can coexist (can they?).

 

EDIT: @datafeedexpert very good point about the Pciroot address.  @robi39 Use Hackintool or similar to find the Pciroot address of the RX 560x in your hack.  You may need to replace PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) which is for the Intel architecture.  Not sure.  You have already added the RX 560x DeviceProperties to your config.plist, so it may be as simple as adding WhateverGreen.kext and confirming the Pciroot address for your RX 560x.

 

EDIT2: @robi39 One other thing - as @datafeedexpert indicated, you can't simply copy Intel DeviceProperties from my posted EFI.  The DeviceProperties for PciRoot(0x0)/Pci(0x2,0x0) are for Intel UH630 iGPU.  The boot-args "igfxonln=1 igfxagdc=0 igfxfw=2 igfxonlnfbs=0x0102" are for WhateverGreen / UHD630.  Some of these may be applicable to Nootedred, but I don't know.

Edited by deeveedee

It was the Pci device path, once I changed that the display came to life, although it is weird that it works without WEG better than with it, boot time is a lot faster, after the first phase of boot, it is quite a few seconds waiting, while without WEG, just with Nootedred is a lot faster, also it won't boot without Nootedred only WEG, so that is weird also, anyway, thank you for all the help, you guys are all great, I only have to change one digit in the device path, it is PciRoot(0x1) the rest is the same.

 

Thank you again, I'm forever in your debt.

 

  • Like 1

@robi39 That's great.  On the EliteDesk 800 G4/G5 Mini, I wasn't able to resolve the RX 560x black screen until I used WhateverGreen.kext.  Would you mind posting your current EFI for your HP Elitedesk 705 G5?  Thanks and congrats!

 

EDIT: is it possible that Nootedred includes all of WhateverGreen's functionality?  If so, it make sense that you don't need both Nootedred and WhateverGreen and that your RX 560x blackscreen is resolved without WhateverGreen.  I have no experience with Nootedred.

Edited by deeveedee

@robi39 To determine whether Nootedred includes WhateverGreen's functionality, would you be willing to try an experiment?  If so, create a backup of your config.plist.  Then, In your config.plist where you copied my RX 560x DeviceProperties, change the following (see my attached sample):

 

Delete this line: #CFG,CFG_FB_LIMIT = "Override WhateverGreen.kext auto-handling of CFG_FB_LIMIT"
Change this line (insert # in front): CFG,CFG_FB_LIMIT = 2 -> #CFG,CFG_FB_LIMIT = 2

By placing a "#" in front of CFG,CFG_FB_LIMIT, you are commenting out that line in the config.plist.  This is the WhateverGreen setting that I needed to add in order to resolve the Blackscreen for the HP EliteDesk 800 G4 / G5 Mini's RX 560x.  If your RX 560x boots to black screen after you comment out this line in your config.plist, then you have proven that NootedRed is performing the same function as WhateverGreen.

 

If you're willing/able to test, I'd appreciate your satisfying my curiosity.  Thank you.

 

After you complete the experiment, restore your config.plist from the backup you created.

config.plist.zip

Edited by deeveedee

So I'm kind of at a loss now, I tried what you suggested and it boots fine, I even put the # before the whole PciRoot(0x1) and it booted, even though I reset NVRAM each time I made changes, I'm still testing it, this is with just Nootedred, which was developed from Wahteverred, so I'm pretty sure it based on WEG.

 

but before it booted to a black screen so not sure what's going on now, the only thing I can think of is I had to go back to just using just the built in graphics when I looked up the Pci device path for the RX560x so that maybe triggered something.

 

Any idea?

@robi39 Is it possible that your hack has two Open Core EFIs (possible if your hack has multiple drives).  If so, are you certain that you are editing the config.plist for the correct EFI?  Or is is possible that your config.plist has multiple DeviceProperties and you are editing the wrong one?  If you need more help, post at least what you think is your current config.plist.

 

EDIT: @robi39 In addition to posting your config.plist, it would be helpful if you could post a screenshot of your dGPU IOReg as I have done in the next post.

Edited by deeveedee
  • Like 1

@robi39 I just took a more careful look at the EFI that you posted here (before, I had only looked at the DeviceProperties in your config.plist).  The ACPI patches in your EFI are suspect - it looks like you started patching for a laptop since you have devices ALS0 and PNLF.  Maybe my theory about you having multiple EFIs is close to the truth?  Not sure.

 

EDIT: Just to make sure I wasn't imagining things, I modified my EFI as I described here and rebooted.  My RX 560x-connected display boots to black screen as expected.

 

EDIT2: @robi39 To make sure you understand the WEG DeviceProperties, I captured a screenshot from IORegistryExplorer on my EliteDesk 800 G4 Mini hack:

Screenshot2024-12-19at8_37_53AM.thumb.png.6f9d62e2f6dead558a827ce1498b2c2a.png

 

CFG,CFG_FB_LIMIT is the DeviceProperty that is entered in config.plist.  The CFG,CFG_FB_LIMIT DeviceProperty instructs WhateverGreen.kext to modify the Radeon DeviceProperty CFG_FB_LIMIT (this property can't be modified directly without WEG).  For those who don't understand the need for this DeviceProperty, read this.  By setting CFG,CFG_FB_LIMIT = 2, we're instructing WEG to set CFG_FB_LIMIT = 2 (overriding WEG's default behavior which sets CFG_FB_LIMIT = 1 for this RX 560x).

Edited by deeveedee
  • Like 1

I attached the screenshot of the IOReg and also my whole IOReg hopefully you can open it, it shows 0 for the CFG_FB_LIMIT.

 

This is when I booted up without the # in the CFG,CFG_FB_LIMIT line.

Also would you look at my audio as well, I can't figure out what is the layout, it is supposed to be the same CX20632 chip as in the 800 G4/G5 and I tried alcid 20,21, 23, 28 and none of them working.

 

Thank you.

Screenshot 2024-12-19 at 7.34.23 PM.png

Robert’s iMac Pro.ioreg

@robi39 Thank you for posting your IOReg screenshot!  The fact that CFG_FB_LIMIT = 0 with CFG,CFG_FB_LIMIT=2 uncommented means that the DeviceProperty is not being applied (NootedRed is ignoring the CFG,CFG_FB_LIMIT DeviceProperty).  This assumes that your config.plist is as you state.  I believe this means that NootedRed is fixing the RX 560x black screen without the automatic WhateverGreen behavior that changes CFG_FB_LIMIT = 1 for this RX 560x.  Remember that the only reason I had to define CFG,CFG_FB_LIMIT=2 or =0 (both 2 and 0 work as you can read in my thread) is that I needed to override WhateverGreen's automatic behavior.  It appears that NootedRed does not have that problem.

 

Regarding your audio, is the ACPI path correct for audio in your config.plist?  I know it may seem redundant, but it would be helpful if you posted your latest, most current config.plist with each of your requests for help.

 

EDIT: I reviewed your previously posted config.plist and see this:

Screenshot2024-12-20at7_40_58AM.png.e6450a995ebb7394ed97742e8085f85a.png

 

When you define alcid=X in boot-args, this overrides any other device property (e.g., DeviceProperty layout-id is overridden by alcid=11).  layout-id = 0x14 (Decimal 20) works.  Not sure about alcid=11.

Edited by deeveedee
On 12/16/2024 at 11:40 AM, datafeedexpert said:

..., if your AMD IGPU works with Nootedred then Try using MacPro7,1 SMBIOS ...

 

FYI - saw this in NootedRed Documentation:

Use MacBookPro16,3, iMac20,1 or iMacPro1,1 SMBIOS.
MacPro7,1 might result in a black screen.

 

On 12/18/2024 at 12:22 AM, robi39 said:

... it is weird that it works without WEG better than with it, boot time is a lot faster, after the first phase of boot, it is quite a few seconds waiting, while without WEG, just with Nootedred is a lot faster

 

FYI - saw this in NootedRed Documentation

Remove WhateverGreen.kext or NootRX.kext.
This kext conflicts with them.
Usually only works on laptops.
SSDT-PNLF.aml
SSDT-ALS0.aml if you have no Ambient Light Sensor

 

Edited by deeveedee

Audio is fixed I had to use the newest ApplALC 1.9.3 and it worked with alcid=20, still doing some testing with WEG to see if it boots the installer, I know for sure that it doesn't boot the installed os, using MacPro1,1, I think what's happening is that Nootedred is ignoring anything in DP properties, would make sense, I read that somewhere

 

Thank you for all your help, it is really appreciated. 

  • Like 1

@robi39 Good detective work!  Glad audio is working for you.

 

Regarding WEG, I had previously thought you needed WEG to fix the RX 560x black screen, but I thought you proved that you don't need WEG?  You certainly don't need WEG for your AMD iGPU, since that is what NootedRed is for and the NootedRed docs say not to use WEG and NootedRed together.

 

What do you hope to gain by testing WEG with your EliteDesk 705 G5?

 

EDIT: Just to make sure I understand everything so far, when you boot without NootedRed.kext, you have no video (your 2 iGPU ports and 1 dGPU port are black) - correct?  And when you boot with NootedRed.kext, all of your video ports (2 IGPU ports and 1 dGPU port) work without black screen issues - correct?

Edited by deeveedee
×
×
  • Create New...