Contribute
Register

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

Status
Not open for further replies.
Hello Sniki, am about to get an HP Elite 8300 i7 3770, and am reading your thread to know how i can get this machine as good hackintosh. Is there a guide with Opencore bootloader for HP Elite 8300 ? now that this bootloader is the "future" of hackintoshing and can give you a nice oob working MacOS machine. Thank you.
Here is my approach for Catalina 10.15.7 but with OpenCore 0.6.2 (latest: 0.6.3) according to dortania guide. As we have the same CPU HD4000 - give it a go and report back on how it works out for you. (serials have been cleansed).
 

Attachments

  • OC_0.6.2.zip
    1.9 MB · Views: 42
Here is my approach for Catalina 10.15.7 but with OpenCore 0.6.2 (latest: 0.6.3) according to dortania guide. As we have the same CPU HD4000 - give it a go and report back on how it works out for you. (serials have been cleansed).
Dummybrain,

I took a quick look at your config.plist and have a couple concerns for you.

I noticed you're using the SSDT-IMEI, which the Dortania guide recommends for
6th generation chipsets. My HP 8300's have the Q77 chipset and don't need it. Is
it really needed for the H77 chipset?

Second, I notice that you are not using the SSDT-HPET. With my machines, I found
that I had to run CorpNewt's SSDTTime program under Windows to generate the SSDT-HPET
and a couple of patches for the config.plist in order to make audio work properly. I think
the reason is because it eliminates some IRQ conflicts, which may be dependent on the
IRQ settings in your BIOS.

So In summary I would recommend that HP users use opencore EFI's that are set up and
tested with their motherboards, and use some extra caution with your settings.
 
Dummybrain,

I took a quick look at your config.plist and have a couple concerns for you.

I noticed you're using the SSDT-IMEI, which the Dortania guide recommends for
6th generation chipsets. My HP 8300's have the Q77 chipset and don't need it. Is
it really needed for the H77 chipset?

Second, I notice that you are not using the SSDT-HPET. With my machines, I found
that I had to run CorpNewt's SSDTTime program under Windows to generate the SSDT-HPET
and a couple of patches for the config.plist in order to make audio work properly. I think
the reason is because it eliminates some IRQ conflicts, which may be dependent on the
IRQ settings in your BIOS.

So In summary I would recommend that HP users use opencore EFI's that are set up and
tested with their motherboards, and use some extra caution with your settings.
Hi LisaAlterEgo,
thank you very much for your vital information! I must admit that I am a little disappointed because I was actually quite proud that I managed to work my way through the dortania guide myself. I used to try Linux to run SSDTTime (Christitus channel taught me how) but the only part I cannot understand properly in the dortania guide is the patching process itself. The explanation is (in my opinion) unclear/vague as far as the compiling/decompiling process using MaciASL is concerned. I tried the allegedly "easy" approach which says "decompiling is just opening the file in MaciASL." and "If compiled .aml file is provided, a decompiled .dsl file will be given and vice versa." But I have to figure out which sections to clean and select the proper file type - the vice versa explanation wasn't understandable for me. But the results didn't get me to the install screen. So I decided to use the precompiled files according to the table matching my cpu generation. (I definitely have to do some further reading about Q77 and H77) The sanity check webpage gave me the desired green checkmarks. I know that audio via DisplayPort doesn't work but I honestly forgot to mention it here - but I did in a Catalina thread! In addition to that I don't have the slightest idea how to fix it myself. You seem to be in the know on how to pull that off. May I ask you for a helping hand/sources to find the necessary knowledge?
final note: the H77(N) - you are not driving at my profile computer, are you? Because the above oc folders were created for the HP Elite 8300 USFF/USDT with a used HD4000 CPU - was that misleading? If so, sorry for the confusion.
 
Hi LisaAlterEgo,
thank you very much for your vital information! I must admit that I am a little disappointed because I was actually quite proud that I managed to work my way through the dortania guide myself. I used to try Linux to run SSDTTime (Christitus channel taught me how) but the only part I cannot understand properly in the dortania guide is the patching process itself. The explanation is (in my opinion) unclear/vague as far as the compiling/decompiling process using MaciASL is concerned. I tried the allegedly "easy" approach which says "decompiling is just opening the file in MaciASL." and "If compiled .aml file is provided, a decompiled .dsl file will be given and vice versa." But I have to figure out which sections to clean and select the proper file type - the vice versa explanation wasn't understandable for me. But the results didn't get me to the install screen. So I decided to use the precompiled files according to the table matching my cpu generation. (I definitely have to do some further reading about Q77 and H77) The sanity check webpage gave me the desired green checkmarks. I know that audio via DisplayPort doesn't work but I honestly forgot to mention it here - but I did in a Catalina thread! In addition to that I don't have the slightest idea how to fix it myself. You seem to be in the know on how to pull that off. May I ask you for a helping hand/sources to find the necessary knowledge?
final note: the H77(N) - you are not driving at my profile computer, are you? Because the above oc folders were created for the HP Elite 8300 USFF/USDT with a used HD4000 CPU - was that misleading? If so, sorry for the confusion.
For the HPET changes, look at post #921 on page 93 in this thread.

Before implementing them, you might want to make sure your BIOS is updated. If it is less than version 2.99
you have to update to 2.99 first, and then you can update directly to version 3.08.
 
A couple days ago, I was asked to list what kexts and SSDTs I was using with
0C 0.6.3 with an iMacPro1,1 SMBIOS. I took another look and prepared the
attached archive of some of my latest iMacPro1,1 recommendations.

The Dortania guide is a little confusing about what power management should
be used for USB with an Ivy Bridge 8300 configured for IMP1,1 SMBIOS. It says
Ivy Bridge needs SSDT-EC (only), but in the IMP1,1 section it says you need
SSDT-USBX. I looked at the SSDT-USBX-EC and latest USBPorts.kext generated
by Hackintool, and decided to incorporate the SSDT-USBX properties in a new
USBPorts.kext, eliminating the need for a separate SSDT-USBX. It seems to work with
both Catalina 10.5.7 and the new Big Sur 11.0.1 (build 20B28) that was released today.

If you look inside the archive, you'll find a Info.plist which is normally inside the
Contents folder of USBPorts.kext. Please notice that this one is specific to the HP 8300
CMT or SFF using IMP1,1 SMBIOS. If you want to try it with another SMBIOS or machine,
you may have to add additional IOKitPersonalities, some of the power settings may need
to be changed, and you may have to re-characterize the ports and hubs.

In the archive, you'll also find excerpts from my Config.plist. Is shows the SSDTs
I'm using in ACPI, placement of the HPET patches in ACPI, an extensive DeviceProperties,
and the Kexts that I am adding.

With regard to the DeviceProperties, I use a fairly extensive list that mostly duplicates
the Hackintool recommendations. Two sections from Hackintool have been eliminated:
the KT Controller at PciRoot(0x0)/Pci(0x16,0x3) and the SMBus Controller at
PciRoot(0x0)/Pci(0x1F, 0x3). My machines will not go into a full sleep with these in the
DeviceProperties list, as evidenced by the front panel light staying on in sleep instead of
blinking.

Please also note that the LPC Controller at PciRoot(0x0)/Pci(0x1F, 0x0) has an added
"compatible" device property set equal to pci8086,1e42. I notice in my IORegistryExplorer
that macOS attaches an "AppleLPC" under the "LPCB@IF" in IOService, and that it does
not attach if the "compatible" device property is missing. Don't ask me what it does, but
Apple seems to want to put it there.

Finally, note that I have a very brief description for my AMD dGPU at
PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0). The only device property there is shikigva, and
it only seems to work presently under Catalina 10.15.7. I notice that if I give additional
info there such as "AAPL,slot-name" my listing for the dGPU audio under
"About this Mac -> System Report -> PCI" ends up at the wrong address.

Various information about the listed devices ends up in "About this Mac -> System Report -> PCI",
and I find it useful but it may be mostly cosmetic. You can also find some information about the
USB power management settings in "About this Mac -> System Report -> USB" (particularly when
USB devices are plugged in when you open it). More power management info is under EHC1, EHC2,
and XHC in IORegistryExplorer.

Please keep in mind that those using an iGPU will want to add one of more device properties at
PciRoot(0x0)/Pci(0x2,0x0) and those using a different or no dGPU may want to eliminate or change
the PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) section.

I hope someone finds this info useful.

I must admit that I'm a little disappointed in Apple DRM in Big Sur not working to play Netflix and
Sling TV in Safari, or AppleTV in the AppleTV app. A Big Sur workaround is to use the Microsoft
Edge browser instead. For AppleTV, you can go to the tv.apple.com website.
 

Attachments

  • IMP11Archive.zip
    4.1 KB · Views: 46
I must admit that I'm a little disappointed in Apple DRM in Big Sur not working to play Netflix and
Sling TV in Safari, or AppleTV in the AppleTV app. A Big Sur workaround is to use the Microsoft
Edge browser instead. For AppleTV, you can go to the tv.apple.com website.
I would like to test Big Sur after it is officially released.

ACPI has a definition order including patch, and IRQ setting (HPET) should be the highest priority.
DeviceProperties should have been resolved in OC0.6.3 and should not need to be defined.

I will attach the file currently being tested, so please replace PlatformInfo-> Generic with your information before using it.

I received a notification, so I deleted it.
 
Last edited:
I would like to test Big Sur after it is officially released.

ACPI has a definition order including patch, and IRQ setting (HPET) should be the highest priority.
DeviceProperties should have been resolved in OC0.6.3 and should not need to be defined.

I will attach the file currently being tested, so please replace PlatformInfo-> Generic with your information before using it.
I've tested Config's with and without various Device Properties and
am using sound judgment that has already been explained above.

ACPI is insensitive to subsection order. About the only subsection that is sensitive
to order is in the order of injecting Kernel additions.

I don't know where you get the idea that all Device Properties are properly
preconfigured, considering that all the guides recommend configuring various
properties.

You can lead them to water, but you can't make them drink.
 
You can lead them to water, but you can't make them drink.
I don't know what you want to do:

For USB charging, the correct answer is to use SSDT-EC by following the "Desktop Ivy Bridge" instructions in the guide. The iMacPro1.1 may be USB rechargeable with the Gen3.1 USB standard, but the HP8300/6300 only has USB2.0/3.0. If you have any questions about the USB standard and what to do about it, please contact @itwas.

For sleep with the power button, the sleep operation works just by not displaying the warning dialog.
Please specify @Sniki to inquire about how to display the warning dialog.

I don't use either.
 
I don't know what you want to do:

For USB charging, the correct answer is to use SSDT-EC by following the "Desktop Ivy Bridge" instructions in the guide. The iMacPro1.1 may be USB rechargeable with the Gen3.1 USB standard, but the HP8300/6300 only has USB2.0/3.0. If you have any questions about the USB standard and what to do about it, please contact @itwas.

For sleep with the power button, the sleep operation works just by not displaying the warning dialog.
Please specify @Sniki to inquire about how to display the warning dialog.

I don't use either.
Asural,

As is evident from your reply, different people have different preferences,
and there is no single "correct answer" that fits everyone's preferences and
all the different machines configured for different purposes. Lets agree to
respectfully disagree about our preferences.

If you look carefully at what I wrote and posted, my current recommendation
is to use a single SSDT-EC as shown in the config.list excerpt that I posted.
However, I also adopted the recommendation of @headkaze as shown by his
application Hackintool, which I generally find to be useful. If you configure
your USB ports by exporting from Hackintool with your machine configured
as an iMacPro1,1, it provides several solutions. One is a modified SSDT-EC-USBX
that includes various kUSB... properties for setting power levels from the USB
ports, as well as providing a dummy EC device in the same way that SSDT-EC
does. A second part or alternative solution provides some USB SSDTs. A third
solution provides a USBPorts.kext. I am using a USBPorts.kext very similar to
what Hackintool provides, and if you think there is something wrong with it
tells us why or take it up with @Sniki and/or @headkaze. If you look at sniki's
HP6300-8300 repository as linked on page 1 of this guide, you'll find a USBPorts
Info.plist that was generated in a similar way from Headkaze's application using
a Macmini6,1 SMBIOS configuration. Do you have an example for configuring the
USB ports with a MacPro6,1 SMBIOS?

Some people prefer a cleaner config.plist with as few entries as possible, and some
people prefer a config.plist that fixes more potential problems and provides more
information. I prefer to enter more DeviceProperties information because Apple
reciprocates by giving additional information in turn in the About this Mac ->
System Report -> Hardware -> PCI section. It shows info about where things
are installed, names of devices, whether their driver is installed, and if you click
on a particular device, it gives more info about it below. For example, if I click
on my EHCI controller #1 shown there, it tells me:

Intel 7 Series Chipset Family USB Enhanced Host Controller #1:

Name: EHC1
Type: USB controller
Driver Installed: Yes
MSI: No
Bus: PCI
Slot: Internal@0,29,0
Vendor ID: 0x8086
Device ID: 0x1e26
Subsystem Vendor ID: 0x103c
Subsystem ID: 0x3396
Revision ID: 0x0004

For those who like even more information, you can download the Apple tool
called IORegistryExplorer which is free at


in the Additional Tools for Xcode download (in the Hardware folder). You have to
sign up for a free developer account to download it.

If I run it and scroll down in IOService to the EHC2 entries, for example, and
look at port HP24 for example, I see the display that is shown below. The
three properties starting with kUSB are power settings, displayed in hexadecimal.
For example kUSBBusCurrentAllocation is set to 0x64 in hex, which in decimal stands
for 100 milliamps ("mA"). It also provides a kUSBSleepPortCurrent limit of 0x834,
which stands for 2100 mA (2.1 amps). The kUSBSleepPortCurrent is explicitly configured
in the USBPorts.kext info.plist that I posted, as recommended by headkaze. As
is shown in IORegistryExplorer, it is not necessary to have a separate SSDT-USBX
to define some desired USB power properties if they are configured elsewhere.
I will try rebooting with the USBPorts.kext disabled to see if there is a difference
in the defined power levels.
 

Attachments

  • Screen Shot 2020-11-11 at 12.24.22 PM.png
    Screen Shot 2020-11-11 at 12.24.22 PM.png
    114.6 KB · Views: 40
Last edited:
I just rebooted the same machine, an HP8300 CMT with an i5-3470K,
configured as an iMacPro1,1 with macOS 10.15.7 with all supplemental
updates.

I'm still using OC 0.6.3 with the standard SSDT-EC as provided by acidanthera
in the Doc/ACPISamples folder of the release version of 0.6.3. However, this
time I rebooted with USBPorts disabled in the config.plist. Below is a picture
from IORegistryExplorer of the same port 4 in EHC2.

As you can see, the port has a different name in IORegistryExplorer because it
has not been configured by USBPorts or any other external means, and instead
has the default values provided by Apple. Once again the kUSB... are the
configured power levels. kUSBBusCurrentAllocation is still set to 0x64 (100 mA).
However, kUSBSleepPortCurrentLimit is now set to 0x1f4 (500 mA). Its the same
with kUSBWakePortCurrentLimit. So my bext guess is that I getting different,
much lower power levels for USB charging if I don't configure the USB ports as
Hackintool recommends or as the Dortania guide recommends in its iMacPro1,1
section.

I think the test they recommend charges an iPad using the USB port. I don't have
an iPad. Maybe we could find a willing neutral third party here who has an iPad
and would be willing to test charging it with the differing configurations.
 

Attachments

  • Screen Shot 2020-11-11 at 12.42.44 PM.png
    Screen Shot 2020-11-11 at 12.42.44 PM.png
    121.4 KB · Views: 34
Last edited:
Status
Not open for further replies.
Back
Top