Contribute
Register

Mojave on Biostar TH55HD Socket 1156 / NVidia 9800GT

Status
Not open for further replies.
I have updated Post #1 with my latest debug files for my Biostar TH55HD / Xeon X3450. This system is fantastic for a system where the motherboard was cheap in 2010 and the Xeon X3450 CPU was $20 on eBay (even cheaper now)! This system is rock-solid and is a pleasure to use. Since it's a desktop, I don't really miss sleep/wake, but every once in a while, I'll try something new to see if I can get it to sleep/wake properly. My latest attempts at working sleep/wake included the following changes (which are reflected in the debug files attached to Post #1):
  • Experimented with different Darwin OS equivalents (Windows 2001, Windows 2006) and am currently running with "none of the above." The OSYS value doesn't seem to make any difference.
  • Liberally added "Name (_STA, Zero)" to a bunch of unused devices (including all of the UHCx devices). Didn't make any observable differences
  • Injected Nvidia graphics properties (GFX0._DSM) to mimic one of the devices in AppleGraphicsPowerManagement.kext for the MacPro5,1 (Vendor10de,Device0640). AGPM now loads for the discrete graphics, but no observable difference in system behavior.
  • Applied the traditional HPET IRQ patch ( IRQNoFlags () {0, 8, 11, 15} ) (Not sure how I missed this before). No difference.
  • Removed Method (DTGP) and modified _DSMs to work without it. No difference expected - just wanted to make this change.

The answer to my question in Post #32: I had made a BIOS change (I think I changed suspend mode "Auto S1 / S3" to "S1" or "S3") and didn't update my DSDT. Once I updated my DSDT to reflect the BIOS change, FixRegions was no longer necessary. Lesson learned: always check/change your DSDT after making BIOS changes.
 
Last edited:
I reviewed the Intel Series 5 chipset spec and realized that I had the wrong device-ids for my EHCI devices and my SBUS device in the DSDT for my TH55HD. After correcting these, I didn't observe any difference in behavior (sleep or otherwise). These device-id changes are not reflected in files attached to Post #1.
 
Last edited:
Through trial and error, I learned a few things about USBInjectAll.kext and the custom SSDT-UIAC that make USBInjectAll.kext better than LegacyUSBInjector.kext. Specifically, USBInjectAll.kext combined with a custom SSDT-UIAC permits specification of internal vs external USB ports. I'm going to be modifying each of my Mojave hackintoshes to use USBInjectAll.kext with a custom SSDT-UIAC to take advantage of this discovery.

I first realized this advantage here for my Dell Latitude E6410: https://www.tonymacx86.com/threads/...sbinjectall-kext.211311/page-311#post-1981332

EDIT: I tried replacing LegacyUSBInjector.kext with USBInjectAll.kext on my Thinkpad T61. USB Ports did not work on Thinkpad (Model MacBookPro5,1) running both High Sierra 10.13.6 and Mojave 10.14.5. I needed to edit USBInjectAll.kext/Contents/Info.plist to add entries for MacBookPro5,1. I simply copied the entries for MacBookPro7,1 and replaced "MacBookPro7,1" with "MacBookPro5,1". Now, USBInjectAll.kext is working better on my Thinkpad than LegacyUSBInjector.kext, because all USB ports are discovered and working. I noticed with LegacyUSBInjector.kext that one of my external USB 2.0 ports was not working with LegacyUSBInjector.kext.
 
Last edited:
There were a couple of issues bothering me with my TH55HD for which I have work-arounds:
  • Sleep doesn't work: I changed the suspend state from S3 to S1 in BIOS, so that on sleep, displays go black but fans stay running. System wakes normally. Not a fix, but better than nothing.
  • When I would press F4 in the CLOVER boot screen, my system would record ACPI files and then crash with a flashing screen (see attached screenshot). Solution was to change ACPI Mode from 3.0 to 1.0 in BIOS (2.0 didn't work either).
The updated BIOS settings are attached to Post #1.

This issue is documented here: https://sourceforge.net/p/cloverefiboot/tickets/453/
 

Attachments

  • TH55HD-CLOVER-F4.jpg
    TH55HD-CLOVER-F4.jpg
    1.5 MB · Views: 96
Last edited:
New observation: Disabling "Legacy USB" support in BIOS resolves the problem where the front USB (EHC1) ports are lost and must be restored by resetting NVRAM (BIOS option) with USB device plugged in. This USB problem was only observed when I made system config changes (never isolated the one change). Now, I'm not seeing this any more.
 
I upgraded CLOVER on my Biostar TH55HD system to R5018 (Legacy). No observable differences. This change is not reflected in Post #1.
 
Did you mean 'along with AutoMerge=False?' Only asking, because I'm learning, too.
no, use AutoMerge = True, you only need your DSDT in patched folder, no need for SSDT's (from your own extraction) in patched folder, unless you have a laptop and you are disabling nvidia or amd graphics

you can use hot patch files in patched folder, ie XOSI file etc

if you can perform fixes in config.plist like the ones i mentioned on the other page, then there is no need for a DSDT at all
 
no, use AutoMerge = True, you only need your DSDT in patched folder, no need for SSDT's (from your own extraction) in patched folder, unless you have a laptop and you are disabling nvidia or amd graphics

Ok - I see I'm still learning. I am now running with AutoMerge=False on 3 of my 4 hacks. I had learned (maybe incorrectly) that the only time AutoMerge=True is necessary is if you edit one of the existing system SSDTs (like SSDT-0-CpuPm) and place it in the ACPI patched folder (essentially overwriting one of the already existing system SSDTs). For added SSDTs (like SSDT-UIAC for example), there's no need for AutoMerge since CLOVER detects and installs them automatically. The only hack where I have AutoMerge=True is my Thinkpad T61 where I have renamed something in SSDT-0-TP-7U and have placed my copy of this SSDT in the ACPI patched folder.

Where did I go wrong with my understanding?
 
Last edited:
Ok - I see I'm still learning. I am now running with AutoMerge=False on my 3 of my 4 hacks. I had learned (maybe incorrectly) that the only time AutoMerge=True is necessary is if you edit one of the existing system SSDTs (like SSDT-0-CpuPm) and place it in the ACPI patched folder (essentially overwriting one of the already existing system SSDTs). For added SSDTs (like SSDT-UAIC for example), there's no need for AutoMerge since CLOVER detects and installs them automatically. The only hack where I have AutoMerge=True is my Thinkpad T61 where I have renamed something in SSDT-0-CpuPm and have placed my copy in the ACPI patched folder.

Where did I go wrong with my understanding?
no, sounds right, if you edit a system SSDT and place it in patched folder, then AutoMerge = False is correct

but then you will probably want to include all your system SSDT* in patched folder then

out of interest, what did you rename in SSDT-0-CpuPm? as renames can be achieved in config.plist under "Patches" section
 
no, sounds right, if you edit a system SSDT and place it in patched folder, then AutoMerge = False is correct
You meant AutoMerge=True. Correct? I only have AutoMerge=True if I have edited a system SSDT and I placed my edited SSDT in the ACPI patched folder.


... out of interest, what did you rename in SSDT-0-CpuPm? as renames can be achieved in config.plist under "Patches" section
It's an "old" edit that I did before I started learning about CLOVER hotpatches and CLOVER renaming. I only have the Thinkpad T61 upgraded to Mojave 10.14.6 for bragging rights and don't use it much (but it works great!). I'd have to go back and look at origin and patched, but I believe the rename in my SSDT-0-TP-7U SSDT was something to do with PCI0.GFX0 -> PCI0.VID. If I remember correctly, I named my dGPU 'GFX0' and change the iGPU name to avoid confusion while I was learning/editing. It was my first hack.

...but then you will probably want to include all your system SSDT* in patched folder then
I only include the edited system SSDT in the ACPI patched folder. That's what's great about AutoMerge=True. It handles the merge and is smart enough to combine original System SSDTs (not in the ACPI patched folder) with edited System SSDTs (in the patched folder).
 
Last edited:
Status
Not open for further replies.
Back
Top