Jump to content

Patched AppleUSBXHCI from OS 10.8.2

USB 3 AppleUSBXHCI

  • Please log in to reply
128 replies to this topic

#81
marcelol

marcelol

    InsanelyMac Protégé

  • Members
  • Pip
  • 47 posts

Yes, read post 76


I mean, has anyone patched the 10.8.3 kext and released it. If it works at least with the u720200(a) chipsets, at least it'd be worth trying out.

Also, since I haven't seen anyone SPECIFICALLY mention it......has anyone tried using a usb 3.0 hub connected to their USB 3.0 cards to see if you can plug in more than 1 external drive ? That's currently a limitation of the patched LaCie drivers, while they can see a USB 3.0 hub now, they won't enumerate drives connected to them.

#82
Zenith432

Zenith432

    InsanelyMac Sage

  • Developers
  • 420 posts
  • Gender:Male
Apple has published the sources for AppleUSBXHCI a few days ago.

#83
sebus

sebus

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 262 posts
  • Gender:Male
  • Location:UK
Vostro 3560, all USB 3 ports

I can boot from ##### USB & during the setup external mouse/keyboard works.

But once ML is installed & reboots to setup, I can no longer get any mouse keyboard working (not internal, not external)

Error relates to AppleUSBXHCI

https://imageshack.u...30502122948.jpg

I copied the patched kext to USB /extra folder, but seems to make no difference

Help appreciated

sebus

#84
sebus

sebus

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 262 posts
  • Gender:Male
  • Location:UK
The hardware is : Intel USB 3.0 eXtensible Host Controller
Win driver here

The patched version from below works as well on 10.8.3 , perfectly fine

#85
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan
I just updated to 10.8.4. And USB3.0 ports still work perfectly with these patches. (Haven't tested on sleeping because my Clover not allow me to sleep.)
The transfer speed seems to be a bit improved in 10.8.4. :thumbsup_anim:

Here is a patched 10.8.4 AppleUSBXHCI.kext if someone would like to give it a try.
Attached File  10.8.4_Patched AppleUSBXHCI.kext.zip   84.59KB   199 downloads

#86
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan

@Zenith432

I've gave OS X 10.9 DP1 a try and decompiled its AppleUSBXHCI with otool. I found out the AppleUSBXHCI's structure changed a lot.
I could still find each patch's location except the one checking whether xhci version >= 1.0. Could you give me a hand to find it?

Here is my current progress:

Spoiler


The attachment contains 10.9 DP1's IOUSBFamily.kext, AppleUSBXHCI decompiled text from otool and my current patched IOUSBFamily with all above patches:
Attached File  10.9 DP1 AppleUSBXHCI.zip   2.3MB   183 downloads

 

PS. Please notice that XHCI 0.96 controllers, such as: µPD720200, ASM1042 and VL800, are not able to work with this kext currently until the XHCI Version Check Patch is done.



#87
robertoSTUDIOS

robertoSTUDIOS

    InsanelyMac Protégé

  • Members
  • PipPip
  • 76 posts
  • Gender:Male
  • Location:Hungary

@Zenith432
 
I've gave OS X 10.9 DP1 a try and decompiled its AppleUSBXHCI with otool. I found out the AppleUSBXHCI's structure changed a lot.
I could still found each patch's location except the one checking whether xhci version >= 1.0. Could you give me a hand to find it?

Here is my current progress:

Spoiler

 

The attachment contains 10.9 DP1's IOUSBFamily.kext, AppleUSBXHCI decompiled text from otool and my current patched IOUSBFamily with all above patches:
attachicon.gif10.9 DP1 AppleUSBXHCI.zip

Hi!

 

This kext work on my system 10.9 DP1 but only when start OSX in -f switch :( If pre linked start, kext no loaded, and no USB3 ports :(



#88
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan
Hi! This kext work on my system 10.9 DP1 but only when start OSX in -f switch :( If pre linked start, kext no loaded, and no USB3 ports :(

Because you didn't rebuild kernelcache and repair permissions after installing the kext, did you?

Go download kextwizard to rebuild kernelcache and repair permissions.



#89
JahRastaMaN

JahRastaMaN

    InsanelyMac Protégé

  • Members
  • PipPip
  • 92 posts
  • Gender:Male
  • Location:Brasil

Hello, I installed the IOUSBFamily and GenericUSBXHCI and still have: still waiting for root device.

 

10.9(error).jpg



#90
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan

Hello, I installed the IOUSBFamily and GenericUSBXHCI and still have still: waiting for root device.

I think you can't use the AppleUSBXHCI patch and GenericUSBXHCI at the same time. But I'm not sure...

Try to eliminate GenericUSBXHCI when applying the patched IOUSBFamily or ask Zenith432 when he's back. :)



#91
robertoSTUDIOS

robertoSTUDIOS

    InsanelyMac Protégé

  • Members
  • PipPip
  • 76 posts
  • Gender:Male
  • Location:Hungary

Because you didn't rebuild kernelcache and repair permissions after installing the kext, did you?

Go download kextwizard to rebuild kernelcache and repair permissions.

Hi!

 

Permission and prelink OK! No error message, but USB3 works only when -f boot.... When i not use -f and pre linked boot works, no USB3 :( (Sorry my bad english...)



#92
JahRastaMaN

JahRastaMaN

    InsanelyMac Protégé

  • Members
  • PipPip
  • 92 posts
  • Gender:Male
  • Location:Brasil

I think you can't use the AppleUSBXHCI patch and GenericUSBXHCI at the same time. But I'm not sure...

Try to eliminate GenericUSBXHCI when applying the patched IOUSBFamily or ask Zenith432 when he's back. :)

 
Hello, deleted the GenericUSBXHCI and let the IOUSBFamily in S/L/E.
Go up the installation with -v -f but still continues still waiting for root device.


#93
Zenith432

Zenith432

    InsanelyMac Sage

  • Developers
  • 420 posts
  • Gender:Male

Can some1 with Xcode 5 developer preview upload Kernel.framework/Headers from the 10.9 SDK?



#94
JahRastaMaN

JahRastaMaN

    InsanelyMac Protégé

  • Members
  • PipPip
  • 92 posts
  • Gender:Male
  • Location:Brasil

Hello, Zenith432!! I use GenericUSBXHCI for install ML 10.8.3 and the install works fine but i have Still waiting for root device 10.9 DP 1. Do you know any solution? I try IOUSBFamily but not works.

 

Thanks!



#95
shiecldk

shiecldk

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 233 posts
  • Gender:Male
  • Location:Taiwan

Can some1 with Xcode 5 developer preview upload Kernel.framework/Headers from the 10.9 SDK?

Here it goes:

Attached File  Xcode5-DP Kernelframework.zip   4.94MB   28 downloads

Good luck. :)

 

By the way, I got a failed installation screen with Xcode5 DP, not sure if this would influence these files.



#96
JahRastaMaN

JahRastaMaN

    InsanelyMac Protégé

  • Members
  • PipPip
  • 92 posts
  • Gender:Male
  • Location:Brasil
Hello Zenith432! I installed maverick 10.9 DP 1 with kext IOUSBFamily from 10.8.4 12E55, this solved my problem with the still waiting for root device.
Now Maverick recognize my mouse usb 2.0 microsoft. It also recognizes my 1TB external hd usb 3.0 but does not recognize my USB 2.0 flash driver and other HD usb 2.0. What can it be?
Can you help me? Thanks in advanced!


#97
JahRastaMaN

JahRastaMaN

    InsanelyMac Protégé

  • Members
  • PipPip
  • 92 posts
  • Gender:Male
  • Location:Brasil
Hello, Zenith I tested AppleUSBXHCI and it works kext USB 3.0 and 2.0 mouse works but do not flash driver 2.0 and hard disk 2.0.
any solution?


#98
Mirone

Mirone

    InsanelyMac Deity

  • Local Moderators
  • 1,698 posts
  • Gender:Male
  • Location:Brazil

@Zenith432

Not working for me
preferences in the system can see "Bus High Speed ​​USB3.0"
but not working.
Asmedia 1042
Vendor and device ID: 1b211042
Any solution?


#99
RehabMan

RehabMan

    InsanelyMac Legend

  • Coders
  • 1,340 posts
  • Gender:Male
  • Location:Bellingham, WA
  • Interests:skiing, software, classic cars

I've resolved the Sleep issue on my system. Discovered that it was due to an error in the DSDT, not the xHC.

I've fixed the DSDT, eliminated the bottom two patches in the patch-list in post #1, and now sleep works, including being able to wake the system with a USB keyboard connected to the xHC (a.k.a. PME).

Hardware: Intel motherboard with H67 chipset, Renesas uPD720200F1 with most recent firmware (3.0.3.4).

  • First, just to set the record straight, the uPD720200 does support chip-internal restore, contrary to what I said in post #23. This is a mandatory feature in the xHC spec.
  • Topology-wise, Intel Panther-Point is integrated into the south-bridge (PCH), so it is connected directly to the PCIe host-bridge (root complex.) All other xHC chips, whether in a separate chip on the motherboard, or PCIe expansion card, are connected behind a PCIe root port (PCI2PCI bridge.) In other words, have one more-level of indirection in the data path to RAM/processor core.
  • The board's DSDT has a method called IOKS that wrecks power-management. It attempts to access the PS/2 keyboard and mouse, and goes into an infinite loop, because H67 doesn't have a PS/2 controller (!).
  • DSDT has a method call _PTS ("prepare to sleep") that is executed by AppleACPIPlatformExpert.kext before the system goes to sleep or shuts down.
  • _PTS calls IOKS to do something with PS/2 keyboard/mouse, and hangs.
  • AppleACPIPlatformExpert has a watchdog-timer on this ACPI method, and times out after 75 seconds, decides _PTS is in an infinite loop, aborts it, and proceeds to complete the sleep/shutdown sequence anyway.
  • In _PTS, after the code that calls IOKS, there is code to prepare the PCIe root ports for PME.
  • As a result of the abort of _PTS, the PCIe root ports are not properly prepared for sleep.
  • Since PME is not enabled on the root port, the xHC chip connected to the port does not receive Aux power during sleep. This causes the chip to lose all context, and come back from sleep as if it was just turned on from a power-off state.
So the result of the problem with IOKS was
  • Sleep and shutdown process would take 75 seconds...
  • PCIe devices on root ports were completely shut down during sleep and could not recover any state existing before the sleep.
It took quite a bit of work to figure this out...

P.S. The resolution was to eliminate IOKS and all calls to IOKS in the DSDT. I also removed the nonexistent PS/2 devices, along with non-existent sleep-button, floppy controller and LPT port.

 

You must have an Intel DH6xxx board.  I figured this IOKS thing Oct, 2012 while hacking my DH67GD, so I got a chuckle out of your description of the Intel DSDT talking to PS/2 ports that don't exist :-)

 

See: https://github.com/R...67XX-DSDT-Patch



#100
darkera13

darkera13

    InsanelyMac Protégé

  • Members
  • Pip
  • 31 posts
  • Gender:Male

I just updated to 10.8.4. And USB3.0 ports still work perfectly with these patches. (Haven't tested on sleeping because my Clover not allow me to sleep.)
The transfer speed seems to be a bit improved in 10.8.4. :thumbsup_anim:

Here is a patched 10.8.4 AppleUSBXHCI.kext if someone would like to give it a try.
attachicon.gif10.8.4_Patched AppleUSBXHCI.kext.zip

Try on my Zenbook UX31A, the USB Ethernet not work (worked great with GenericXHCI).







Also tagged with one or more of these keywords: USB 3, AppleUSBXHCI


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy