Jump to content

Generic USB2.0 (EHCI) Driver


orByte
 Share

474 posts in this topic

Recommended Posts

Hi everybody! Now i have working the USB ports thanks to the installer made for BugsBunny!!!
Glad to hear that. BTW: ".. BY.." not "FOR" .. :wacko:
Now i have a few questions i hope can anybody help me.
would be glad to offer you some advice on that one, but - sorry, no idea .. :)
Link to comment
Share on other sites

@orByte

 

Can you please fix this clock - usb2 - bug thing? Is it really dependant on the number of used cpu cores?

 

As I mentioned in another post, if I follow an exact power off-reset-procedure very often I got full usb2 with your driver.

 

But it would be nice if there was a working usb2 driver. Thanks.

Link to comment
Share on other sites

If I use this Generic ECHI kext, will I be able to enable USB keyboard/mouse in my BIOS ?

 

USB seems to be working just fine in OSX for me (when I disable USB Keyboard/mouse in my bios), but OSX acts funny when I enable it in my bios. I need USB keyboard support so I can use my usb keyboard on the dual boot OS chooser screen.

Link to comment
Share on other sites

would this help me with 10.4.9 JAs with having soundproblems from usb to my Bose companion 5 series?? dvd player video plays fine but sound sstutter..but while playing Itunes it plays fine,..when a use imovie it stutter again,...only by setting the HD apple it would sound good,..but when I put it to the bose in audio/midi core audio ,..it stutter tru the speakers,...that would be the usb 2.0? righht? or i`m i wrong?

Link to comment
Share on other sites

For anyone having troubles with USB, here'a a general approach path:.....nJoy installing(/uninstalling)

 

Thank you holly lifesaver! Finally it works. It works on 10.4.9 with semthex 8.9.1 kernel. Your job is great.

Link to comment
Share on other sites

hello guys! well i have read the post several times but i cannot get the USB patch correctly installed, altought i have already done it manually it seems to not be working, i also downloaded the dmg file but is the same thing, i can see the usb ports but no more information is displayed as in some pictures shown in the the posts that have lots of information for ports...

 

thanx in advance guys

Link to comment
Share on other sites

i cannot get the USB patch correctly installed, altought i have already done it manually it seems to not be working, i also downloaded the dmg file but is the same thing, i can see the usb ports but no more information is displayed

 

I have the same problem, and I have problem with my Realtek8139 (in PCI slot) and I belive that's problem actualy not in USB or NIC, but some more general problem.

 

P.S.: I have Asus K8N4-E mobo

 

sorry for my english

Link to comment
Share on other sites

hello guys! well i have read the post several times but i cannot get the USB patch correctly installed, altought i have already done it manually it seems to not be working, i also downloaded the dmg file but is the same thing, i can see the usb ports but no more information is displayed as in some pictures shown in the the posts that have lots of information for ports...

 

thanx in advance guys

 

Hi I d like to help, but you need to include in your post info on: OSx86 version & Kernel and system mobo. Beyond that the following would help.

kextstat | grep USB
ioreg -w0 -bl (this is long and is usually attached to the post)
dmesg | grep USB

advanced users can do
kextload <path>PCGenUSBEHCI.kext

 

Also pls. re-read the FAQs in the dmg's. Also pls. note that presently the driver has not been tested on 10.4.9 by myself. So I couldn't verify operation on that platform. Also, what happens when you plug a USB2 device in?

 

Best

Link to comment
Share on other sites

Hi I d like to help, but you need to include in your post info on: OSx86 version & Kernel and system mobo. Beyond that the following would help.

kextstat | grep USB
ioreg -w0 -bl (this is long and is usually attached to the post)
dmesg | grep USB

advanced users can do
kextload <path>PCGenUSBEHCI.kext

 

Also pls. re-read the FAQs in the dmg's. Also pls. note that presently the driver has not been tested on 10.4.9 by myself. So I couldn't verify operation on that platform. Also, what happens when you plug a USB2 device in?

 

Best

ok i couldn´t get the other two but this is the first picture

post-97137-1175569444_thumb.jpg

 my mobo system is a foxconn 661FX7MI-RS

my current version is 10.4.8 with kernel 8.8.1

Link to comment
Share on other sites

ok i couldn´t get the other two but this is the first picture

<image>

 my mobo system is a foxconn 661FX7MI-RS

my current version is 10.4.8 with kernel 8.8.1

 

Hi you can copy & paste from the terminal using edit>copy/paste from the terminal menu. The kext output looks in order. I note that you have parallells running. There is another post in this thread from a user with parallells (if I remember correctly) That might help. If you have trouble executing ioreg, e.g. you do not get the full output, then the problem might be with the SMBIOS kext, and you ll need to get Pauli's? SMBIOS. I wont be in front of my CPU for a few weeks so sorry for the rather sketchy explanations.

 

Also have you tried sudo dmesg?

 

 

Best.

Link to comment
Share on other sites

Hi you can copy & paste from the terminal using edit>copy/paste from the terminal menu. The kext output looks in order. I note that you have parallells running. There is another post in this thread from a user with parallells (if I remember correctly) That might help. If you have trouble executing ioreg, e.g. you do not get the full output, then the problem might be with the SMBIOS kext, and you ll need to get Pauli's? SMBIOS. I wont be in front of my CPU for a few weeks so sorry for the rather sketchy explanations.

 

Also have you tried sudo dmesg?

 

 

Best.

hi thnax for your quick replies, yes i tried it returns several errors from the usb something about timing out...hold on a dew minutes i will post them

Link to comment
Share on other sites

hi thnax for your quick replies, yes i tried it returns several errors from the usb something about timing out...hold on a dew minutes i will post them

the "ioreg -w0 -bl" returns as u mention a lot of information(hard to get it for me)

 

this is the dmesg | grep USB picture, but it first returned an error, btw sorry for the pictures but i don not have any way to take them out of mac

 

post-97137-1175619304_thumb.jpg

post-97137-1175619399_thumb.jpg

post-97137-1175619454_thumb.jpg

Link to comment
Share on other sites

the "ioreg -w0 -bl" returns as u mention a lot of information(hard to get it for me)

 

this is the dmesg | grep USB picture, but it first returned an error, btw sorry for the pictures but i don not have any way to take them out of mac

 

<images>

 

Hi sorry I had not realized that you were missing networking. The error you are showing, I suspect that it relates to the sis controller. But it is a USB 1.0 error. (OHCI = USB 1x), (EHCI = USB2). If you run

sudo su
dmesg | grep EHCI

 

do you get similar timeout errors. In short, I would suspect that this driver wont work for you. But if you have some time to post the above output, esp the EHCI kext driver output as it loads, that would be helpful for looking at how your BIOS treats legacy SMI events.

 

Best

Link to comment
Share on other sites

Hi sorry I had not realized that you were missing networking. The error you are showing, I suspect that it relates to the sis controller. But it is a USB 1.0 error. (OHCI = USB 1x), (EHCI = USB2). If you run

sudo su
dmesg | grep EHCI

 

do you get similar timeout errors. In short, I would suspect that this driver wont work for you. But if you have some time to post the above output, esp the EHCI kext driver output as it loads, that would be helpful for looking at how your BIOS treats legacy SMI events.

 

Best

hi again... nope i do not get any messages of any kind, it just rewites the line of my user for example

 

myuser~root:dmesg | grep EHCI

myuser~root:

and that's all

Link to comment
Share on other sites

hi again... nope i do not get any messages of any kind, it just rewites the line of my user for example

 

myuser~root:dmesg | grep EHCI

myuser~root:

and that's all

 

Odd... The kext load could be failing before initialization starts.

 

Best

Link to comment
Share on other sites

Has there been an update for us with 10.4.9/8.9.1? Just upgraded and unfortunatly fails to load the 10.4.8/8.8.1 version right from the get-go. Error doesn't show in logs (dmesg | grep EHCI produces nothing.)

 

Hi, the v.10.4.9 release is pending Apple's release of the 10.4.9 darwin source code as well as my time availability (ps: I have been quite busy recently).

 

Best

Link to comment
Share on other sites

Hi, the v.10.4.9 release is pending Apple's release of the 10.4.9 darwin source code as well as my time availability (ps: I have been quite busy recently).

 

Best

Not a problem. Just want to make sure I didn't miss something, like I can sometimes :star_smile:
Link to comment
Share on other sites

If anyone can help, this would be greatly appreciated - OrByte or otherwise. I have a super-clean install running spectacularly - Athlon64 with NV FX5200 Core Graphics and Quartz Extreme, good audio, EVERYTHING works EXCEPT: USB 2.0.

 

As I look at verbose output upon bootup and such, I see the same thing: "family specific matching fails". When I search these forums with those terms and anything else like "USB 2.0 not working" I get nothing. So forgive me if this question has already been answered and I just didn't find it...

 

Nutshell: 10.4.8 Semthex w/JaS AMD, MSI K8TNeo2 board, VIA8297, Athlon64 2800+, DDR400(pair), and here's what SysProfiler gives about the "High Speed Controller" (USB 1.1 shows up fine, all connected devices show up properly):

 

USB High-Speed Bus:

 

Host Controller Location: Expansion Slot

Host Controller Driver: AppleUSBEHCI

PCI Device ID: 0x3104

PCI Revision ID: 0x0086

PCI Vendor ID: 0x1106

Bus Number: 0x90

 

JM20338 SATA, USB Combo:

 

Version: 1.00

Bus Power (mA): 500

Speed: Up to 480 Mb/sec

Manufacturer: JMicron

Product ID: 0x2338

Serial Number: BB6E82E305A7

Vendor ID: 0x152d

 

Here's my Terminal output:

 

------------------------------------

 

Last login: Tue Apr 10 10:27:23 on ttyp1

Welcome to Darwin!

pc-00250:~ dave$ kextstat | grep USB

27 10 0x2a284000 0x1a000 0x19000 com.apple.iokit.IOUSBFamily (2.6.1) <6 5 4 3>

28 0 0x2a2db000 0xe000 0xd000 com.apple.driver.AppleUSBUHCI (2.6.0) <27 16 5 4 3>

29 0 0x2a68b000 0x12000 0x11000 com.orByte.driver.PCGenUSBEHCI (2.6.1) <27 16 5 4 3>

32 0 0x2a7f9000 0x9000 0x8000 com.apple.driver.AppleUSBHub (2.6.0) <27 11>

52 0 0x2b2ea000 0x3000 0x2000 com.apple.driver.AppleUSBComposite (2.6.1) <27 11>

59 0 0x32f75000 0x9000 0x8000 com.apple.iokit.IOUSBUserClient (2.6.0) <27 11>

67 0 0x32fcb000 0x5000 0x4000 com.apple.iokit.IOUSBHIDDriver (2.6.0) <27 20 11>

78 1 0x44db9000 0x2000 0x1000 com.apple.driver.AppleUSBMergeNub (2.6.0) <27 11>

80 0 0x2b4a8000 0x9000 0x8000 com.apple.iokit.IOUSBMassStorageClass (1.4.5) <43 35 27 11>

 

pc-00250:~ dave$ sudo dmesg | grep USB

Password:

USBF: 49.335 Attempting to get EHCI Controller from BIOS

USBF: 49.335 USBLEGCTLSTS value e000

USBF: 49.335 Found USBLEGSUP_ID - value 0x1 - writing OSOwned

USBF: 49.335 acquireOSOwnership done - value 0x1000001

USB caused wake event (EHCI)

USB1: family specific matching fails

USB2: family specific matching fails

USB3: family specific matching fails

USB4: family specific matching fails

pc-00250:~ dave$

 

------------------------------

 

The ioreg output is awfully verbose, but if you want to look at it, download it below. I did try installing the PCGen* kext but it didn't make any difference (at least it didn't give me a kernel panic - that rocked).

 

What am I missing here with this "family specific matching fails" stuff?

 

ioreg output (zipped txt)

output.txt.zip

Link to comment
Share on other sites

Evening chaps,

 

I have a little issue to which I haven't found an answer yet. If it's a FAQ please excuse my ignorance and just flame me to the right location - Thanks in advance.

 

I'm trying to use a "China" USB 2.0 Cardbus on my PPC PowerBook 1 GHz (the key here is 'PPC', not intel, not hackintosh) to sync my iPod at decent speeds (why did Apple remove FW support boo-hoo).

 

So far, with the aid of the development drivers I see the card in the menu bar and everything seems to be working fine except no iPod appears. When I connect a mouse to the card it soesn't light up either.

 

Pointers ?

 

Thanks a bunch

 

-tam

 

P.S: Card insertion log:

 

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: cs: cb_alloc(bus 1): vendor 0x1106, device 0x3038

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: cs: cb_alloc(bus 1): found 3 functions

Apr 11 21:57:12 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 0 to card services.

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: cs: cb_config(bus 1)

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 0 bar 2: mem 0x90004000-0x900040ff

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 0 bar 5: io 0x20-0x3f

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 1 bar 2: mem 0x90003000-0x900030ff

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 1 bar 5: io 0x0-0x1f

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 2 bar 1: mem 0x90002000-0x900020ff

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: fn 2 bar 2: mem 0x90001000-0x900010ff

Apr 11 21:57:12 Eole kernel[0]: IOPCCard info: irq 255

Apr 11 21:57:12 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 1 to card services.

Apr 11 21:57:12 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 2 to card services.

Apr 11 21:57:12 Eole kextd[27587]: kld_load_from_memory() failed for module /System/Library/Extensions/OMI_EHCI.kext/Contents/MacOS/OMI_EHCI

Apr 11 21:57:12 Eole kextd[27587]: a link/load error occured for kernel extension /System/Library/Extensions/OMI_EHCI.kext

 

That could explain ... But what can I do from there?

 

Here's the turn off log:

 

Apr 12 00:09:41 Eole kernel[0]: IOPCCard info: cs: cb_free(bus 1)

Apr 12 00:09:42 Eole kernel[0]: IOPCCard: shutting down socket 0.

Apr 12 00:09:42 Eole kernel[0]: IOPCCard: calling terminate on socket 0 function 2 nub 0x368b800.

Apr 12 00:09:42 Eole kernel[0]: IOCardBusDevice: releasing socket 0 function 2 from card services.

Apr 12 00:09:42 Eole kernel[0]: IOPCCard: calling terminate on socket 0 function 1 nub 0x372ce00.

Apr 12 00:09:42 Eole kernel[0]: IOCardBusDevice: releasing socket 0 function 1 from card services.

Apr 12 00:09:42 Eole kernel[0]: IOPCCard: calling terminate on socket 0 function 0 nub 0x3687600.

Apr 12 00:09:42 Eole kernel[0]: IOCardBusDevice: releasing socket 0 function 0 from card services.

 

$ kextstat | grep USB

28 14 0x2dbf1000 0x21000 0x20000 com.apple.iokit.IOUSBFamily (2.5.9) <11>

29 0 0x2dc2a000 0xe000 0xd000 com.apple.driver.AppleUSBOHCI (2.5.5) <28 16 11>

43 0 0x2deb4000 0xc000 0xb000 com.apple.driver.AppleUSBHub (2.5.6) <28 11>

56 0 0x2e282000 0x10000 0xf000 com.apple.driver.AppleUSBUHCI (2.5.6) <28 16 11>

58 1 0x2e3db000 0xc000 0xb000 com.apple.iokit.IOUSBMassStorageClass (1.4.5) <47 45 28 11>

62 1 0x2e853000 0x6000 0x5000 com.apple.driver.AppleUSBBluetoothHCIController (1.7.14f14) <61 28 11>

63 0 0x2e8c6000 0x3000 0x2000 com.apple.driver.CSRUSBBluetoothHCIController (1.7.14f14) <62 61 11>

64 0 0x2e8ec000 0x3000 0x2000 com.apple.driver.AppleUSBMergeNub (2.5.9) <28 11>

70 0 0x33f6f000 0xd000 0xc000 com.apple.iokit.IOUSBUserClient (2.5.0) <28 11>

112 0 0x2f6c1000 0x4000 0x3000 com.apple.driver.AppleUSBComposite (2.5.9) <28 11>

113 0 0x2f6b7000 0x6000 0x5000 com.apple.iokit.IOUSBHIDDriver (2.5.5) <28 20 11>

126 0 0x2f51c000 0x16000 0x15000 com.apple.driver.AppleUSBEHCI (2.5.9) <28 16 11>

 

$ uname -a

Darwin Eole.local 8.9.0 Darwin Kernel Version 8.9.0: Thu Feb 22 20:54:07 PST 2007; root:xnu-792.17.14~1/RELEASE_PPC Power Macintosh powerpc

 

Actually the kext loading error doesn't happen every time:

 

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: cs: cb_alloc(bus 1): vendor 0x1106, device 0x3038

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: cs: cb_alloc(bus 1): found 3 functions

Apr 12 01:00:11 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 0 to card services.

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: cs: cb_config(bus 1)

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 0 bar 2: mem 0x90004000-0x900040ff

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 0 bar 5: io 0x20-0x3f

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 1 bar 2: mem 0x90003000-0x900030ff

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 1 bar 5: io 0x0-0x1f

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 2 bar 1: mem 0x90002000-0x900020ff

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: fn 2 bar 2: mem 0x90001000-0x900010ff

Apr 12 01:00:11 Eole kernel[0]: IOPCCard info: irq 255

Apr 12 01:00:11 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 1 to card services.

Apr 12 01:00:11 Eole kernel[0]: IOCardBusDevice: binding socket 0 function 2 to card services.

 

$ dmesg | grep EHCI

 

gives nothing

 

The card is viewed in the USB Prober as:

Full Speed Device @ 1 (0x00000000): ... Hub device: UHCI Root Hub Simulation

Full Speed Device @ 1 (0x20000000): ... Hub device: UHCI Root Hub Simulation

Full Speed Device @ 1 (0x40000000): ... Hub device: EHCI Root Hub Simulation

Link to comment
Share on other sites

If anyone can help, this would be greatly appreciated - OrByte or otherwise. I have a super-clean install running spectacularly - Athlon64 with NV FX5200 Core Graphics and Quartz Extreme, good audio, EVERYTHING works EXCEPT: USB 2.0.

 

As I look at verbose output upon bootup and such, I see the same thing: "family specific matching fails". When I search these forums with those terms and anything else like "USB 2.0 not working" I get nothing. So forgive me if this question has already been answered and I just didn't find it...

 

Nutshell: 10.4.8 Semthex w/JaS AMD, MSI K8TNeo2 board, VIA8297, Athlon64 2800+, DDR400(pair), and here's what SysProfiler gives about the "High Speed Controller" (USB 1.1 shows up fine, all connected devices show up properly):

 

USB High-Speed Bus:

 

Host Controller Location: Expansion Slot

Host Controller Driver: AppleUSBEHCI

PCI Device ID: 0x3104

PCI Revision ID: 0x0086

PCI Vendor ID: 0x1106

Bus Number: 0x90

 

JM20338 SATA, USB Combo:

 

Version: 1.00

Bus Power (mA): 500

Speed: Up to 480 Mb/sec

Manufacturer: JMicron

Product ID: 0x2338

Serial Number: BB6E82E305A7

Vendor ID: 0x152d

 

Here's my Terminal output:

 

...

 

According to your output USB2.0 = high speed USB is working fine. "Family specific matching fails" is nothing to worry about.

 

Best

 

 

orByte releases USB modified source code & semi-retirement announced

 

Hi everybody!

 

Thanks ;) a lot for all the comments and help I have received in the past few months since I started working on the Darwin USB drivers. Sadly, I am having almost no time left to work on this project. Initally I had only released the source code as diffs. However, I am now releasing the full project, in the hope that someone else will pick up the project and continue working on it. I will similarly release the Realtek 8139 driver - leaving only the Uli526x network driver on my list of things to to.

 

These projects are best suited to people who are already familiar with programming & Darwin compilation.

 

Instructions

---------------------------

 

1.IOUSBFamily-PCGen-261.4.2a-src.zip

 

Requires: XCODE 2.4.1, 10.4.8. Consult the original diff & bundle for modified files & FAQ.

 

2. IOUSBFamily-PCGen-256.4.2a-src.zip

 

Requires: XCODE 2.3, 10.4.7. Consult the original diff & bundle for modified files & FAQ.

 

 

Again, thank you very much

Best

Link to comment
Share on other sites

 Share

×
×
  • Create New...