~Eureka Posted January 31, 2008 Author Share Posted January 31, 2008 Hi Chun-Nan, Your rev 2 of IOPCI still causing error in my comp. It is about USBF AppleUSBUHCI: UIMInitialize - ioMap is NULL unable to initialize UIM something... just like error generated by the rev 1 IOPCI... regards Barbie Hi Barbie, Can you boot with rev2 but without AGPGart loaded and see if the error is still there? I would like to know if the AGPGart caused the problem. BTW, did your system crash this time? Which version of IOUSBFamily are you using now? Can you boot into single user mode to get the dmesg information? Thanks. Chun-Nan Link to comment Share on other sites More sharing options...
Slice Posted January 31, 2008 Share Posted January 31, 2008 About bus numbering, here is the sample link. I am sure you can search more on the internet.http://www.science.unitn.it/~fiorella/guid...100000000000000 Thanks for explanation About "kIOPCIResetKey", it should be defined in IOPCIPrivate.h. OK! It is Leo property that I have no. About "getFreeCount()", it relates to the problem of "IOPCCardBridge::checkBridgeBusIDs invalid sub/cardbus/pci settings of 0x0". Because it doesn't have free bus/range resources, it cause "0x0".You can check this message on your dmesg "PCI configuration changed (BUS free=0 needed=1 added=1)". I think you are wrong. getFreeCount() good ONLY if zero. You might use getFragmentCount() Then I put "if (0 & gIOPCISkip)". Therefore, if gIOPCISkip != 0, it will skip the following command while if gIOPCISkip = 0, it won't. NO! The result always 0. So you always skip command. You might write if(!gIOPCISkip) 2 EqUaTe This warning means that we compare Ranges and Counts. Both is integer so warning only, but they have different sense Linux will never be good Link to comment Share on other sites More sharing options...
EqUaTe Posted January 31, 2008 Share Posted January 31, 2008 I can't agree - linux is already very good, and a large percentage of 3rd party drivers have been ported from linux to OSX.. (Though why we're not porting from BSD, I'm not really sure..). And if I'm reading what Chun-Nan said, actually it will NEVER skip the command. Anyway - the important thing about my post is that I have agpgart & Chun-Nan's IOPCIFamily/IOPCCardFamily working happily together. Link to comment Share on other sites More sharing options...
barbie Posted January 31, 2008 Share Posted January 31, 2008 Hi Barbie, Can you boot with rev2 but without AGPGart loaded and see if the error is still there? I would like to know if the AGPGart caused the problem. BTW, did your system crash this time? Which version of IOUSBFamily are you using now? Can you boot into single user mode to get the dmesg information? Thanks. Chun-Nan Hi Chun-Nan, Good news, with rev2 but without AGPGart loaded, computer boot well. with AGPGart loaded, my comp get freeze after some long list message on the screen (verbose mode), but it can boot into single user mode and here is the dmesg result as attached. My version of IOUSBFamily is 2.7.7 regards, Barbie with_agp.txt Link to comment Share on other sites More sharing options...
Slice Posted January 31, 2008 Share Posted January 31, 2008 I can't agree - linux is already very good, and a large percentage of 3rd party drivers have been ported from linux to OSX.. (Though why we're not porting from BSD, I'm not really sure..). I use Ubuntu during half a year. Every weeks download 100Mb patches. When it finished? System became spagetti because of thousand libs in one place with incompatible versions. You are right. Linux world have more developers with more experience about drivers then HackOSX. And if I'm reading what Chun-Nan said, actually it will NEVER skip the command. if(0 & gIOPCISkip) is the same as if(0) that means NEVER EXEC, always SKIP. Anyway - the important thing about my post is that I have agpgart & Chun-Nan's IOPCIFamily/IOPCCardFamily working happily together. Interesting news. I think it depends on PCI hardware configuration. I also trying to resolve the issue. AGPGart 2.2 and 2.4 have a difference in ATI RS300 bus support. For you it is probably the same. Link to comment Share on other sites More sharing options...
EqUaTe Posted January 31, 2008 Share Posted January 31, 2008 I use Ubuntu during half a year. Every weeks download 100Mb patches. When it finished? System became spagetti because of thousand libs in one place with incompatible versions. Sounds like you did an upgrade from one release to another. They only just really got that working, and imo it's still a bit hacky. I don't like Ubuntu. Debian is far better You are right. Linux world have more developers with more experience about drivers then HackOSX. if(0 & gIOPCISkip) is the same as if(0) that means NEVER EXEC, always SKIP. Hrm.. Yet it does seem to allocate bridges? Interesting news. I think it depends on PCI hardware configuration. I also trying to resolve the issue. AGPGart 2.2 and 2.4 have a difference in ATI RS300 bus support. For you it is probably the same. Well, I haven't tried your one.. But this is fairly old hardware.. Dell C640. Intel chipset board, radeon 7500m.. But no crashes, at all. Might be worth having a look at yourself.. EqUaTe Link to comment Share on other sites More sharing options...
~Eureka Posted January 31, 2008 Author Share Posted January 31, 2008 Hi Slice, I think you are right with "(0 & gIOPCISkip)". I will fix it in the next revision. However, I did want to skip it. Otherwise, it will set all command to "0". Chun-Nan ======== Hi Barbie, Can you post the dmesg without AGPGart loadded? Thanks. Chun-Nan Link to comment Share on other sites More sharing options...
Slice Posted January 31, 2008 Share Posted January 31, 2008 Hi All! I found a mistake in AGPGart all version from 2.2 and later. Tomorrow I'll give you new one after own testing. the mistake in rewriting getBridgeSpace() method... Link to comment Share on other sites More sharing options...
barbie Posted February 1, 2008 Share Posted February 1, 2008 Hi Barbie, Can you post the dmesg without AGPGart loadded? Thanks. Chun-Nan Hi Chun-Nan, ok, here it is dmesg without AGPGart loadded as attached. regards, Barbie no_agp.txt Link to comment Share on other sites More sharing options...
Slice Posted February 1, 2008 Share Posted February 1, 2008 Hi Chun-Nan! I have a problem. AGPGart started repeatedly many times with PCI configuration changed... many USB errors (bus 38 is already talken) and finally kernel panic even in -s mode. Seems it is not only my problem or I can't understand what is happen. Your changes influence on all bridges but may be restrict it to CardBus? (0 & gIOPCISkip) - not influence in any combinations always 0 always 1 gIOPCISkip !gIOPCISkip Link to comment Share on other sites More sharing options...
~Eureka Posted February 2, 2008 Author Share Posted February 2, 2008 Hi slice, I am working on iopcifamily for leopard right now. Hopefully, it will fix the firewire issue and maybe agpgart issue. If the test is ok, I will update the tiger version. Be positive! Chun-Nan Link to comment Share on other sites More sharing options...
Slice Posted February 3, 2008 Share Posted February 3, 2008 Hi slice, I am working on iopcifamily for leopard right now. Hopefully, it will fix the firewire issue and maybe agpgart issue. If the test is ok, I will update the tiger version. Be positive! Chun-Nan I want to prevent you from bad effort. You try to reconfigure PCI bus but this operation is very dangerous for other drivers. Two day I waste to reformatting my HDD because IOPCIFamily raise an error in ATA driver and system is destroyed. After reinstalling the system I'll contunue to work on the problem. Link to comment Share on other sites More sharing options...
EqUaTe Posted February 4, 2008 Share Posted February 4, 2008 Slice, No offense, but you need to think about it if it took you two days to reinstall. Also, try and be more positive about things! Negative attitudes inevitably lead to defeat. Has it occurred to you that this work will benefit us all in the long-run, potentially for much more than just PCCard & FW ? Link to comment Share on other sites More sharing options...
Slice Posted February 4, 2008 Share Posted February 4, 2008 I repeat. I think that bus renumbering is a wrong way because of conflicts. Why so long no success? Why Apple exclude these codes from version 2.x being in version 1.x? I am working too but I am very far from full understanding the process. Chun-Nan is more advanced. Link to comment Share on other sites More sharing options...
Slice Posted February 5, 2008 Share Posted February 5, 2008 I have some advances. // Probe I/O base and limit end = configRead32(bridge->space, kPCI2PCIIORange); //Slice // if (end && ((end & (0x0f0f)) == 0)) if (end && ((end & (0x0e0e)) == 0)) This correction already made for Leo but not for Tiger. It resolves my problem with "Bridge IO Range" for Video Card. //Slice // err = getDTNubAddressing( nub ); //V22 err = getNubAddressing( nub ); //V16 First method for getting address better but only for system with all devices supported, i.e. Real Mac. Second method give me perfect sound without delays and overall improvements. Some other changes. This driver is still compatible with AGRGart but don't give me good IODeviceMemory for CardBridge. To be continued... Link to comment Share on other sites More sharing options...
EqUaTe Posted February 5, 2008 Share Posted February 5, 2008 I repeat. I think that bus renumbering is a wrong way because of conflicts. Why so long no success? Why Apple exclude these codes from version 2.x being in version 1.x? I am working too but I am very far from full understanding the process. Chun-Nan is more advanced. Why so long with no success? Because Chun-Nan doesn't have AGP, and everything on his system has worked perfectly for some time. Ever tried to code something and test it entirely on other peoples hardware? It ain't easy He's also focusing on the leopard version for now. Once that is sorted, he'll move on to the tiger one - most of the changes should be backportable i suspect. Glad you've seen a few things that help in your own trials though.. EqUaTe Link to comment Share on other sites More sharing options...
~Eureka Posted February 6, 2008 Author Share Posted February 6, 2008 Hi all, In oreder to find out the firewire issues and other issues, I need people to test the file and report the result. Here is the test1 IOPCIFamily. Use this one with IOPCCardFamily on rev2. Please follow these steps: 1. Backup your working IOPCCardFamily and IOPCCardFamily. 2. Replace those files with test1 IOPCIFamily and rev2 IOPCCardFamily. 3. Double-check the permessions of the files and delete the cache files (Extensions.mkext and Extensions.kextcache) 4. Shutdown the computer. (Don't just restart but turn it off) 5. Turn it back on after a while. 6. Boot with "-s" to enter single user mode. Let me know the dmesg result. 7. Boot with standard mode. Check if both firewire and pccard function correctly. Again, don't forget to backup your original file before trying it. Thanks a lot. Chun-Nan IOPCIFamily.test1.zip Link to comment Share on other sites More sharing options...
Slice Posted February 6, 2008 Share Posted February 6, 2008 I have strange observation. in dmesg PCI configuration changed (bridge=0 device=5 yenta=1) Why yenta? I have two devices N5 | | | +-o NIC0@5 <class IOPCIDevice, registered, matched, active, busy 0, retain count 10> | | | | | { | | | | | "IODeviceMemory" = (({"address"=0xffffffffc0204000,"length"=0x2000})) | | | | | "device-id" = <0c170000> | | | | | "IOChildIndex" = 0x3 | | | | | "name" = "ethernet" | | | +-o ATIM@5 <class IOPCIDevice, registered, matched, active, busy 0, retain count 12> | | | | { | | | | "AAPL,gray-page" = <01000000> | | | | "IODeviceMemory" = (({"address"=0xffffffffd0000000,"length"=0x10000000}),{"offset"=0x9000,"parent"=({"address"=0x0,"length"=0x10000}),"length"=0x100},({"address"=0xffffffffc0100000,"length"=0x10000})) | | | | "device-id" = <"5X"> | | | | "IOChildIndex" = 0x1 | | | | "name" = "display" With the same busNum and functionNum About precautions. Restart a system and then enter BIOS Make RESET CONFIGURATION DATA! -- it is PCI bus configuration. else I have kernel panic. Link to comment Share on other sites More sharing options...
~Eureka Posted February 6, 2008 Author Share Posted February 6, 2008 I have strange observation.in dmesg Why yenta? I have two devices N5 | | | +-o NIC0@5 <class IOPCIDevice, registered, matched, active, busy 0, retain count 10> | | | | | { | | | | | "IODeviceMemory" = (({"address"=0xffffffffc0204000,"length"=0x2000})) | | | | | "device-id" = <0c170000> | | | | | "IOChildIndex" = 0x3 | | | | | "name" = "ethernet" | | | +-o ATIM@5 <class IOPCIDevice, registered, matched, active, busy 0, retain count 12> | | | | { | | | | "AAPL,gray-page" = <01000000> | | | | "IODeviceMemory" = (({"address"=0xffffffffd0000000,"length"=0x10000000}),{"offset"=0x9000,"parent"=({"address"=0x0,"length"=0x10000}),"length"=0x100},({"address"=0xffffffffc0100000,"length"=0x10000})) | | | | "device-id" = <"5X"> | | | | "IOChildIndex" = 0x1 | | | | "name" = "display" With the same busNum and functionNum About precautions. Restart a system and then enter BIOS Make RESET CONFIGURATION DATA! -- it is PCI bus configuration. else I have kernel panic. Hi Slice, I have rewritten the way of fixing pccard on iopcifamily. If possible, you can try to help to test the test1 iopcifamily. Thanks. Chun-Nan Link to comment Share on other sites More sharing options...
Slice Posted February 6, 2008 Share Posted February 6, 2008 Hi Chun-Nan! I tried your new version. Boot in -v -s mode. Saw many messages then system hangs so I can't show its for you (no photo at the moment) The last IOPCCard info: PCIC probeIOPCCard notice: bad bridge mapping at 0xc0202000 not found IOPCCardBridge::start failed This is address of USB | | | +-o pci1033,35@6,1 <class IOPCIDevice, registered, matched, active, busy 0, retain count 9> | | | | | { | | | | | "USBBusNumber" = 0x26 | | | | | "IODeviceMemory" = (({"address"=0xffffffffc0202000,"length"=0x1000})) With your previous revision all devices except AGP works. Can you show me your sources? I try another method of bus renumbering. Simply copy it from IOPCIFamily 1.7 All works except AGPGart. With it I have many problems with USB. Link to comment Share on other sites More sharing options...
Slice Posted February 6, 2008 Share Posted February 6, 2008 Hi all! Now I have own IOPCIFamily. It is compiled for Tiger 10.4.6. Test and check all your devices, especially hot-plug. I have working Adaptec SlimSCSI 1480. Hot plug on and off. Sorry AGPGart is still incompatible. I'll be rewrite it known how to work its superclass. Here is my sources and ready to use kext for Tiger. May be someone (for example Chun-Nan) rebuild it for rendevous kernel and for Leo. All my codes is commented. start -- //Slice end -- // Link to comment Share on other sites More sharing options...
toadspit Posted February 6, 2008 Share Posted February 6, 2008 Hi all! Now I have own IOPCIFamily. It is compiled for Tiger 10.4.6. Test and check all your devices, especially hot-plug. I have working Adaptec SlimSCSI 1480. Hot plug on and off. Sorry AGPGart is still incompatible. I'll be rewrite it known how to work its superclass. Here is my sources and ready to use kext for Tiger. May be someone (for example Chun-Nan) rebuild it for rendevous kernel and for Leo. All my codes is commented. start -- //Slice end -- // working on my ASUS P4R800-VM, pentium 4 with 10.4.8 I don't have hot plug devices to test it with, anyway dmesg and ioreg attached, if it can help dmesg.txt ioreg.txt Link to comment Share on other sites More sharing options...
Slice Posted February 6, 2008 Share Posted February 6, 2008 2 toadspit If you have no problem what to check? I made test with PCIE computer. Works! Moreover. XBench increased! OpenGL the same 202,5 vs 203,5 User Interface 495,1 vs 439 OpenMark don't slow down when I move mouse as before! Link to comment Share on other sites More sharing options...
~Eureka Posted February 7, 2008 Author Share Posted February 7, 2008 Hi all, In oreder to find out the firewire issues and other issues, I need people to test the file and report the result. Here is the test2 IOPCIFamily. Use this one with IOPCCardFamily on rev2. Please follow these steps: 1. Backup your working IOPCCardFamily and IOPCCardFamily. 2. Replace those files with test2 IOPCIFamily and rev2 IOPCCardFamily. 3. Double-check the permessions of the files and delete the cache files (Extensions.mkext and Extensions.kextcache) 4. Shutdown the computer. (Don't just restart but turn it off) 5. Turn it back on after a while. 6. Boot with "-s" to enter single user mode. Let me know the dmesg result. 7. Boot with standard mode. Check if both firewire and pccard function correctly. Again, don't forget to backup your original file before trying it. Thanks a lot. Chun-Nan IOPCIFamily.test2.zip Link to comment Share on other sites More sharing options...
toadspit Posted February 7, 2008 Share Posted February 7, 2008 2 toadspitIf you have no problem what to check? I made test with PCIE computer. Works! Moreover. XBench increased! OpenGL the same 202,5 vs 203,5 User Interface 495,1 vs 439 OpenMark don't slow down when I move mouse as before! Slice: boh? I thought that Debug info would make more sense to you than it does to me! DEBUG name = P0P1, hdr = 0x1, parent [0 - 255], device(1, 0) pri 0 [1 - 1] DEBUG name = P0P2, hdr = 0x81, parent [0 - 255], device(20, 4) pri 0 [2 - 2] Link to comment Share on other sites More sharing options...
Recommended Posts