Jump to content
InsanelyMac Forum
dgsga

Native USB3.0 on boards with non-intel USB3 e.g. Asmedia

Recommended Posts

This quick dsdt edit seems to work. You can inject this via efi device properties too. Insert the device code wherever you have USB3 in your DSDT (find this using ioreg), naming each device XHC1, XHC2 etc...

Device (XHC1)
			{
				Name (_ADR, Zero)
				Alias (PW94, _PRW)
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x0A)
						{
							"device-id",
							Buffer (0x04)
							{
								0x31, 0x1e, 0x00, 0x00
							},

							"vendor-id",
							Buffer (0x04)
							{
								0x86, 0x80, 0x00, 0x00
							},
							"name",
							Buffer (0x0D)
							{
								"pci8086,1e31"
							},

							"subsystem-id",
							Buffer (0x04)
							{
								0x70, 0x72, 0x00, 0x00
							},
							"subsystem-vendor-id",
							Buffer (0x04)
							{
								0x86, 0x80, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg2, RefOf (Local0))
					Return (Local0)
				}
			}

 

usb3.tiffusb32.tiff

Share this post


Link to post
Share on other sites
Advertisement

I tried like hell to find the USB 3 string in my DSDT - pulled the address/device # from the ioreg explorer, and still couldn't find it. I have a ASRock motherboard, what did your string look like before you modified it?

Share this post


Link to post
Share on other sites

Look for the device and vendor id of your USB chipset in your ioregistry. It will appear under one of the devices e.g. RP06. make sure USB3 is enabled in bios.

Share this post


Link to post
Share on other sites

Neat! Will give this a go for my fresco logic 1009 when I get home. Any idea if this works for other controllers as well? I have tried to mimic the id of mba5,2 previously but nothing changed really.

Share this post


Link to post
Share on other sites

I tried the exact same thing with 10.7.5 pre-releases and it failed with Renesas 720200A and 720201 - devices attached were detected and displayed in IOREG but never actually worked.I'll sure try again with ML now.

Share this post


Link to post
Share on other sites

Also are you sure about this part?

DTGP (Arg2, RefOf (Local0))

 

DTGP usually takes 5 arguments, not just 2.

 

UPD:

 

Nope, not working for Fresco Logic 1009, or am I missing something?

Even though it is being detected and my WD Passport light up, it is not picked up by the system.

 


       Device (RP03)
       {
           Name (_ADR, 0x001C0002)

            ...................


           Device (XHC1)
           {
               Name (_ADR, Zero)
               Alias (PW94, _PRW)
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package ( )
                       {
                           "device-id",
                           Buffer (0x04)
                           {
                               0x31, 0x1e, 0x00, 0x00
                           },                            
                           "vendor-id",
                           Buffer (0x04)
                           {
                               0x86, 0x80, 0x00, 0x00
                           },
                           "name",
                           Buffer (0x0D)
                           {
                               "pci8086,1e31"
                           },   
                           "subsystem-id",
                           Buffer (0x04)
                           {
                               0x70, 0x72, 0x00, 0x00
                           },
                           "subsystem-vendor-id",
                           Buffer (0x04)
                           {
                               0x86, 0x80, 0x00, 0x00
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
               Name (PW94, Package (0x02)
               {
                   0x09, 
                   0x04
               })
           }
   ....................
}

 

Screens:

http://puu.sh/M8cO

http://puu.sh/M8dg

Share this post


Link to post
Share on other sites

I tried this the second i got my hands on the DSDT of a macbook pro 2012. It didn't even acknowledge the DSDT changes. NEC USB3 chipset here...

Share this post


Link to post
Share on other sites

"name",
Buffer (0x0D)
{
"pci8086,1e31"
},  

should be:

"name",
"pci8086,1e31",

 

i have no usb3 device to test, but for USB 2 its not working.

My MB has two Etron controlllers.

Share this post


Link to post
Share on other sites

For me its not even working with the internal 3rd party controller. (only test with USB 2) Maybe there are some further properties needed, the apple SSDTs have much more entries for XHCx.

Share this post


Link to post
Share on other sites

Well, i decided to connect a USB Stick and leave it for a while. This is what happened:

 

post-167221-0-83604000-1344010108_thumb.png

post-167221-0-64144600-1344010112_thumb.png

 

It gets detected but it's not mounted, any attempts of doing so results in this message:

post-167221-0-69994500-1344010273_thumb.png

 

And in the terminal it says "time out"

Share this post


Link to post
Share on other sites

Actually after applying this patch to my dsdt I lost all of the usb mass storage functionality, only HID and peripheral devices (printer, scaner) devices worked.

Mass storage devices would be detected (on regular usb 2.0 ports, not on the 3.0 though) but never got mounted. Forcing them to mount through Disk utility resulted in the same message as DoiX posted above...

Share this post


Link to post
Share on other sites

After some more time, it finally got mounted, on it's own.. but it's currently empty.

 

Console log reported it's getting a new UUID...

 

Update: Aaaaaand the contents are fully visible.

Update 2: Read/Write is painstakingly slow, gets stuck for a while on "preparing"

Update 3: I connected my iPhone, after a while itunes picked it, it seems behave better than the usb stick, however Image Capture isn't detecting it.

Edited by DoiX

Share this post


Link to post
Share on other sites

S

After some more time, it finally got mounted, on it's own.. but it's currently empty.

 

Console log reported it's getting a new UUID...

 

Update: Aaaaaand the contents are fully visible.

Update 2: Read/Write is painstakingly slow, gets stuck for a while on "preparing"

Update 3: I connected my iPhone, after a while itunes picked it, it seems behave better than the usb stick, however Image Capture isn't detecting it.

So how long did you have to wait for the thing to mount ?

Share this post


Link to post
Share on other sites

@TimeWalker, it seems random. Between 5 and 10 minutes, having the stick/device plugged in while booting the system reduces the time to 5 minutes, only constant i've found. Other than that 5 - 10 minutes.

 

I assume the kext needs to be patched, as it seems to enter some cyclic check function, hence the slow mounting/copying.

Share this post


Link to post
Share on other sites

This quick dsdt edit seems to work. You can inject this via efi device properties too. Insert the device code wherever you have USB3 in your DSDT (find this using ioreg), naming each device XHC1, XHC2 etc...

 

 

Hi, this patch and ML 10.8.2 have enabled my etron ej168 usb 3.0.The problem is that sleep/wake cycle disables usb 3.0 again.

Addition to dsdt.aml didn't work as well.

 

"AAPL,current-available",

0x0834,

"AAPL,current-extra",

0x0898,

"AAPL,current-extra-in-sleep",

0x0640,

"AAPL,max-port-current-in-sleep",

0x0834,

"AAPL,device-internal",

0x00,

Thanks for any help.

Share this post


Link to post
Share on other sites

Hi, I tried to enter the code in the DSDT for my mobo, but I could not do it, I don't understand where mistake.

I opened a topic in the Italian section enclosing DSDT and IOreg, if someone could take a look ...

Thanks in advance

 

P.S. Sorry for my bad English (google translate)

Share this post


Link to post
Share on other sites
Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.



×