I'm working on a project on getting a new device for
the ExpressCard slot on the new NacMbook Pros working.
We seem to be hitting a possile bug in
IOPCIBridge::checkCardBusNumbering. Specifically, we
bail at this check where the seconday bus number is
tested for equality against the suboridnate bus
number:
// is there room for an subordinate pci bridge? we
only need to
// check for this if we find a child bridge
if (parentSecBus == parentSubBus) {
IOLog("%s: bad bridge bus numbering, no room to fix,
bailing out!\n", getName());
goto error;
}
The EFI firmware initializes the secondary bus and
subordinate bus registers to the same nuber, which is
correct. So, we think the bug is in this function or
something closely related to it.
Apple has reportedly fixed this bug in Leopard,
although we don't know exactly what they changed (they
won't tell us). From what we can tell the bug is not
in the device firmware and it works fine under Win XP.
We need to fix the bug in 10.4.x as opposed to waiting
for Leopard to be released.
We thought about fixing the bug in the IOPCIFamily
KEXT, but the Darwin open source project
(IOPCFamily-34) doesn't compile on an Intel machine
targeting i386 using Xcode 2.4 and 10.4.u SDK (we get
a compiler error on i386/cpu_number.h not being found;
this file doesn't exist in the 10.4.u SDK). I also
noticed that the version of the IOPCIFamily KEXT that
is installed in 10.4.8 is 2.1. The latest version of
the IOPCIFamily KEXT posted in Darwin is 1.7 at this
URL:
http://www.opensource.apple.com/darwinsource/10.4.7.ppc/IOPCIFamily-34.
The question I have is if it's possible for us to
write our own KEXT that simply patches the possible
bug in IOPCIFamily (assuming we find it). In other
words, would it be possible to write an IOKit driver
that simply overrides the possibly faulty function
checkCardBusNumbering in IOPCIBridge.cpp.
Any help would be appreciated.
Thanks,
-Steve
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-drivers mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/darwin-drivers/email@hidden
This email sent to email@hidden