Jump to content

CardBus/PCMCIA PC Cards for Tiger


  • Please log in to reply
160 replies to this topic

#61
~Eureka

~Eureka

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 400 posts
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! :D

Chun-Nan

#62
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow

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! :D

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.

#63
EqUaTe

EqUaTe

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 147 posts
  • Gender:Male
  • Location:Babylon 5
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 ?

#64
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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.

#65
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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...

#66
EqUaTe

EqUaTe

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 147 posts
  • Gender:Male
  • Location:Babylon 5

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 :blink:

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

#67
~Eureka

~Eureka

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 400 posts
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

Attached File  IOPCIFamily.test1.zip   222.85KB   20 downloads

#68
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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.

#69
~Eureka

~Eureka

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 400 posts

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

#70
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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 probe
IOPCCard 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.

#71
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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 -- //

#72
toadspit

toadspit

    InsanelyMac Protégé

  • Members
  • PipPip
  • 86 posts

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

Attached Files



#73
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow
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!

#74
~Eureka

~Eureka

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 400 posts
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

Attached File  IOPCIFamily.test2.zip   223.01KB   21 downloads

#75
toadspit

toadspit

    InsanelyMac Protégé

  • Members
  • PipPip
  • 86 posts

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 :angel:

OpenMark don't slow down when I move mouse as before!



Slice: boh? :unsure: 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]

#76
fingerr

fingerr

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 260 posts
  • Gender:Male
  • Location:Poland

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

Attached File  IOPCIFamily.test2.zip   223.01KB   21 downloads

Hi Chun-Nan,

test2 + rev2 works like in Leopard, I have to manually load IOPCCardFamily to get PCMCIA and FW working (when IOPCCardFamily is in Extensions only PCMCIA works).

Here is dmesg:
pciBridgeAllocateResource(bus 7, state 0)Allocating resources on bus 7  clipped bridge MEM range head to f0904000:fc000 for f0900000:4000 overlap 4000  MEM: sub-range outside parent range: 0xf0900000:0x4000PCI configuration changed (BUS free=0 needed=1 added=1)  MEM: 1 sub-range limited to fa700 each  BUS: 1 sub-range limited to 0 each  MEM: allocated block f0906000:1000pciBridgeDistributeResource(bus 7, state 2)Distribute resources for bus 7  MEM: total size fc000, required size 6900, maximize count 0  MEM: assigned block f0904000:4000  MEM: assigned block f0908000:1000  MEM: assigned block f0909000:1000  MEM: assigned block f090a000:800  MEM: assigned block f090a800:100  BUS: total size 0, required size 1, maximize count 1  BUS: assigned block 8:1Applying config for device 7:6:3  bar 0x10 = f090a800  Device Command = 02100006Applying config for device 7:6:2  bar 0x10 = f0909000  Device Command = 02100006Applying config for device 7:6:1  bar 0x10 = f090a000  bar 0x14 = f0904000  Device Command = 02100006Applying config for bridge serving bus 8  MEM: start/size = 00000000:00000000  I/O: start/size = 00000000:00000000  BUS: start/size = 00000008:00000001  bar 0x10 = f0908000  Regs:  BUS: prim/sec/sub = 07:08:08Enabling bridge serving bus 8  Bridge Command    = 02100007PCI configuration changed (bridge=0 device=3 yenta=1)Security auditing service presentBSM auditing presentdisabledFrom path: "uuid", Waiting for boot volume with UUID B682126F-86CF-38CA-95BF-F6AF0061BE18Waiting on <dict ID="0"><key>IOProviderClass</key><string ID="1">IOResources</string><key>IOResourceMatch</key><string ID="2">boot-uuid-media</string></dict>USB caused wake event (EHCI)FireWire (OHCI) TI ID 803a PCI now active, GUID 00080da0d13f83df; max speed s400.Got boot device = IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@1F,2/AppleIntelPIIXATARoot/PRID@0/AppleIntelICHxSATA/ATADeviceNub@0/IOATABlockStorageDriver/IOATABlockStorageDevice/IOBlockStorageDriver/TOSHIBA MK1237GSX Media/IOFDiskPartitionScheme/Untitled 4@4BSD root: disk0s4, major 14, minor 4IOPCCard info:   Intel PCIC probe:   TI XX12 rev 00IOPCCard info:   cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038IOPCCard info:   cs: cb_alloc(bus 8): found 3 functionsIOCardBusDevice: binding socket 0 function 0 to card services.IOPCCard info:   cs: cb_config(bus 8)IOPCCard info:     fn 0 bar 2: mem 0xa0004000-0xa00040ffIOPCCard info:     fn 0 bar 5: io 0x120-0x13fIOPCCard info:     fn 1 bar 2: mem 0xa0003000-0xa00030ffIOPCCard info:     fn 1 bar 5: io 0x100-0x11fIOPCCard info:     fn 2 bar 1: mem 0xa0002000-0xa00020ffIOPCCard info:     fn 2 bar 2: mem 0xa0001000-0xa00010ffIOPCCard info:     irq 18IOCardBusDevice: binding socket 0 function 1 to card services.IOCardBusDevice: binding socket 0 function 2 to card services.

Regards,
Mariusz.

#77
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,926 posts
  • Gender:Male
  • Location:Moscow

Slice: boh? :D 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]

This is OK!

You remind me that I need to erase all DEBUG settings after all testings.

#78
ole2

ole2

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 180 posts
  • Gender:Male
  • Location:Grenoble, France

This is OK!

You remind me that I need to erase all DEBUG settings after all testings.

not eraze, but flag them "#ifdef _DEBUG"

#79
~Eureka

~Eureka

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 400 posts
Hi guys,

I have updated rev3 of IOPCIFamily and IOPCCardFamily.
http://forum.insanel...showtopic=81048

In this revision, I have rewritten the way of fixing pccard related bridge and resources. If you are using other revisions, please update to rev3.

Let me know the result if possible. Again, don't forget to backup your original file before trying it. Thanks.

Chun-Nan

[KNOWN ISSUE]
It probably still won't work with AGPGart.
If having the problems with firewire device, you probably need to kextload iopccardfamily manually. (make sure iopccardfamily is loaded after iofirewirefamily)

#80
fingerr

fingerr

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 260 posts
  • Gender:Male
  • Location:Poland

Hi guys,

I have updated rev3 of IOPCIFamily and IOPCCardFamily.
http://forum.insanel...showtopic=81048

In this revision, I have rewritten the way of fixing pccard related bridge and resources. If you are using other revisions, please update to rev3.

Let me know the result if possible. Again, don't forget to backup your original file before trying it. Thanks.

Chun-Nan

[KNOWN ISSUE]
It probably still won't work with AGPGart.
If having the problems with firewire device, you probably need to kextload iopccardfamily manually. (make sure iopccardfamily is loaded after iofirewirefamily)

Hi Chun-Nan,
rev3 works like rev2+test2 (i have to manually load IOPCCardFamily), here are dmesgs:

with IOPCCard in Extensions:
IOPCCard info:   Intel PCIC probe:   TI XX12 rev 00FireWire (OHCI) TI ID 803a PCI now active, GUID 00080da0d13f83df; max speed s400.IOPCCard info:   cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038IOPCCard info:   cs: cb_alloc(bus 8): found 3 functionsIOCardBusDevice: binding socket 0 function 0 to card services.IOPCCard info:   cs: cb_config(bus 8)IOPCCard info:     fn 0 bar 2: mem 0xa0004000-0xa00040ffIOPCCard info:     fn 0 bar 5: io 0x120-0x13fIOPCCard info:     fn 1 bar 2: mem 0xa0003000-0xa00030ffIOPCCard info:     fn 1 bar 5: io 0x100-0x11fIOPCCard info:     fn 2 bar 1: mem 0xa0002000-0xa00020ffIOPCCard info:     fn 2 bar 2: mem 0xa0001000-0xa00010ffIOPCCard info:     irq 18IOCardBusDevice: binding socket 0 function 1 to card services.IOCardBusDevice: binding socket 0 function 2 to card services.

and without (manual load):
FireWire (OHCI) TI ID 803a PCI now active, GUID 00080da0d13f83df; max speed s400.Got boot device = IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@1F,2/AppleIntelPIIXATARoot/PRID@0/AppleIntelICHxSATA/ATADeviceNub@0/IOATABlockStorageDriver/IOATABlockStorageDevice/IOBlockStorageDriver/TOSHIBA MK1237GSX Media/IOFDiskPartitionScheme/Untitled 4@4BSD root: disk0s4, major 14, minor 4IOPCCard info:   Intel PCIC probe:   TI XX12 rev 00IOPCCard info:   cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038IOPCCard info:   cs: cb_alloc(bus 8): found 3 functionsIOCardBusDevice: binding socket 0 function 0 to card services.IOPCCard info:   cs: cb_config(bus 8)IOPCCard info:     fn 0 bar 2: mem 0xa0004000-0xa00040ffIOPCCard info:     fn 0 bar 5: io 0x120-0x13fIOPCCard info:     fn 1 bar 2: mem 0xa0003000-0xa00030ffIOPCCard info:     fn 1 bar 5: io 0x100-0x11fIOPCCard info:     fn 2 bar 1: mem 0xa0002000-0xa00020ffIOPCCard info:     fn 2 bar 2: mem 0xa0001000-0xa00010ffIOPCCard info:     irq 18IOCardBusDevice: binding socket 0 function 1 to card services.IOCardBusDevice: binding socket 0 function 2 to card services.

Regards,
Mariusz.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy