Contribute
Register

The difference between patching and injecting kexts.......

Status
Not open for further replies.
ok tried to boot into my high sierra drive via unibeast drive. - Default flags didnt get past progress bar (tried various different bootflags last of which was borrowed from the other config - below was the result of (dart=0 npci=0x2000 -x -f -v). I then added this piece of code from the bootable config to the USB config as it was key in booting Nvidia - <key>NvidiaWeb</key>
<true/>


Made no difference.....
 

Attachments

  • bootscreen.jpeg
    bootscreen.jpeg
    3 MB · Views: 66
ok tried to boot into my high sierra drive via unibeast drive. - Default flags didnt get past progress bar (tried various different bootflags last of which was borrowed from the other config - below was the result of (dart=0 npci=0x2000 -x -f -v). I then added this piece of code from the bootable config to the USB config as it was key in booting Nvidia - <key>NvidiaWeb</key>
<true/>


Made no difference.....

Ok.

Going back to post number #3 you seemed to have High Sierra working except for some of the 3rd Party USB ports and a shutdown problem. Clearly everything we've tried since then has only made things worse, which is not as intended.

Perhaps it is time to restore that EFI (which we backed-up in post number #45) and stop trying to mend what clearly wasn't too broken.

Shutdown is probably the Bluetooth being plugged in to a 3rd party port. Move it to an Intel controlled port and ensure it is set as "Internal" and "UsbConnector",255, by creating a proper USB SSDT following @RehabMan 's guide here.

Your USB PCIe card seems to be a VIA chipset and one probably not supported natively. The GenericUSBXHI.kext might help but has not been updated recently. A natively supported one (see buyers guide) might be an easier option, although bear in mind Apple never used these chipsets in their machines and hence the problems.

:)
 
Hi - yes that build is unaffected - I do have a fair few spare ssds to play with.....Everything is still in place on that drive which had the high sierra build so theres nothing to restore. I seem to recall when I purchased the bluetooth adapter that I was told it had to be in that port for some reason - Im not using Bluetooth right now so I suggest removing it completely to see if it cures the shutdown issue?

Re Usb cards I have two 7 port cards here although i only need one- The CSL one and the Orico which I posted details of. They both have different chipsets - I dont think that there are any other 7 port cards out there currently. Happy to try a different chipset if I can find one. Just a reminder that the original card worked fine in Sierra, so one of the kexts in the Sierra EFI must have activated it. I still have a back up of that folder. Its so odd its providing power though to the USB part of the Apple Displays.

Just looking and saw this https://www.amazon.co.uk/dp/B0196SQVFO/?tag=tonymacx86-21 - Its an NEC chipset - what do you think?

Re the SSDT - I did the exercise yesterday re port discovery. Its a shame that Hackintool doesnt register/tally the USB3 ports as creating an SSDT via that method seems easy to me. IO reg confused me on the Usb headers as some differ.
Do I have both XHCI and EHCI activated in my config?

I think it was useful to try a new EFI today as Im still wondering with the current one why its not reading all the occupied PCIe cards in System Profiler. in sierra it saw what was there. In HS it sees some but not others.

I'll tackle this in the morning and let you know how its going as my brain is fried this eve.....I must have performed a thousand boot attempts today :)
 
Hi @UtterDisbelief

1. Removed the Bluetooth adapter from the Motherboard. Did not stop restart. Kept it out for now.

2. Still searching for drivers that might boot one of my Pcie USB cards tried adding the kexts to clover caldigitio and caldigitxhci. Didn't work and caused usb buss issues , but what it did do was allow shutdown without restarting, which suggests that a kext might be causing this issue. Currently there is USBINJECTALL and USBHCI_FL1009 in there. Whilst I was at this I did a speedtest to check that USB3.0 was actually active and not just usb2 looking like usb3. I can confirm the USB3 ports are three times as fast as USB2 ports.

3. studied the SSDT guide again - quite complex - As I mentioned I did have a go at Port Identification and posted my results here previously. Today I went back to that and looked further at Hackintool and IOregistry and system Profiler. In there I have HP numbers and PR numbers- Im not surer what PR numbers refer to but im guessing internal sockets? - Then there are 0x** numbers some of those appear the same even though the ports are different. For example: front case USB3 Port 1 identifies as 0x01. HP21 rear port USB2 also has the identifier 0x01 as does USB3 rear port 1. Im guessing these aren't port identifiers but buss identifiers? Whilst Hackintool was open I changed the connector tab to HP11 l and HP12 to USB3 as they are the 2 front case ports. Once I did that the ports became inactive. Changing back to 2 reactivated them.....Reading your guide on this I should have HP and SS ports - Mine are HP and PR.Also according to system registry I have EH01 and EH02 ports - In Hackintool it sees EHC1 and EH02 only. Could this be why USB3 isn't registering in Hackintool? How can I activate EH01? would this be via Clover configurator? can I ultimately create an ssdt via hackintool?

4. I downloaded a version of MaciASL and opened it and exported the results which im enclosing - not sure if it sheds any light. There seems a fair few invalid entries in there. Is DSDT creation automatic via that app? in that it appears to scan the machine and list the results. Shame I can't understand it :) can hackintool also create a DSDT?
 

Attachments

  • MACIASL REPORT 1.pdf
    396.7 KB · Views: 169
Last edited:
Hi @UtterDisbelief

1. Removed the Bluetooth adapter from the Motherboard. Did not stop restart. Kept it out for now.

2. Still searching for drivers that might boot one of my Pcie USB cards tried adding the kexts to clover caldigitio and caldigitxhci. Didn't work and caused usb buss issues , but what it did do was allow shutdown without restarting, which suggests that a kext might be causing this issue. Currently there is USBINJECTALL and USBHCI_FL1009 in there. Whilst I was at this I did a speedtest to check that USB3.0 was actually active and not just usb2 looking like usb3. I can confirm the USB3 ports are three times as fast as USB2 ports.

3. studied the SSDT guide again - quite complex - As I mentioned I did have a go at Port Identification and posted my results here previously. Today I went back to that and looked further at Hackintool and IOregistry and system Profiler. In there I have HP numbers and PR numbers- Im not surer what PR numbers refer to but im guessing internal sockets? - Then there are 0x** numbers some of those appear the same even though the ports are different. For example: front case USB3 Port 1 identifies as 0x01. HP21 rear port USB2 also has the identifier 0x01 as does USB3 rear port 1. Im guessing these aren't port identifiers but buss identifiers? Whilst Hackintool was open I changed the connector tab to HP11 l and HP12 to USB3 as they are the 2 front case ports. Once I did that the ports became inactive. Changing back to 2 reactivated them.....so I doubt I can create an ssdt via hackintool.

4. I downloaded a version of MaciASL and opened it and exported the results which im enclosing - not sure if it sheds any light. There seems a fair few invalid entries in there. Is DSDT creation automatic via that app? in that it appears to scan the machine and list the results. Shame I can't understand it :) can hackintool also create a DSDT?

1) Okay

2) There have been many drivers for 3rd Party USB released over the years: CalDigital, Renesas, NEC etc. plus others created by community coders: VIA, ASMedia etc. Not all have been maintained throughout each iteration of macOS, so some may have worked in Sierra but no longer in High Sierra or Mojave.

3) Hackintool is a very powerful and useful tool. I'm greatly impressed with it, but you need to understand what it is doing. For example I just ran my own USB set-up through it and was given 3x *.aml files and a codeless kext (with an info.plist of port definitions in it) as output. The standard or beginner's guide to creating a USB_SSDT hereabouts will give you just one *.aml to use.

As for all your port names - PR, RP or what have you, are usually ones not on the Intel XHC controller, but 3rd Party.

If this was my machine - and I was 100% sure I wouldn't be damaging a previously working and safe installation - I would try making some changes to my BIOS - XHCI Handoff = ENABLED and EHCI Handoff = DISABLED just for a test.

Legacy USB Support leave as ENABLED.

Without doing anything else I would see if my PC booted to macOS and if so would then run IORegistryExplorer to see where all my ports (ok, not all will show) appear on the tree. With that I could then move forward - either re-enabling EHCI or not.

Because this is just a BIOS test it should not alter the macOS installation to its detriment.

4) That output was 204-pages :crazy:. However, at this stage IORegistryExplorer is more relevant.

:)
 
Last edited:
Hi - I edited my previous post while you were writing this - It appears from IO Reg and Hackintool that I need EH01 active in addition to EH02. Is that via clover? I didn't realise that report was so big - I thought it was 3 pages :) Ill try the BIOS change
 
Hi - I edited my previous post while you were writing this - It appears from IO Reg and Hackintool that I need EH01 active in addition to EH02. Is that via clover? I didn't realise that report was so big - I thought it was 3 pages :) Ill try the BIOS change

EH01 and EH02 are EHCI controller names. As I think your motherboard may have an XHC controller too - and one that is easier to work with - that's the reason for the test. It may or may not work etc.
 
Disabled BIOS EHCI - no change that I can discern..... boots same
 

Attachments

  • io after bios change.png
    io after bios change.png
    338.8 KB · Views: 51
Disabled BIOS EHCI - no change that I can discern..... boots same

Good :thumbup:

I'm guessing your new PCIe card was plugged in too.

So you also have the two FakePCIID kexts installed.

And an EHC rename pair in the config.

I think you have what you have then. (You could revert your BIOS if you want to by the way). It would be nice if you knew which motherboard ports were the Intel USB and which the Fresco USB. Something I have no way of telling remotely unless they are marked as a hub on the back panel or similar. All I can see for sure is an AppleUSB2InternalIntelHub.

I am not sure if your failure to shutdown properly is related to the electronics of the add-on card, as I'm guessing you've done all testing with it plugged in. After all we are trying to get PC hardware to pretend to be a Mac. There are always limitations. LAN or USB are the two favourite culprits outside of Power Management.

Finally, 3rd Party USB support is getting patchier as macOS moves on and special drivers/kexts don't get updated. Maybe Sierra was a sweet spot for certain brands of chipset.

As you sound like a Pro user then maybe reliability is more important than leading-edge.

:)
 
Last edited:
just so you know I have ordered a third usb3 card that arrives tomorrow

the shutdown issue happened even without the usb3 card installed - there are other cards in my mac that do other jobs - these aren't anything to do with sata or usb though. the only time it shutdown ok was when i added that cal kext.

if i look at the motherboard itself can i deduce which is intel and which is fresco? the io reg cant help?

there is only one fake pcid in there i believe -Im pretty sure you told me to remove the second one. Ill double check the EFI and edit this message - yes theres just fakepcIID in there . The other ones on my desktop as I was told to remove it.

Boot from LAN is disabled in BIOS by the way. _ I still feel im close - If I could get a SSDT and DSDT - that would go a long way to cure issues I suspect. I won't go past High Sierra on this build due to Nvidia. High Sierras not new - Mojave I would agree with you - I have always stayed back from the latest versions. Im perplexed by hackintool not displaying usb3. as a reminder of whats loaded, heres my current EFI
 

Attachments

  • EFI.zip
    35.6 MB · Views: 130
Last edited:
Status
Not open for further replies.
Back
Top