Contribute
Register

OSX El Capitan - USB Issues

Status
Not open for further replies.
...
First of all, I'm assuming to make an injector I can take a generic template of one and update it via the info.plist to inject everything properly?

Yes.

What do the base64 values represent?

Binary data. Look at it in a plist editor to see the hex values.

And w/ about the USBConnector value? I've noticed that there's only 2 - 255 and 0. What's the difference?

This is defined by the ACPI spec (_UPC).

Specifies the host connector type. It is ignored by OSPM if the port is not user visible:
0x00:Type ‘A’ connector
0x01:Mini-AB connector
0x02:ExpressCard
0x03:USB 3 Standard-A connector
0x04:USB 3 Standard-B connector
0x05:USB 3 Micro-B connector
0x06:USB 3 Micro-AB connector
0x07:USB 3 Power-B connector
0x08 – 0xFE: 0xFF: Reserved

0xFF (255) seems to be used for internal devices such as the camera on a laptop (for example).

Does this entry (PR01 hub) represent the ACPI values under EH01/EH02 > RHUB > PRT1? If not, what does this represent? I'm assuming some sort of hub...

It is a hub injector. In my u430 PR01 (first port on EH01) is a hub with ports that needed injection (because DSDT is wrong).

How to determine locationID? And also how to customize per laptop, if there's more than one "USB20InternalHub"?

locationID comes from ioreg. It identifies the port/hub uniquely and allows the port injector to match against that specific instance.

Does IONameMatch attach to DSDT? and does IOProviderClass attach to loaded kexts?

IOName matches against the name of the object in DSDT.
 
Yes.



Binary data. Look at it in a plist editor to see the hex values.



This is defined by the ACPI spec (_UPC).

Specifies the host connector type. It is ignored by OSPM if the port is not user visible:
0x00:Type ‘A’ connector
0x01:Mini-AB connector
0x02:ExpressCard
0x03:USB 3 Standard-A connector
0x04:USB 3 Standard-B connector
0x05:USB 3 Micro-B connector
0x06:USB 3 Micro-AB connector
0x07:USB 3 Power-B connector
0x08 – 0xFE: 0xFF: Reserved

0xFF (255) seems to be used for internal devices such as the camera on a laptop (for example).



It is a hub injector. In my u430 PR01 (first port on EH01) is a hub with ports that needed injection (because DSDT is wrong).



locationID comes from ioreg. It identifies the port/hub uniquely and allows the port injector to match against that specific instance.



IOName matches against the name of the object in DSDT.

A couple more questions before I start working on this:

-Where to find generic template?
-How to find locationID in IOReg?
-With _UPC, I'm assuming for all visible ports, I would use 0x0, and for all nonvisible/fake ports I would use 0xFF? As I'm doing this on a desktop and the 0xFF value for laptops is irrelevant to me (for now, I may work on making port injectors to fix 7-series USB on my laptop)

Cheers!

-Duncan
 
Also, what plist editor can I use to see the binary values in base64? B/c if I open it up in Xcode, it says "Data: ", there's nothing there. And when I open it with TextWrangler, it shows the base64 value... :think:
 
Update:

I've began to work on the port injector deriving from all of RehabMan's examples and my own knowledge: I've been using a template of FakePCIID (Used FakePCIID and then added my own stuff in info.plist), if that's wrong (rehab man), please let me know :D, but here is current state of info.plist:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>BuildMachineOSBuild</key>
	<string>14E46</string>
	<key>CFBundleIdentifier</key>
	<string>org.rehabman.injector.FakePCIID_USB_Port_Injector</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>FakePCIID_USB_Port_Injector</string>
	<key>CFBundlePackageType</key>
	<string>KEXT</string>
	<key>CFBundleShortVersionString</key>
	<string>1.2.0</string>
	<key>CFBundleVersion</key>
	<string>1.2.0</string>
	<key>DTCompiler</key>
	<string>com.apple.compilers.llvm.clang.1_0</string>
	<key>DTPlatformBuild</key>
	<string>6E35b</string>
	<key>DTPlatformVersion</key>
	<string>GM</string>
	<key>DTSDKBuild</key>
	<string>10M2518</string>
	<key>DTSDKName</key>
	<string>macosx10.6</string>
	<key>DTXcode</key>
	<string>0640</string>
	<key>DTXcodeBuild</key>
	<string>6E35b</string>
	<key>IOKitPersonalities</key>
	<dict>
		<key>iMac14,2-EH01</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH01</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-EH02</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH02</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-XHC</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>XHC</string>
			<key>IOProviderClass</key>
			<string>AppleUSBXHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>port-count</key>
				<data>
				EgAAAA==
				</data>
				<key>ports</key>
				<dict>
					<key>HS01</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						AQAAAA==
						</data>
					</dict>
					<key>HS02</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						AgAAAA==
						</data>
					</dict>
					<key>HS05</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						BQAAAA==
						</data>
					</dict>
					<key>HS06</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						BgAAAA==
						</data>
					</dict>
					<key>HS07</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>
						BwAAAA==
						</data>
					</dict>
					<key>HS08</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>
						CAAAAA==
						</data>
					</dict>
					<key>SSP1</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EAAAAA==
						</data>
					</dict>
					<key>SSP2</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EQAAAA==
						</data>
					</dict>
					<key>SSP3</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EgAAAA==
						</data>
					</dict>
					<key>SSP4</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EwAAAA==
						</data>
					</dict>
					<key>SSP5</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						FAAAAA==
						</data>
					</dict>
					<key>SSP6</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						FQAAAA==
						</data>
					</dict>
				</dict>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
	</dict>
	<key>OSBundleRequired</key>
	<string>Root</string>
	<key>Source Code</key>
	<string>https://github.com/RehabMan/FakePCIID</string>
</dict>
</plist>

Currently figuring out which USB ports on the computer work, which don't, and which have USB2/3 connections & speeds (IORegExplorer is very useful for this :D)... Will update soon!

-Duncan
 
A couple more questions before I start working on this:

-Where to find generic template?
-How to find locationID in IOReg?
-With _UPC, I'm assuming for all visible ports, I would use 0x0, and for all nonvisible/fake ports I would use 0xFF? As I'm doing this on a desktop and the 0xFF value for laptops is irrelevant to me (for now, I may work on making port injectors to fix 7-series USB on my laptop)

Cheers!

-Duncan

No generic template that I know of. But plenty of (working) examples. There isn't much too it, so you can use any example as a template if you wish.

Find the USB node you're interested in and look at the right hand side properties for locationID. It is not hard to find.

As for _UPC it depends on which data item in the package you're referring to (read the ACPI spec).

With port injectors, there is no reason to edit _UPC, although you might find it useful to look at what is there. The value you use (for the Type field) should equate to the type of port.
 
Update:

I've began to work on the port injector deriving from all of RehabMan's examples and my own knowledge: I've been using a template of FakePCIID (Used FakePCIID and then added my own stuff in info.plist), if that's wrong (rehab man), please let me know :D, but here is current state of info.plist:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>BuildMachineOSBuild</key>
	<string>14E46</string>
	<key>CFBundleIdentifier</key>
	<string>org.rehabman.injector.FakePCIID_USB_Port_Injector</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>FakePCIID_USB_Port_Injector</string>
	<key>CFBundlePackageType</key>
	<string>KEXT</string>
	<key>CFBundleShortVersionString</key>
	<string>1.2.0</string>
	<key>CFBundleVersion</key>
	<string>1.2.0</string>
	<key>DTCompiler</key>
	<string>com.apple.compilers.llvm.clang.1_0</string>
	<key>DTPlatformBuild</key>
	<string>6E35b</string>
	<key>DTPlatformVersion</key>
	<string>GM</string>
	<key>DTSDKBuild</key>
	<string>10M2518</string>
	<key>DTSDKName</key>
	<string>macosx10.6</string>
	<key>DTXcode</key>
	<string>0640</string>
	<key>DTXcodeBuild</key>
	<string>6E35b</string>
	<key>IOKitPersonalities</key>
	<dict>
		<key>iMac14,2-EH01</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH01</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-EH02</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH02</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-XHC</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>XHC</string>
			<key>IOProviderClass</key>
			<string>AppleUSBXHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>port-count</key>
				<data>
				EgAAAA==
				</data>
				<key>ports</key>
				<dict>
					<key>HS01</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						AQAAAA==
						</data>
					</dict>
					<key>HS02</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						AgAAAA==
						</data>
					</dict>
					<key>HS05</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						BQAAAA==
						</data>
					</dict>
					<key>HS06</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						BgAAAA==
						</data>
					</dict>
					<key>HS07</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>
						BwAAAA==
						</data>
					</dict>
					<key>HS08</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>
						CAAAAA==
						</data>
					</dict>
					<key>SSP1</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EAAAAA==
						</data>
					</dict>
					<key>SSP2</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EQAAAA==
						</data>
					</dict>
					<key>SSP3</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EgAAAA==
						</data>
					</dict>
					<key>SSP4</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						EwAAAA==
						</data>
					</dict>
					<key>SSP5</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						FAAAAA==
						</data>
					</dict>
					<key>SSP6</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>
						FQAAAA==
						</data>
					</dict>
				</dict>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
	</dict>
	<key>OSBundleRequired</key>
	<string>Root</string>
	<key>Source Code</key>
	<string>https://github.com/RehabMan/FakePCIID</string>
</dict>
</plist>

Currently figuring out which USB ports on the computer work, which don't, and which have USB2/3 connections & speeds (IORegExplorer is very useful for this :D)... Will update soon!

-Duncan

Use my port injectors as templates instead. FakePCIID is not an injector (not a codeless kext, it is a kext with code...), so the items in it don't really make sense for an injector.

There are plenty of port injectors in my Projects(see link in signature). The Envy, u430, y50 projects all have a port injector kext. The u430 example is the most comprehensive as I needed to add a hub port injector.

But you're on the right track. Determine which ports work, what their addresses are (_ADR in ACPIPlane, also suffix after @), and what their types are. It is quick and easy once you see what's going on.
 
Use my port injectors as templates instead. FakePCIID is not an injector (not a codeless kext, it is a kext with code...), so the items in it don't really make sense for an injector.

There are plenty of port injectors in my Projects(see link in signature). The Envy, u430, y50 projects all have a port injector kext. The u430 example is the most comprehensive as I needed to add a hub port injector.

But you're on the right track. Determine which ports work, what their addresses are (_ADR in ACPIPlane, also suffix after @), and what their types are. It is quick and easy once you see what's going on.

Alright, I'll update the USB_port_injector w/ the one from the u430 thread...

I took some notes yesterday on the port configuration of my mobo and how things are standing right now, and here was the output of it:

Code:
[COLOR=#454545][FONT=Helvetica]EH01 (EHC1):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]PR01:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 7[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 8[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 8 ports, 1 hub[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]EH02 (EHC2);[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]PR01:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 6 ports, 1 hub[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]XHC (XHC1):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]USB2	USB3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]————————[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS01        SSP1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS02        SSP2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS03        SSP3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS04        -SSP4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS05        SSP5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS06        -SSP6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS07[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS08[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS09[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS10[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS11[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS12[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS13[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS14[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 14HS ports, 6SSP ports (exceeds 15 port limitation, see below):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Fixing USB:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-All HS devices on USB3 ports are multiplexed to EH01/2 controllers[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-Need to define SSP1(6) / SSP1/2/3/5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Ports (Physical) w/ USB_Port_Injector:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#1 ROG Connect Port:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-USB2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20Hub@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D180000 (PR18?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#2 Keybot Port:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#3 USB3 port (top, front panel):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D110000 (PR11?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#4 USB3 port (bottom, front panel):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: keyboard & mouse - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20Hub@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D120000 (PR12?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#5 USB3 port (below HDMI port, mobs) — investigate[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB30XHCIPort@00200000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB2 Dell Keyboard - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@00300000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#6 USB3 port (below S/PDIF output, mobo) — investigate[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB30XHCIPort@00100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB2 Dell Keyboard - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@00400000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#7 USB3 port (below USB3 port 5, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D160000 (PR16?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#8 USB3 port (below USB3 port 6, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D150000 (PR15?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#9 USB3 port (below gigabit network jack, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#10 USB3 port (corner port, next to port #9, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]

I noticed that in the boot log, this would show up:
Code:
[FONT=Menlo]Sep 25 16:15:21 localhost kernel[0]: 000000.805706 PXSX@00000000: AppleUSBXHCI::createPorts: created port 1[/FONT]
[FONT=Menlo]Sep 25 16:15:21 localhost kernel[0]: 000000.805757 PXSX@00000000: AppleUSBXHCI::createPorts: created port 2[/FONT]
[FONT=Menlo]Sep 25 16:15:21 localhost kernel[0]: 000000.805823 PXSX@00000000: AppleUSBXHCI::createPorts: created port 3[/FONT]
[FONT=Menlo]Sep 25 16:15:21 localhost kernel[0]: 000000.805875 PXSX@00000000: AppleUSBXHCI::createPorts: created port 4[/FONT]

and in the tests that I did, two of the 8 USB3 ports that were connected via PXSX and AppleUSBXHCI had full native USB3/2 compatibility with the multiplexing working and everything...


Just something to note ...

Will update soon!

-Duncan
 
Installed port injector, nothing changed, but "not creating the rest of the 6 ports" message went away ...

I checked IOReg/XHC and the devices that I specified in the port injector were injected, which I think is good :D ... still no difference though...

What to do from here? :lol:

-Duncan
 
Installed port injector, nothing changed, but "not creating the rest of the 6 ports" message went away ...

I checked IOReg/XHC and the devices that I specified in the port injector were injected, which I think is good :D ... still no difference though...

What to do from here? :lol:

-Duncan

What is the current issue/status? Post ioreg to support.
 
What is the current issue/status? Post ioreg to support.

Current issue/status: USB ports still work the same w/ and w/o injector, trying to figure out how to setup port injector

IOReg (w/ injector): View attachment IOReg-14,2-USB_port_injector.ioreg
IOReg (w/o injector): View attachment IOReg-14,2-No-USB_port_injector.ioreg

USBXHC_MaximusVIIGene.kext (injector) info.plist:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>English</string>
	<key>CFBundleGetInfoString</key>
	<string>1.0, Copyright © 2015 RehabMan. All Rights Reserved.</string>
	<key>CFBundleIdentifier</key>
	<string>org.rehabman.injector.USBXHCI_MaximusVIIGene</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>USBXHCI_MaximusVIIGene</string>
	<key>CFBundlePackageType</key>
	<string>KEXT</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleSignature</key>
	<string>????</string>
	<key>CFBundleVersion</key>
	<string>1.0</string>
	<key>IOKitPersonalities</key>
	<dict>
		<key>iMac14,2-EH01</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH01</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-EH02</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>EH02</string>
			<key>IOProviderClass</key>
			<string>AppleUSBEHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>kUSBMuxEnabled</key>
				<true/>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
		<key>iMac14,2-XHC</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleUSBMergeNub</string>
			<key>IOClass</key>
			<string>AppleUSBMergeNub</string>
			<key>IONameMatch</key>
			<string>XHC</string>
			<key>IOProviderClass</key>
			<string>AppleUSBXHCIPCI</string>
			<key>IOProviderMergeProperties</key>
			<dict>
				<key>ports</key>
				<dict>
					<key>HS01</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>AQAAAA==</data>
					</dict>
					<key>HS02</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>AgAAAA==</data>
					</dict>
					<key>HS05</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>BQAAAA==</data>
					</dict>
					<key>HS06</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>BgAAAA==</data>
					</dict>
					<key>HS07</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>BwAAAA==</data>
					</dict>
					<key>HS08</key>
					<dict>
						<key>UsbConnector</key>
						<integer>255</integer>
						<key>port</key>
						<data>CAAAAA==</data>
					</dict>
					<key>SSP1</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>EAAAAA==</data>
					</dict>
					<key>SSP2</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>EQAAAA==</data>
					</dict>
					<key>SSP3</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>EgAAAA==</data>
					</dict>
					<key>SSP4</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>EwAAAA==</data>
					</dict>
					<key>SSP5</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>FAAAAA==</data>
					</dict>
					<key>SSP6</key>
					<dict>
						<key>UsbConnector</key>
						<integer>3</integer>
						<key>port</key>
						<data>FQAAAA==</data>
					</dict>
				</dict>
			</dict>
			<key>model</key>
			<string>iMac14,2</string>
		</dict>
	</dict>
	<key>OSBundleRequired</key>
	<string>Root</string>
</dict>
</plist>

I have notes of USB port mapping in a couple posts earlier, but I'll just put them here again:

Code:
[COLOR=#454545][FONT=Helvetica]Mini Struggle Box USB Config (DSDT):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]EH01 (EHC1):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]PR01:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 7[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 8[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 8 ports, 1 hub[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]EH02 (EHC2);[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]PR01:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PR1 6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 6 ports, 1 hub[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]XHC (XHC1):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]USB2	USB3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]————————[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS01        SSP1[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS02        SSP2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS03        SSP3[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS04        -SSP4[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS05        SSP5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS06        -SSP6[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS07[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS08[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS09[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS10[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS11[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS12[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]HS13[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-HS14[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Total Devices / Ports: 14HS ports, 6SSP ports (exceeds 15 port limitation, see below):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Fixing USB:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-All HS devices on USB3 ports are multiplexed to EH01/2 controllers[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]-Need to define SSP1(6) / SSP1/2/3/5[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]Ports (Physical) w/ USB_Port_Injector:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#1 ROG Connect Port:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-USB2[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20Hub@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D180000 (PR18?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#2 Keybot Port:[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#3 USB3 port (top, front panel):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D110000 (PR11?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#4 USB3 port (bottom, front panel):[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: keyboard & mouse - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20Hub@1D100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D120000 (PR12?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#5 USB3 port (below HDMI port, mobs) — investigate[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB30XHCIPort@00200000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB2 Dell Keyboard - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@00300000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#6 USB3 port (below S/PDIF output, mobo) — investigate[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB30XHCIPort@00100000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB2 Dell Keyboard - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-PXSX@00000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@00400000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#7 USB3 port (below USB3 port 5, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D160000 (PR16?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#8 USB3 port (below USB3 port 6, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Connected: USB3 external drive - showing up in OS[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-EH01@1D000000[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-AppleUSB20HubPort@1D150000 (PR15?)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#9 USB3 port (below gigabit network jack, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]
[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]#10 USB3 port (corner port, next to port #9, mobo)[/FONT][/COLOR]
[COLOR=#454545][FONT=Helvetica]	-Not working[/FONT][/COLOR]

Sorry for asking such a vague question, but :lol::p

-Duncan
 
Status
Not open for further replies.
Back
Top