Contribute
Register

[Guide] HP Elite 8300 & 6300 Pro (all form factors) using Clover UEFI hotpatch

Status
Not open for further replies.
@Geezah - If it works with the i3 I think it should just work with the new i5 - unless you have an SSDT for the processor in EFI/ACPI/Patched, in which case, copy ssdt.aml from /Patched to your Desktop (just in case you want to put the i3 back later) and delete from Patched, then reboot and make a new SSDT for your new i5 CPU
 
@Geezah - If it works with the i3 I think it should just work with the new i5 - unless you have an SSDT for the processor in EFI/ACPI/Patched, in which case, copy ssdt.aml from /Patched to your Desktop (just in case you want to put the i3 back later) and delete from Patched, then reboot and make a new SSDT for your new i5 CPU

Thanks @nicksoph, I'll give that a go. I think I've been assuming that SSDT-HP.aml had all the different CPUs within it, so hadn't made the link that I need another aml. Slowly reading and getting my head around it.

Edit: Tried a few different things like creating a new SSDT but I kept getting to the end of the loading bar with the Apple logo and it freezing. Left it over an hour but no luck. I was able to boot (slowly) from an earlier backup and noticed that the Drivers folder was different between the latest Clover BL install, my backup (Clover ver from Snicki's guide) and the EFI folder from Asural. My install had only one drivers folder with no sub folders, Asural's had a driver folder with BIOS and UEFI subs, and the original has the Drivers64UEFI folder. So I have no idea what was going on.

I've wiped and started again using the Clover version from Snicki's instructions, and the machine is up and running straight from the end of the install instructions. Power management ok, and usually iCloud has been too, but I want to make a backup and update the machine before I go through that sync.
 
Last edited:
Sorry for my confusion... I deleted this post
 
Last edited:
I'm not sure if the recommended settings by trs96 and/or Sniki for audio are correct in my case.
Are you using the latest config.plist from Sniki's repo dated July 23rd ?

Screen Shot 25.jpg


Here's how devices properties section should look and Inject Audio should be set to 0. He's made some changes to it from the original so try out the new one if you haven't. @Sniki will comment on this to help you figure out what's wrong.

Screen Shot 24.jpg


Screen Shot 19.jpg
 
Last edited:
I rechecked and my SSDT-HP.aml was corrupted, and I reloaded Sniki's latest, which fixed
the mic wake-up problem
 
Last edited:
Unfortunately, Sniki doesn't respond to questions that I have posted here.
I'm certain he'll reply tomorrow. You can compare what he's doing to what you are using to get audio to work. He may not have done the rewrite with the latest AppleALC, Clover and Lilu kext so things may be affected by those. I've no longer got an HP 8300 to test so I'm not going to be able to try this myself.
 
Last edited:
Fixing ALC221 audio in Mojave 10.14.6 (18G87), Catalina (19A526h) with Clover r5033.

I wanted to post this in case others are having ALC221 problems like I did. I have three
8300 i5 hackintoshes, 2 with i5-3470 and one with an i5-3570. One of the i5-3470 machines
has MSI Nvidia GeForce 730 2GB Kepler graphics, and the other has MSI RX560 LP 4GB graphics.
In each case, I disable the Integrated Video in the BIOS 3.08 under Advanced : Device Options,
and enable System Audio under Security : Device Security.

I downloaded and compiled AppleALC 1.4.0, Lilu 1.3.8, WhateverGreen 1.3.1, VirtualSMC
SMCProcessor and SMCSuperIO versions 1.07 installed them in Library/Extensions and rebuilt
my caches. I also installed CodecCommander and hda-verbs as instructed by Sniki.

Please note that Catalina requires some extra steps to install Kexts and rebuild
the cache, which Sniki left out here.

The latest AppleALC instructions tell us to set Inject Audio in config.plist to No, and Trs96 advises
us to set it to 0. To advise AppleALC of the ALC221 layout-id of 11, you need to define a device
property dictionary for

PciRoot(0x0)/Pci(0x1b,0x0)

I currently set 3 items in there:

codec-id <2102ec10>
device-id <201e0000>
layout-id <0b000000> (i.e. 11).

I noticed in IOregistry explorer that the codec-id was set on its own in Mojave, but was not being set in Catalina.

Alternatively, or in addition, you can set the Boot section Argument: alc-id=11.

After this, the majority of the audio functions work, but not always reliably for me. It often failed
on the first boot, and I had to boot twice to get HDMI audio. Sometimes it would still fail to recognize
the HDMI audio with the Nvidia graphics, and I would have to reboot. In addition, the microphone
would never work.

For Mojave, I found the solution was to set Inject Audio in config.plist to 11. I haven't removed the
device properties and the alc-id boot setting alc-id=11 is not required. Everything works, including the
microphone.

For Catalina, I found the solution was to set Inject Audio in config.plist to 11. I haven't removed the
device properties. If the alc-id boot setting is not set to alc-id=11, the devices at HDEF do not appear
in sound preferences, but if I also set the alc-id boot setting alc-id=11, everything works, including the
microphone.

If I look at IORegistryExplorer, IOService, HDEF@1B, I can see the symptom of a working or failing
microphone. In the property listings, I see a RMCF.cache there with a CodecCommander dictionary
when the microphone is working.

In addition, I'm not sure if the recommended settings by Trs96 and/or Sniki for audio are correct
in my case. In my setup, it doesn't respond to setting onboard-1 or onboard-2 in properties as I
expect. Also the patch to rename GFX0 to IGPU doesn't apply to me, and WhateverGreen seems
to rename PEGP@ffff in the IOACPIPlane to GFX0@0 in IOService.
We tested with HP8300CMT(Mojave 18G87), but there was no change.
We also updated EFI-> CLOVER-> drivers-> UEFI-> VirtualSmc.efi.
The config.plist is just SMBIOS added to the one provided by Sniki.

Line In (front): Connect headphones and tap to check input
Line In (Back): No response (It seems to have been broken originally)
Line Out (front): Connect headphones and check with iTunes
Line Out (back): Connect headphones and check with iTunes

Apeend:
Tested again with config.plist provided by Sniki, please check the test settings (CLOVER r5033) attached.


Delete:
The attachment was deleted because it fulfilled its purpose.
 
Last edited:
sorry for any confusion, I deleted this post
 
Last edited:
@LisaAlterEgo my first suggestion for you is "learn the art of reading".
Im on vacation and i can't answer until im back, but i had to come and post this from my phone as i saw the unnecessary *wrong* mess that you are talking about.
You didn't even read the first 4-5 rows of the guide because if you did, you would've noticed that you are Off Topic because i already have a macOS Catalina guide from the first day that PB1 came out and it was linked in the beginning of the guide.
Fixing ALC221 audio in Mojave 10.14.6 (18G87), Catalina (19A526h) with Clover r5033.

I wanted to post this in case others are having ALC221 problems like I did. I have three
8300 i5 hackintoshes, 2 with i5-3470 and one with an i5-3570. One of the i5-3470 machines
has MSI Nvidia GeForce 730 2GB Kepler graphics, and the other has MSI RX560 LP 4GB graphics.
In each case, I disable the Integrated Video in the BIOS 3.08 under Advanced : Device Options,
and enable System Audio under Security : Device Security.

I downloaded and compiled AppleALC 1.4.0, Lilu 1.3.8, WhateverGreen 1.3.1, VirtualSMC
SMCProcessor and SMCSuperIO versions 1.07 installed them in Library/Extensions and rebuilt
my caches. I also installed CodecCommander and hda-verbs as instructed by Sniki.

Please note that Catalina requires some extra steps to install Kexts and rebuild
the cache, which Sniki left out here.

The latest AppleALC instructions tell us to set Inject Audio in config.plist to No, and Trs96 advises
us to set it to 0. To advise AppleALC of the ALC221 layout-id of 11, you need to define a device
property dictionary for

PciRoot(0x0)/Pci(0x1b,0x0)

I currently set 3 items in there:

codec-id <2102ec10>
device-id <201e0000>
layout-id <0b000000> (i.e. 11).

I noticed in IOregistry explorer that the codec-id was set on its own in Mojave, but was not being set in Catalina.

Alternatively, or in addition, you can set the Boot section Argument: alc-id=11.

After this, the majority of the audio functions work, but not always reliably for me. It often failed
on the first boot, and I had to boot twice to get HDMI audio. Sometimes it would still fail to recognize
the HDMI audio with the Nvidia graphics, and I would have to reboot. In addition, the microphone
would never work.

For Mojave, I found the solution was to set Inject Audio in config.plist to 11. I haven't removed the
device properties and the alc-id boot setting alc-id=11 is not required. Everything works, including the
microphone.

For Catalina, I found the solution was to set Inject Audio in config.plist to 11. I haven't removed the
device properties. If the alc-id boot setting is not set to alc-id=11, the devices at HDEF do not appear
in sound preferences, but if I also set the alc-id boot setting alc-id=11, everything works, including the
microphone.

If I look at IORegistryExplorer, IOService, HDEF@1B, I can see the symptom of a working or failing
microphone. In the property listings, I see a RMCF.cache there with a CodecCommander dictionary
when the microphone is working.

In addition, I'm not sure if the recommended settings by Trs96 and/or Sniki for audio are correct
in my case. In my setup, it doesn't respond to setting onboard-1 or onboard-2 in properties as I
expect. Also the patch to rename GFX0 to IGPU doesn't apply to me, and WhateverGreen seems
to rename PEGP@ffff in the IOACPIPlane to GFX0@0 in IOService.
First of all Inject=0 is the same as Inject=No
Would be same like boolean values,on some editors you see Inject=true or false, on some others Inject=yes or no.
It has been like that since pretty much the existence of Clover and has absolutely no relation to the issue you are mentioning.

layout-id is the only injection that you need whether it be (number) 11 or (data) 0b000000

I have both Catalina and Mojave 10.14.6 on my 8300 SFF and never faced a single issue.

You either didn't install kext correctly or have another issue with your setup that is affecting your audio.
All inputs and outputs are working perfect for me.

Change GFX0 to IGPU is required and everything i listed is needed if you want to follow my guide.
"I can't help thursty people with their thirst if they refuse to drink water" you get the idea of what im refering to.

Please note that Catalina requires some extra steps to install Kexts and rebuild
the cache, which Sniki left out here.

The latest AppleALC instructions tell us to set Inject Audio in config.plist to No, and Trs96 advises
us to set it to 0. To advise AppleALC of the ALC221 layout-id of 11, you need to define a device
property dictionary for

PciRoot(0x0)/Pci(0x1b,0x0)

I currently set 3 items in there:

codec-id <2102ec10>
device-id <201e0000>
layout-id <0b000000> (i.e. 11).
Nothing special with Catalina.
I like the changes that Apple did with Keeping and Protecting System Integrity.
I keep saying for millions of times that all kexts should be installed to L/E and not S/L/E and still people refuse to listen and just work as they head say.
I did install all my kexts to L/E without the need to mount file system as you say.
However macOS Catalina is still in Beta and things may change on each beta.
When final release comes out i will complete the Catalina guide with all the steps (still won't be an Alphabet book to teach people to read).
If they don't read things won't work which is expected.
I noticed in IOregistry explorer that the codec-id was set on its own in Mojave, but was not being set in Catalina.

Alternatively, or in addition, you can set the Boot section Argument: alc-id=11.

After this, the majority of the audio functions work, but not always reliably for me. It often failed
on the first boot, and I had to boot twice to get HDMI audio. Sometimes it would still fail to recognize
the HDMI audio with the Nvidia graphics, and I would have to reboot. In addition, the microphone
would never work.
Like i said all inputs and outputs and audio in General with Clover Bootloader has been perfect for me in this machine, for you people with dedicated GPUs it may be another story.
Also keep in mind that there is a known problem with AppleALC that i discussed with vit9696 here:
https://github.com/acidanthera/bugtracker/issues/422
It may be affecting you with Dedicated GPU, hasn't been an issue with clover for me.
Yes, as I explained, Inject Audio set to 0 doesn't work, and it also doesn't correspond to the latest AppleALC instructions
which say to set it to "No."

The properties for PCiRoot(0)/PCI(0x1b,0) include setting layout-id to 11, which can also be written as type data with value 0b000000.

I'm using Sniki's SSDT-HP.aml installed in EFI/Clover/ACPI/Patched.

If you look at Sniki's setting for PciRoot(0)/PCI(0x02,0), it is an empty dictionary which sets no properties.

Unfortunately, Sniki doesn't respond to questions that I have posted here.
The rest of repeated words have been answered above.
About PciRoot(0)/PCI(0x02,0) i left this empty because HD2500 users are facing issues with setting a framebuffer and most of them use dedicated GPU.
Keep in mind that it's up to everyones duty to fix their stuff.
I baked the food, braked it into small pieces for easy swallow , i put it on everyones mouth but i can't swallow it for you.

Again, if you have issues with catalina post on catalina guide.
Second: Catalina is still in beta and have issues on Apple Computers, what do you expect on hackintoshes ?
Third: don't expect anyones guide (not just my guides) to include every single thing. There is no such all in one hackintosh guide.
It's up to everyones duty to read all the guides for each specific component to have a basic understanding.
Many people here have spent hundreds and thousands of hours to write things as easy as it gets to understand for each component.
Everyone should read things like:
- Rules
- FAQ
- All Guides at each support forum that are sticky threads like how to fix iMessage, how to fix IGPU, how to create USB installer, how to fix HDMI audio etc,etc,etc...

If you have an issue, report clearly and shortly on what your problem is and as always attach "Problem Reporting" files as it is a requirement in order for me to help without PR files i can't guess what your problem is as im not a clairvoyant therefore don't expect answer.

Im on my summer vacation, i won't be able to troubleshoot any problem until im back (Sunday evening).
 
Asural,

I am not a debugging expert, and your files and description are not very complete.
However, I do have some feedback for you.

I assume you're working on Catalina with the 8300 CMT with the RX570 in your profile.
I doubt that I can help with the other processors or graphics cards, which sound incompatible.

I looked at your list of kexts. I have not found it necessary to include VoodooTSCSync.kext,
and so far, I am not using EFICheckDisabler.kext. I may get messages after a week of so
because of the latter omission.

I also noticed that you're using AptioMemoryFix.efi. I switched to OsxAptioFix3Drv.efi instead;
Sniki thinks this is not correct but it works for me so far.

I notice that you do not show any kexts in EFI/Clover/Kexts/Other, so I assume the kexts you're
showing are in /Library/Extensions. This does not quite correspond to any of the instructions here.
Sniki recommends the full gamut of kexts in EFI/Clover/Kexts/Other and in /Library/Extensions,
PastryChef seems to only load kexts in EFI/Clover/Kexts/Other, and most guides seem to recommend
installing a minimum set of kexts EFI/Clover/Kexts/Other to allow you to boot the Recovery partition,
and to install all of the kexts in /Library/Extensions.

When it comes to Catalina, jayMonkey's "[GUIDE] Installing 3rd Party Kexts - El Capitan, Sierra, High Sierra, Mojave, Catalina"
has additional instructions which are not provided in Sniki's guide for overcoming Gatekeeper and updating the
kextcache in Catalina. When I followed the old method -- simply installing the kexts in /L/E/ with a

sudo cp -R *.kext /Library/Extensions

command and then updating the kextcache with a

sudo kextcache -i /

command, I noticed that not all of my kexts were listed in the terminal output.

jaymonkey's guide notes that we first have to mount the System partition as read/write using terminal commands:

sudo spctl --master-disable
sudo mount -uw
sudo killall Finder

then install the kexts as usual in /L/E with a

sudo cp -R *.kext /Library/Extensions

and then jay recommends updating the kextcache with

sudo chown -v -R root:wheel /System/Library/Extensions
sudo touch /System/Library/Extensions
sudo chmod -v -R 755 /Library/Extensions
sudo chown -v -R root:wheel /Library/Extensions
sudo touch /Library/Extensions
sudo kextcache -i /

When I did this, I got a lot of complaints that /System/Library/Extensions was a read-only file system, so
I'm not sure if the first two lines do anything. You have to reboot then to have it take effect.

I did notice you might have trouble with HFS file systems. Sniki recommends both VboxHFS and HFSplus
but his config.plist has a line to disable VboxHFS. I think you should choose one or the other and make sure
it is not disabled. I'm only using VboxHFS.efi. I don't think the BIOS drivers are needed at all.

Finally, with regard to audio, I suggest a couple changes to your config, which I attached here. I added
a boot argument

alcid=11

I changed Devices : Audio : Inject from 0 to 11

and I changed the Devices : Properties to add a codec-id and device-id to PciRoot(0)/Pci(0x1b,0)
and I added PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x1) with your graphics card model name.

In graphics, you might want to set Inject ATI to yes.

I can't guarantee these will help you, and recommend you maintain a bootable USB stick in case
any changes hang up your boot. My boot has a 10 second delay while the monitor output shuts off
and turns back on.
The attached Config.plist could not be started (restart was repeated).
We recommend that you follow the Sniki guide for installation.
 
Status
Not open for further replies.
Back
Top