Contribute
Register

[Release] Hackintool v3.x.x

Oh. And I'm using the framebuffer-portcount <04000000> patch to fix the black screen at both with iMac17,1
 
It looks like that frame has those connectors pipe values set to 10 by default. If we knew exactly what the pipe value meant I could probably tell you but we don't. Maybe @RehabMan can help you?

It really is a mystery to me to.
If any of us had some experience in developing the Linux driver, then we might know something,...
 
Looks like I was examining the codec VID's of the wrong AppleHDAController entry. I've uploaded a new version of FB-Patcher (1.5.4) can you please give it a try?

The bug in FB-Patcher was because I was looking at the first instance of AppleHDAController which was under HDAU and (as you mention being nVidia audio) did not match any VID's in AppleALC. Now I specifically look at the HDEF (or HDAS if it doesn't exist) entries. Thanks for clarifying that.

Hi @headkaze,

I did wonder if HDMI might have something to do with it as I use AppleALC for both Nvidia HDMI and Codec Audio.
Have just tested the latest version, it now detects the Codec and displays the layout id's ...

Screen Shot 2018-10-24 at 13.13.35.png
Nice job on the quick bug fix

Cheers
Jay
 
No. That would only grab ports on XHC. It won't get ports on EH01/EH02 or ports on the hubs typically connected to EH01.PR11, EH01.PR21.

PRxx on EH0x are of type AppleUSBEHCIPort.
HPxx on the hubs are of type AppleUSB20InternalIntelHubPort. But that's only if the PRxx it is attached to is marked internal (UsbConnector=255). Non internal hub ports would be AppleUSB20IntelHubPort.

Maybe you could match against AppleUSBHostPort, as all have that in their inheritance tree.

Thanks to this post I've added support for EHxx ports by using an AppleUSBHostPort search.

So I have a user who has an EH01 USB controller and tried USBPorts.kext generated by FB-Patcher.

I don't really understand why but once he installed USBPorts.kext his EH01 port that has the "Microsoft Nano Transceiver v2.0" plugged into it changed from HP13 to PR13. Also the "portType" / "UsbConnector" entries have gone from the EH01 ports even though I'm injecting them in USBPorts.kext.

I've attached ioreg_before.txt and ioreg_after.txt as well as the USBPorts.kext. Any chance you could take a look?
 

Attachments

  • USBPortsArchive.zip
    394 KB · Views: 76
Thanks to this post I've added support for EHxx ports by using an AppleUSBHostPort search.

So I have a user who has an EH01 USB controller and tried USBPorts.kext generated by FB-Patcher.

I don't really understand why but once he installed USBPorts.kext his EH01 port that has the "Microsoft Nano Transceiver v2.0" plugged into it changed from HP13 to PR13. Also the "portType" / "UsbConnector" entries have gone from the EH01 ports even though I'm injecting them in USBPorts.kext.

I've attached ioreg_before.txt and ioreg_after.txt as well as the USBPorts.kext. Any chance you could take a look?

It is because the Info.plist of USBPorts.kext is coded incorrectly.

It is trying to do hub port injection with an EH01 injector. Will not work. This will inject HP12/HP13 ports (USBInjectAll.kext names these PR12/PR13) on the EH01 controller instead of the hub attached to PR11.

Note: The PR13 for the port name that the Microsoft Nano* is connected to is actually coming from ACPI, not the USBPorts.kext injector (ACPI is using PRxx for hub ports... the names are arbitrary, but I think you can see why I chose to use HPxx for hub ports, PRxx for ports on EHCI, HSxx for HS on xHCI, and SSxx for SS on xHCI).

Hub ports require a different IOKitPersonalities section, different matching criteria (they match on location). Refer to examples that Apple provided in /System/Library/Extensions/IOUSBHostFamily.kext/Contents/PlugIns/AppleUSBHub.kext/Contents/Info.plist or look at the matching criteria used for hub ports in USBInjectAll/Contents/Info.plist.
 
Hub ports require a different IOKitPersonalities section, different matching criteria (they match on location). Refer to examples that Apple provided in /System/Library/Extensions/IOUSBHostFamily.kext/Contents/PlugIns/AppleUSBHub.kext/Contents/Info.plist or look at the matching criteria used for hub ports in USBInjectAll/Contents/Info.plist.

Thanks RehabMan. Can you please take a look at this version. Is it correct now?
 

Attachments

  • USBPorts.kext.zip
    1.2 KB · Views: 75
Thanks RehabMan. Can you please take a look at this version. Is it correct now?

IONameMatch should be removed.
IOKit matching for hub injection is solely on locationID, model, IOProviderClass.

Note that you can use either com.apple.driver.AppleUSBMergeNub/AppleUSBMergeNub or com.apple.driver.AppleUSBHostMergeProperties/AppleUSBHostMergeProperties. Both do the same thing. Apple uses the latter. You're using the former.
 
I'm new to FBPatcher but have been looking into it for audio patching. I believe I've followed all the steps correctly but whenever I attempt to [Generate Patch] with Devices/Properties or (just for testing) iASL DSL Source FBPatcher crashes. This behavior has been experienced on version 1.5.4 and 1.5.6.

The only relevant info I'm able to find in the system logs is as follows:

Oct 25 16:15:24 Michaels-iMac FBPatcher[3352]: DEPRECATED USE in libdispatch client: dispatch source activated with no event handler set; set a breakpoint on _dispatch_bug_deprecated to debug

*<I believe this issue may be resolved. Lack of research part. I did not have WhateverGreen installed. >*

** It turns out the application, even v1.5.7 crashing the same way. Also, File->Export->config.plist crashes.

Any ideas anyone?
 
Last edited:
Intel FB-Patcher 1.5.7 Released
- Now detects EHC and hub ports (thanks to RehabMan & SavageAUS). Multi-select USB Ports. Now detects if USBInjectAll is installed

What about usb 2 ports ?
On my Haswell laptop HPxx ports are not recognised by this tool.

The latest version now detects EHC ports and hubs. Thanks @RehabMan
 
Last edited:
Hi @headkaze,

I might have found another issue with FB-Patcher ... on my desktop system which is a i7-4790K CPU with HD4600 IGUP, FB-Patcher does not report viable Sys Def's in the lower Framebuffer info section on the General tab, like it does on all my other systems:-

Screen Shot 2018-10-26 at 16.12.20.png

I'm using a headless ig-platform-id so might this be the cause ?

It's not causing any issues for me but thought i'd mention it just in case its a bug, console log produced the following :-

Code:
default    16:22:02.177505 +0100    launchservicesd    CHECKIN:0x0-0x44044 2930 com.Headsoft.FBPatcher
error    16:22:02.337459 +0100    FBPatcher            AEGetDescData of non-desc type 'reco' not a good idea
default    16:22:02.340217 +0100    FBPatcher    Initializing General
default    16:22:02.340323 +0100    FBPatcher    Model Identifier: iMac14,2
default    16:22:02.340422 +0100    FBPatcher    IntelGen: Haswell
default    16:22:02.340544 +0100    FBPatcher    PlatformId: 0x04120004
default    16:22:02.341252 +0100    FBPatcher    GPU: Intel HD Graphics 4600 (0x0412, 0x8086)
default    16:22:02.341428 +0100    FBPatcher    Quartz Extreme Supported: Yes
default    16:22:02.341458 +0100    FBPatcher    Metal Supported: Yes
default    16:22:02.341484 +0100    FBPatcher    Metal Device Name: NVIDIA GeForce GTX 980 Ti
default    16:22:02.341506 +0100    FBPatcher    Metal Low Power: No
default    16:22:02.341525 +0100    FBPatcher    Metal Headless: No
default    16:22:02.341545 +0100    FBPatcher    Total VRAM available: 1536 MB
default    16:22:02.341565 +0100    FBPatcher    Free VRAM available: 4379 MB (4592214016 Bytes)
default    16:22:02.341627 +0100    FBPatcher    Initializing Bundle Data
default    16:22:02.342709 +0100    FBPatcher    Initializing Settings
default    16:22:02.346741 +0100    FBPatcher    Initializing Audio
default    16:22:02.347308 +0100    FBPatcher    Success Getting Codec VID Array
default    16:22:02.347340 +0100    FBPatcher    Found Audio Codec VID: 0x0900
default    16:22:02.368715 +0100    FBPatcher    Initializing Menus
default    16:22:02.368889 +0100    FBPatcher    Initializing USB
default    16:22:02.401554 +0100    FBPatcher    Initializing Installed
default    16:22:02.402252 +0100    FBPatcher    Initialization Done
default    16:22:12.192048 +0100    FBPatcher    LSExceptions shared instance invalidated for timeout.

Dump of "ioreg -l >ioreg.txt" in attached archive, let me know if you need anything else ..

Cheers
Jay
 

Attachments

  • ioreg.txt.zip
    163.5 KB · Views: 70
Back
Top