Jump to content

CardBus/PCMCIA PC Cards for Leopard


~Eureka
 Share

1,073 posts in this topic

Recommended Posts

using the original IOPCIFamilty.kext and the rev3 IOPCCardFamily.kext I get a kernel panic.

 

Hi jon37325,

 

I am working on the new revision of IOPCIFamily and IOPCCardFamily.

 

Can you double check the chip of your pccard (vender id and device id). If they don't match correctly with the source code, it will never work.

 

Chun-Nan

Link to comment
Share on other sites

Hi Mariusz, fakedotbr, and djmastera2000,

 

Here is the test4 IOPCIFamily. Try this one with IOPCCardFamily on rev5 and boot with "-s" to enter single user mode. Don't make any change on info.plist.

 

Let me know the result. Don't forget to backup your original file before trying it. Thanks.

 

Chun-Nan

Hi Chun-Nan,

 

looks like card is recognized but after inserting PCMCIA USB I get some strange errors, find below dmesgs:

 

Before inserting adapter:

 

IOAPIC: Version 0x20 Vectors 64:87
ACPI: System State [s0 S3 S4 S5] (S3)
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
mbinit: done
Security auditing service present
BSM auditing present
Starting AppleACPIPS2Nub
Found mouse PNP device
AppleACPIPS2Nub startup complete
Extension "com.apple.driver.AppleACPIPlatform" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
From path: "uuid", 
Waiting for boot volume with UUID 252724EC-A21D-3FC0-94F9-BCEC237771D7
Waiting on <dict ID="0"><key>IOProviderClass</key><string ID="1">IOResources</string><key>IOResourceMatch</key><string ID="2">boot-uuid-media</string></dict>
   bridge bus 1:1 BUS 0001:0001
   bridge bus 2:2 BUS 0002:0001
   bridge bus 3:4 BUS 0003:0002
   bridge bus 5:6 BUS 0005:0002
   bridge bus 7:7 BUS 0007:0001
   yenta bus 0:0 BUS 0000:0001
   yenta bus 0:0 BUS 0000:0001
pciBridgeCheckConfiguration(bus 7, state 0)
pciBridgeAllocateResource(bus 7, state 0)
Allocating resources on bus 7
root bridge resource MEM f0900000 len 100000
root bridge resource PFM fff00000 len 200000
root bridge resource I/O f000 len ffff2000
root bridge resource BUS 7 len 1
 clipped bridge MEM range head to f0904000:fc000 for f0900000:4000 overlap 4000
 MEM: sub-range outside parent range: 0xf0900000:0x4000
 MEM: 2 sub-range limited to 7d380 each
 I/O: 1 sub-range limited to ffff2000 each
 BUS: 1 sub-range limited to 0 each
 MEM: allocated block f0906000:1000
pciBridgeDistributeResource(bus 7, state 2)
Enabling bridge serving bus 7
 Bridge Control    = 0000
 Bridge Command    = 00100007
Distribute resources for bus 7
 BUS: total size 0, required size 1, maximize count 1
 BUS: assigned block 8:1
Applying config for device 7:6:3
 bar 0x10 = f0905800
 Device Command = 02100000
 changed LT to 64 PCI clocks
Applying config for device 7:6:2
 bar 0x10 = f0904000
 Device Command = 02100000
 changed LT to 64 PCI clocks
Applying config for device 7:6:1
 bar 0x10 = f0905000
 bar 0x14 = f0900000
 Device Command = 02100000
 changed LT to 64 PCI clocks
Applying config for bridge serving bus 8
 MEM: start/size = 00000000:00100000
 I/O: start/size = 00000000:00001000
 BUS: start/size = 00000008:00000001
 Regs:
 BUS: prim/sec/sub = 07:08:08
Enabling bridge serving bus 8
 Bridge Command    = 02100000
 changed LT to 64 PCI clocks
 changed SEC-LT to 64 PCI clocks
PCI configuration changed (bridge=0 device=3 yenta=1)
IOPCCard info:   Intel PCIC probe:   TI XX12 rev 00
FireWire (OHCI) TI ID 803a PCI now active, GUID 00080da0d13f83df; max speed s400.
Extension "com.apple.driver.iTunesPhoneDriver" has no explicit kernel dependency; using version 6.0.
Extension "com.apple.iokit.IOBluetoothFamily" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
E:[AppleUSBBluetoothHCIController][FindInterfaces] mInt0InterruptMaxPacketSize = 16

 

 

and after inserting adapter:

 

PCI configuration changed (bridge=0 device=3 yenta=1)
IOPCCard info:   Intel PCIC probe:   TI XX12 rev 00
FireWire (OHCI) TI ID 803a PCI now active, GUID 00080da0d13f83df; max speed s400.
Extension "com.apple.driver.iTunesPhoneDriver" has no explicit kernel dependency; using version 6.0.
Extension "com.apple.iokit.IOBluetoothFamily" has immediate dependencies on both com.apple.kernel and com.apple.kpi components; use only one style.
E:[AppleUSBBluetoothHCIController][FindInterfaces] mInt0InterruptMaxPacketSize = 16
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 3@3
BSD root: disk0s3, major 14, minor 3
IOPCCard info:   cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038
IOPCCard info:   cs: cb_alloc(bus 8): found 3 functions
IOCardBusDevice: binding socket 0 function 0 to card services.
IOPCCard info:   cs: cb_config(bus 8)
IOPCCard info:     fn 0 bar 2: mem 0xa0004000-0xa00040ff
IOPCCard info:     fn 0 bar 5: io 0x120-0x13f
IOPCCard info:     fn 1 bar 2: mem 0xa0003000-0xa00030ff
IOPCCard info:     fn 1 bar 5: io 0x100-0x11f
IOPCCard info:     fn 2 bar 1: mem 0xa0002000-0xa00020ff
IOPCCard info:     fn 2 bar 2: mem 0xa0001000-0xa00010ff
IOPCCard info:     irq 18
IOCardBusDevice: binding socket 0 function 1 to card services.
IOCardBusDevice: binding socket 0 function 2 to card services.
USBF:	87.758	AppleUSBUHCI: controller reset failed
USBF:	88.902	AppleUSBUHCI: controller reset failed [u][b]<-- (this message repeats over and over again)[/b][/u]

 

I don't have any other PCMCIA adapter at the moment, so cannot say if this problem occurs because my USB adapter is not compatible with MacOSX.

 

Thanks for your good work Chun-Nan !!!

 

----------- EDIT -----------------

These are dev strings from windows xp for my USB adapter:

 

Extended host controller USB VIA

PCI\VEN_1106&DEV_3104&SUBSYS_31041106&REV_65\5&3E26BA2&0&0230F0

 

Universal host controller USB VIA Rev 5 or higher

PCI\VEN_1106&DEV_3038&SUBSYS_30381106&REV_62\5&3E26BA2&0&0030F0

Universal host controller USB VIA Rev 5 or higher

PCI\VEN_1106&DEV_3038&SUBSYS_30381106&REV_62\5&3E26BA2&0&0130F0

 

 

Regards,

Mariusz.

Edited by Mariusz
Link to comment
Share on other sites

Hi Chun-Nan,

 

I tried rev5 and still get "unable to list firewire devices" in the system profiler. I'm using stock version for AppleACPIPlatform.kext, IOACPIFamilly.kext and AppleACPI.kext. Do you know if it can be an IO or memory conflict? I don't know what to do, probably I'll have to wait till osx 10.5.2.

 

Anyway, thanks for all your work...

 

Macpo

Link to comment
Share on other sites

Hi jon37325,

 

I am working on the new revision of IOPCIFamily and IOPCCardFamily.

 

Can you double check the chip of your pccard (vender id and device id). If they don't match correctly with the source code, it will never work.

 

Chun-Nan

 

I belive this is it: 168c:0013

Link to comment
Share on other sites

Hi Chun-Nan,I tried rev5 and still get "unable to list firewire devices" in the system profiler. I'm using stock version for AppleACPIPlatform.kext, IOACPIFamilly.kext and AppleACPI.kext. Do you know if it can be an IO or memory conflict? I don't know what to do, probably I'll have to wait till osx 10.5.2.Anyway, thanks for all your work...Macpo
Hi macpo,It happened to me before. What I did is turn Airport off and turn it on again, then it works. How did you install those two kexts? Did you use Kext helper or copy those files manually?Chun-Nan
Hi Chun-Nan,looks like card is recognized but after inserting PCMCIA USB I get some strange errors, find below dmesgs:........I don't have any other PCMCIA adapter at the moment, so cannot say if this problem occurs because my USB adapter is not compatible with MacOSX.Thanks for your good work Chun-Nan !!!----------- EDIT -----------------These are dev strings from windows xp for my USB adapter:Extended host controller USB VIAPCI\VEN_1106&DEV_3104&SUBSYS_31041106&REV_65\5&3E26BA2&0&0230F0Universal host controller USB VIA Rev 5 or higherPCI\VEN_1106&DEV_3038&SUBSYS_30381106&REV_62\5&3E26BA2&0&0030F0Universal host controller USB VIA Rev 5 or higherPCI\VEN_1106&DEV_3038&SUBSYS_30381106&REV_62\5&3E26BA2&0&0130F0Regards,Mariusz.
Hi Mariusz,Let's wait till fakedotbr or djmastera2000 report their result.Chun-Nan
Link to comment
Share on other sites

Hi Chun-Nan,

 

looks like card is recognized but after inserting PCMCIA USB I get some strange errors, find below dmesgs:

 

Hi Mariusz,

IOPCCard info: cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038
IOPCCard info: cs: cb_alloc(bus 8): found 3 functions
IOCardBusDevice: binding socket 0 function 0 to card services.
IOPCCard info: cs: cb_config(bus 8)
IOPCCard info: fn 0 bar 2: mem 0xa0004000-0xa00040ff
IOPCCard info: fn 0 bar 5: io 0x120-0x13f
IOPCCard info: fn 1 bar 2: mem 0xa0003000-0xa00030ff
IOPCCard info: fn 1 bar 5: io 0x100-0x11f
IOPCCard info: fn 2 bar 1: mem 0xa0002000-0xa00020ff
IOPCCard info: fn 2 bar 2: mem 0xa0001000-0xa00010ff
IOPCCard info: irq 18

I think your cardbus adapter/controller successfully recognized. You should see some info in System Profiler. But your pcmcia/cardbus card is the one not properly start/recognized by OS X. Since your card is pcmcia usb card, I think it has to do with IOUSBFamily kext file. Go to here:-

Generic USB2.0 (EHCI) Driver, Based on 256.4.2

 

Good luck. :)

Link to comment
Share on other sites

Hi macpo,It happened to me before. What I did is turn Airport off and turn it on again, then it works. How did you install those two kexts? Did you use Kext helper or copy those files manually?Chun-NanHi Mariusz,Let's wait till fakedotbr or djmastera2000 report their result.Chun-Nan

For sure, yes my Lord :(

 

So far I'm very thankful for your work, Its the first time my PCMCIA is beeing recognized :)

 

Regards,

Mariusz.

Link to comment
Share on other sites

hi Chun Nan,

 

does your driver work with ENE CB-714 Cardbus controller?

can you suggest me trying rev5 first or test4 first or any other?

i have PCMCIA firewire need to activate in iatKos Leopard...can u pls help?

thank you!

 

i have these ranges:

 

Class: PCMCIA adapters

Device: ENE CB-712/714/810 Cardbus Controller

Resource:

IRQ: [00000016]

MEM: [000DB000 - 000DBFFF]

MEM: [D2000000 - D2000FFF]

MEM: [F6BFF000 - FABFEFFF]

MEM: [FABFF000 - FABFFFFF]

IO: [0000FA00 - 0000FAFF]

IO: [0000FD00 - 0000FDFF]

 

And the firewire PCMCIA:

 

Class: IEEE 1394 Bus host controller

Device: VIA OHCI Compliant IEEE 1394 Host Controller

Resource:

IRQ: [00000016]

MEM: [FABFF700 - FABFF7FF]

MEM: [FABFF800 - FABFFFFF]

IO: [0000FD80 - 0000FDFF]

Link to comment
Share on other sites

Hi Mariusz,

 

I think your cardbus adapter/controller successfully recognized. You should see some info in System Profiler. But your pcmcia/cardbus card is the one not properly start/recognized by OS X. Since your card is pcmcia usb card, I think it has to do with IOUSBFamily kext file. Go to here:-

Generic USB2.0 (EHCI) Driver, Based on 256.4.2

 

Good luck. :)

 

Hi Chun-Nan, Kizwan,

 

you guys ROCKS !!

 

It's working now!!!

 

Now my system can access USB stick connected to PCMCIA USB adapter. WiFi is working, FireWire is shown in system profiler.

I've lost my BlueTooth but sometimes it happens, and I have to reboot into Linux/Windows, enable it and then reboot into MacOS again.

 

AppleUSBUHCI was the culprit. When I removed it from IOUSBfamily.kext/Contents/Plugins I have no USB reset message in terminal.

 

Card is regonized either with AppleUSBEHCI or with Generic USB2.0 (EHCI) Driver, Based on 256.4.2.

 

Big thanks you for you great job Chun-Nan!!!

 

Thanks for the tip with new driver Kizwan.

 

Best regards,

Mariusz.

Edited by Mariusz
Link to comment
Share on other sites

hi Chun Nan,

 

does your driver work with ENE CB-714 Cardbus controller?

can you suggest me trying rev5 first or test4 first or any other?

i have PCMCIA firewire need to activate in iatKos Leopard...can u pls help?

thank you!

 

i have these ranges:

 

Class: PCMCIA adapters

Device: ENE CB-712/714/810 Cardbus Controller

Resource:

IRQ: [00000016]

MEM: [000DB000 - 000DBFFF]

MEM: [D2000000 - D2000FFF]

MEM: [F6BFF000 - FABFEFFF]

MEM: [FABFF000 - FABFFFFF]

IO: [0000FA00 - 0000FAFF]

IO: [0000FD00 - 0000FDFF]

 

And the firewire PCMCIA:

 

Class: IEEE 1394 Bus host controller

Device: VIA OHCI Compliant IEEE 1394 Host Controller

Resource:

IRQ: [00000016]

MEM: [FABFF700 - FABFF7FF]

MEM: [FABFF800 - FABFFFFF]

IO: [0000FD80 - 0000FDFF]

 

Hi bory27,

 

So far ENE is not supported according to the source code. Do you have exact vendor id and device id of your ENE pccard?

 

Chun-Nan

Link to comment
Share on other sites

Chun-Nan, bory27,

 

It's worth noting that someone (I believe barbie) on this forum got one or two ENE cards working with the tiger kext using hexediting.

This implies that all we need to do is to get ene.h from pcmcia-cs source and link it into IOPCCardFamily.kext (ideally at least).

 

 

Cheers,

EqUaTe

Link to comment
Share on other sites

Chun-Nan,

 

Everything is now working GREAT! Thank you so much! If you need any information from my install let me know.

 

Jon37325

 

Great news Jon :)

 

You should keep an eye on this thread though - what you're using now is development stuff (with debug info turned on).

 

Things are definitely moving forward at one heck of a pace though! :D

 

 

*hail Chun-Nan!*

Link to comment
Share on other sites

Great news Jon :D

 

You should keep an eye on this thread though - what you're using now is development stuff (with debug info turned on).

 

Things are definitely moving forward at one heck of a pace though! :D

 

 

*hail Chun-Nan!*

 

Hi EqUaTe,

 

Yes, I am waiting for the test result from fakedotbr and djmastera2000. If everything is ok, I will upload another revision file and source code of both IOPCIFamily and IOPCCardFamily. Also, I will add your device id to the next revision, too. :)

 

Chun-Nan

 

[EDIT]

I will also include ene.h from pcmcia-cs-3.2.8.

#define ENE_PCIC_INFO \

{ "ENE 1211", IS_TI|IS_CARDBUS, ID(ENE, 1211) }, \

{ "ENE 1225", IS_TI|IS_CARDBUS, ID(ENE, 1225) }, \

{ "ENE 1410", IS_TI|IS_CARDBUS, ID(ENE, 1410) }, \

{ "ENE 1420", IS_TI|IS_CARDBUS, ID(ENE, 1420) }

 

If anyone's ENE card is working under linux, I can try to add it to the file. However, I need the exact device id.

Link to comment
Share on other sites

Hi EqUaTe,

 

Yes, I am waiting for the test result from fakedotbr and djmastera2000. If everything is ok, I will upload another revision file and source code of both IOPCIFamily and IOPCCardFamily. Also, I will add your device id to the next revision, too. :)

 

Chun-Nan

 

 

Glad to hear it, though I would like to get you the sum of the o2micro.h differences between IOPCCardFamily and the latest pcmcia-cs before you do - I should be attaching the diff in the next few minutes :D

 

Cheers,

EqUaTe

Link to comment
Share on other sites

Hi bory27,

 

So far ENE is not supported according to the source code. Do you have exact vendor id and device id of your ENE pccard?

 

Chun-Nan

Hi Chun Nan,

The Device & Vendor id of ENE cb-714 is:

  PCI\VEN_1524&DEV_1412&SUBSYS_002014C0&REV_10\4&6B16D5B&0&20F0

 

The firewire PCMCIA card is:

PCI\VEN_1106&DEV_3044&SUBSYS_30441106&REV_46

 

 

Thanks.

Link to comment
Share on other sites

Hi all,

 

I've checked my Bluetooth (looks like it's bluetooth ver 1.x device), and it seems that AppleUSBEHCI conflicts with AppleUSBUHCI when PCCard is inserted.

I thinks it's stuff for another topic but I would like to share it if someone will have the same problem.

 

My ioreg (part related to Bluetooth):

 | |   +-o USB1@1D  <class IOPCIDevice, registered, matched, active, busy 0, retain 9>
   | |   | +-o AppleUSBUHCI  <class AppleUSBUHCI, registered, matched, active, busy 0, retain 9>
   | |   |   +-o UHCI Root Hub Simulation@1D  <class IOUSBRootHubDevice, registered, matched, active, busy 0, retain 10>
   | |   |   | +-o AppleUSBHub  <class AppleUSBHub, !registered, !matched, active, busy 0, retain 7>
   | |   |   | +-o IOUSBInterface@0  <class IOUSBInterface, !registered, !matched, active, busy 0, retain 6>
   | |   |   +-o IOUSBWirelessControllerDevice@1d100000  <class IOUSBDevice, registered, matched, active, busy 0, retain 10>
   | |   |     +-o AppleUSBBluetoothHCIController  <class AppleUSBBluetoothHCIController, registered, matched, active, busy 0,$
   | |   |     +-o IOUSBInterface@0  <class IOUSBInterface, !registered, !matched, active, busy 0, retain 5>
   | |   |     +-o IOUSBInterface@1  <class IOUSBInterface, !registered, !matched, active, busy 0, retain 5>
   | |   |     +-o IOUSBInterface@2  <class IOUSBInterface, !registered, !matched, active, busy 0, retain 5>

 

and dmesg (after inserting USB adapter):

 

IOPCCard info:   cs: cb_alloc(bus 8): vendor 0x1106, device 0x3038
IOPCCard info:   cs: cb_alloc(bus 8): found 3 functions
IOCardBusDevice: binding socket 0 function 0 to card services.
IOPCCard info:   cs: cb_config(bus 8)
IOPCCard info:     fn 0 bar 2: mem 0xa0004000-0xa00040ff
IOPCCard info:     fn 0 bar 5: io 0x120-0x13f
IOPCCard info:     fn 1 bar 2: mem 0xa0003000-0xa00030ff
IOPCCard info:     fn 1 bar 5: io 0x100-0x11f
IOPCCard info:     fn 2 bar 1: mem 0xa0002000-0xa00020ff
IOPCCard info:     fn 2 bar 2: mem 0xa0001000-0xa00010ff
IOPCCard info:     irq 18
IOCardBusDevice: binding socket 0 function 1 to card services.
IOCardBusDevice: binding socket 0 function 2 to card services.
USBF:	167.240	Attempting to get EHCI Controller from BIOS
USBF:	167.268	USBLEGCTLSTS value c0000000
USBF:	167.294	Found USBLEGSUP_ID - value 0x1 - writing OSOwned
USBF:	167.321	acquireOSOwnership done - value 0x1000001
USBF:	167.425	AppleUSBUHCI: controller reset failed
USBF:	167.449	AppleUSBUHCI: controller reset failed
................................................................................
...
................................................................................
...
................................................................................
...
USBF:	172. 92	AppleUSBUHCI: controller reset failed
................................................................................
...
................................................................................
...

 

Regards,

Mariusz.

Link to comment
Share on other sites

Hi all,

 

I've checked my Bluetooth (looks like it's bluetooth ver 1.x device), and it seems that AppleUSBEHCI conflicts with AppleUSBUHCI when PCCard is inserted.

I thinks it's stuff for another topic but I would like to share it if someone will have the same problem.

 

Regards,

Mariusz.

 

Mariusz,

 

That's probably because the two tend to be mutually exclusive - you generally have one or the other, not both.

Also, Apple will only ever have one themselves - they always use Intel chipsets. At least so far anyway :)

 

This is probably a bug in the EHCI kext though (I could be wrong, it could be that apple supports both!).

Does BT work w/o the pcmcia usb card?

 

 

EqUaTe

Link to comment
Share on other sites

Mariusz,

 

That's probably because the two tend to be mutually exclusive - you generally have one or the other, not both.

Also, Apple will only ever have one themselves - they always use Intel chipsets. At least so far anyway :)

 

This is probably a bug in the EHCI kext though (I could be wrong, it could be that apple supports both!).

Does BT work w/o the pcmcia usb card?

EqUaTe

Hi EqUaTe,

 

I've just checked it and I can see that PCMCIA is working together with Bluetooth mouse.

But I can see 'kernel USBF: 255.743 AppleUSBUHCI: controller reset failed' and 'kernel USBF: 303.308 AppleUSBUHCI[0x4587000]::UIMCheckForTimeouts - Host controller halted, resetting' messages in the log continue to display...

Maybe its a warning/info message ...

 

p.s.

USB stick connected to PCMCIA adapter works with high speed.

Regards,

Mariusz.

Link to comment
Share on other sites

Hi Chun-Nan,

 

With test4 and my custom-compiled rev5, I have working PCMCIA!

Even better, my pcmcia wifi card works OOTB :D

 

 

I've attached my system.log for the current boot, with said files (both should be debug versions).

 

 

 

I was planning to attach a diff for o2micro.h, but it seems pcmcia-cs 3.2.8 doesn't have my device there either (yet it's working in Linux). I'm going to have to investigate that further.

 

Instead, I'm attaching my modified o2micro.h .

 

I've also attached ene.h - the ONLY reference in pcmcia-cs 3.2.8 to this header is in modules/i82365.c: #include "ene.h"

Hopefully this will help expand the usable devices! :)

 

 

Cheers,

EqUaTe

 

 

system.log.txt

o2micro.h.equate.txt

ene.h.txt

Link to comment
Share on other sites

 Share

×
×
  • Create New...