Jump to content

Generic USB2.0 (EHCI) Driver


orByte
 Share

474 posts in this topic

Recommended Posts

why does Slice slice us? Slice please be nice .. :D

I HAVE NO LEO TO COMPILE AND TEST!

In Tiger all works.

Is there anybody have XCode 3.0 under Leo 10.5.3?

 

Try v308 made by Dmdimon

EDITED:

It is new version of USBEHCI made by orByte's method but with Apple sources from Leo 10.5.2

Link to comment
Share on other sites

hm cannot figure how what you quoted from me has any relation to your question .. - neither do I know what exactly you mean by "fix" ..

 

I did as explained a thousand times in this thread:

 

- using stock apple IOUSBFamily.kext (Leo current: 3.0.8)

- inside of it deleted Apple's AppleUSBEHCI.kext

- inserted orByte's PCGenUSBEHCI.kext (chwn/ chmod ..)

- touched XT folder

--> happy, USB 2.0 incl. booting from USB

 

When testing kernels via boot.plist without matching system.keyt hotplug does (CAN) not work (as also has been mentioned many times here), therefore my previous link to the hotplug fixer.

 

So summarized: yes, having followed the rules and lil tricks when needed, PCGenUSBEHCI.kext still seems 2 b working 100% here.

 

However I would not mind testing a compile of the most current sources since obviously Apple tweaked "something". Maybe higher transfer speed? Dunno ..

 

How 'bout u?

Link to comment
Share on other sites

hm cannot figure how what you quoted from me has any relation to your question .. - neither do I know what exactly you mean by "fix" ..

 

I did as explained a thousand times in this thread:

 

- using stock apple IOUSBFamily.kext (Leo current: 3.0.8)

- inside of it deleted Apple's AppleUSBEHCI.kext

- inserted orByte's PCGenUSBEHCI.kext (chwn/ chmod ..)

- touched XT folder

--> happy, USB 2.0 incl. booting from USB

 

When testing kernels via boot.plist without matching system.keyt hotplug does (CAN) not work (as also has been mentioned many times here), therefore my previous link to the hotplug fixer.

 

So summarized: yes, having followed the rules and lil tricks when needed, PCGenUSBEHCI.kext still seems 2 b working 100% here.

 

However I would not mind testing a compile of the most current sources since obviously Apple tweaked "something". Maybe higher transfer speed? Dunno ..

 

How 'bout u?

 

Thanks bugsBunny for explaining the things again !

 

What are the most problems / reasons why users must/want to use this USB parts ?

1- " ON REBOOT/RESET one gets: CODE USBF: 20.136 EHCI controller unable to take control from BIOS"

Does USB work (only message in system.log) or will not work / make much trouble ?

Other problems , like timing, USB HUB Problems, ... can get fixed ?

 

My USB is running well (i think :( ) , but some friends will switch to OSX86 soon, thats the reason why i asks,

at which problems i should give them hint to use that "tuned" kexts.

Link to comment
Share on other sites

kexts? PCGenUSBEHCI.kext is only one kext.

 

One needs to check in Sys profiler if one has USB 2.0, or not, with or without PCGenUSBEHCI.kext ..

 

Also it does not do harm to do a lil time & speed test (copy a larger file from and to an USB Volume in Mac OS and in Win or Linux with guaranteed USB 2.0 support and compare.

Link to comment
Share on other sites

kexts? PCGenUSBEHCI.kext is only one kext.

And what?

You ask me for a new version? It is at my post 429. No any attempt to check.

It is a new version of PCGenUSBEHCI.kext but with old name AppleUSBEHCI.kext.

Or you simply don't need it?

Link to comment
Share on other sites

And what?

You ask me for a new version? It is at my post 429. No any attempt to check.

It is a new version of PCGenUSBEHCI.kext but with old name AppleUSBEHCI.kext.

Or you simply don't need it?

:P so you compiled the sources in Tiger with XCode Tiger I guess? Nice, that should work, there is some people that compile kexts in Tiger for Leo, seems to work sometimes.

 

Oh yes, I will test them, thanks :wacko:

Link to comment
Share on other sites

:P so you compiled the sources in Tiger with XCode Tiger I guess? Nice, that should work, there is some people that compile kexts in Tiger for Leo, seems to work sometimes.

 

Oh yes, I will test them, thanks :wacko:

No, it is not my compilation. Other man with Leo do it.

Link to comment
Share on other sites

OK,

 

I am using iATKOS leopard without any updates, and my USB does not work at all.

 

I don't have time to read this entire thread, but can somebody tell me and/or provide a link to a kext or patch to get my usb working? I installed the iousbfamily.kext from a wiki I read to get it working with no success, and legacy has been disabled in my BIOS. The machine itself is a Gateway MT6705, Intel Pentium dual-core with unpatched/upgraded iATKOS leopard.

 

Can somebody please help?

Link to comment
Share on other sites

@ chief Slice: you can tell other man from white man that other man did great job (for which white man kinda loves other man)

 

@ anthony_c: you find IOUSBFamily 3.0.8/ Mac OS 10.5.2 (containing the plugins compiled by ARMAGEDDON Slice posted here) attached.

3.0.8 is the latest for Mac OS 10.5.2/3/4.

 

As always, install with kext helper or ~pcwiz' Mac OSx86 Tools Utility.

Link to comment
Share on other sites

@ chief Slice: you can tell other man from white man that other man did great job (for which white man kinda loves other man)

 

@ anthony_c: you find IOUSBFamily 3.0.8 from 10.5.2 recompiled (based on what slice posted) attached. 3.0.8 is the latest for Mac OS 10.5.2/3/4. Install it with kext helper or ~pcwiz' Mac OSx86 Tools Utility.

 

Thank you, I'll give it a try and let you know after a reboot!

Link to comment
Share on other sites

So, I installed with kexthelper, rebooted and here's what I got:

 

2 flash drives I plugged in worked 100%, as opposed to before the driver,

my belkin USB wireless NIC (model FD07050) did not, although the official mac utility for it from belkin was running.

 

Do I need a generic USB wifi driver or something? otherwise, I have a PCMCIA nic (linksys, gonna rely on generic airport drivers for it) I would like to install in it's place, with the appropriate drivers you provide me links to in the case the belkin just refuses to work.

 

I am doing all of this to get a wireless nic to my leopard install. My internal Realtek(real trash if you ask me) is way too proprietary for leopard let alone ubuntu to recognize, so I am not even going to try. I eagerly await the day I can get network connectivity from my leopard partition, and I appreciate the help so far. ;)

Link to comment
Share on other sites

@ chief Slice: you can tell other man from white man that other man did great job (for which white man kinda loves other man)

I did. http://www.applelife.ru/Reshenie_problem_s..._0/1015/80.html

 

I think it sucks to disable legacy. My USB works with legacy switched on.

I don't know what is the trick. The orByte's method is a creating legacy support.

 

So, I installed with kexthelper, rebooted and here's what I got:

 

2 flash drives I plugged in worked 100%, as opposed to before the driver,

The best news I saw before.

my belkin USB wireless NIC (model FD07050) did not, although the official mac utility for it from belkin was running.

Are you sure that belkin's driver has Intel flavour? If PowerPC only - sorry!

Link to comment
Share on other sites

!! DON'T use ACPIFamily.kext 1.0.3 ("ACPI-fix" in distros) with Toshiba P-10x --> random kernel panics @ boot!!

Sorry for offtopic. What is the problem?

(my compilation)

Link to comment
Share on other sites

@ chief Slice: you can tell other man from white man that other man did great job (for which white man kinda loves other man)

 

@ anthony_c: you find IOUSBFamily 3.0.8/ Mac OS 10.5.2 (containing the plugins compiled by ARMAGEDDON Slice posted here) attached.

3.0.8 is the latest for Mac OS 10.5.2/3/4.

 

As always, install with kext helper or ~pcwiz' Mac OSx86 Tools Utility.

 

 

Working USB at last on HP 5245ea, 10.5.4!!

:-)))))

Thanks!

Link to comment
Share on other sites

Try v308 made by Dmdimon

 

It is new version of USBEHCI made by orByte's method but with Apple sources from Leo 10.5.2

 

 

@ anthony_c: you find IOUSBFamily 3.0.8/ Mac OS 10.5.2 (containing the plugins compiled by ARMAGEDDON Slice posted here) attached.

3.0.8 is the latest for Mac OS 10.5.2/3/4.

 

As always, install with kext helper or ~pcwiz' Mac OSx86 Tools Utility.

You are wrong. It is not compiled by ARMAGEDDON. He is topic starter.

Idea by orByte.

Sources correction by me.

Compilation by Dmdimon.

Thanks for all.

Link to comment
Share on other sites

  • 2 weeks later...

Sorry if someone already mentioned this but:

 

1. Can I use it with 10.5.4

2. Is this absolutely necessary? Like will I get USB1.0/1.1 speeds only without this?

 

EDIT: I tried it just to try it and it works fine.

Link to comment
Share on other sites

Differences between sources 308 and 314

New

	if (!_uimInitialized)
{
	// set the reset bit, but only if we are not currently initialized

About PCCard

	if (_controllerAvailable && !_wakingFromHibernation && !_pcCardEjected && (GetRootHubStatus((IOUSBHubStatus *)&tempStatus) == kIOReturnSuccess))

About link and unlink

		
	// 3-4-08 rdar://5779996
	// it is possible that the unlink above has zerod out _AsyncHead, and the link code won't automatically set it back
	// so do that the same way we always do, at least until we solve rdar://5779967
	// this code is copied from a different place
	if (_AsyncHead)
	{

	// 5664375 - only need to do the following if the Async list is enabled in the CMD register
	if (CMD & kEHCICMDAsyncEnable)

About Power state

AppleUSBHub::setPowerState ( unsigned long powerStateOrdinal, IOService* whatDevice )
{
// 5654850 - this used to be done in powerStateWillChangeTo. however, that was too early, so we moved it to HubPowerChange, which is the call
// which gets made from the superclass when a setPowerState comes in.
// however, the superclass implementation will short-circuit that call if we are being terminated, so now we do it just before
// the superclass::setPowerState. this makes it work much better when a hub in low power mode gets disconnected

About deadcheck

	if ( thread_call_enter(_hubDeadCheckThread) == TRUE )
{
	USBLog(3, "AppleUSBHub[%p]::CallCheckForDeadHub _hubDeadCheckThread already queued", this);
	DecrementOutstandingIO();
}

About busy device

// before issuing a Synchronous terminate, we need to make sure that the device is not busy

while (cachedPortDevice->getBusyState() && retries--)

{

// wait up to 10 seconds for the device to get un-busy

USBLog(2, "AppleUSBHubPort[%p]::RemoveDevice - device(%p)[%s] busy - waiting 100ms (retries remaining: %d)", this, cachedPortDevice, cachedPortDevice->getName(), (int)retries);

IOSleep(100);

}

if (cachedPortDevice->getBusyState())

{

USBError(1, "AppleUSBHubPort: Port %d of Hub at %p about to terminate a busy device (%s) after waiting 10 seconds", _portNum, (void*)_hub->_locationID, cachedPortDevice->getName());

}

And so on.

 

It means latest kext is not final solution. The latest sources 314 are better.

They are not intended only for 10.5.3. They are simply more correct sources.

Link to comment
Share on other sites

 Share

×
×
  • Create New...