Jump to content

Cardbus/PCMCIA Controller ID 104C:8039 Texas Instruments PCIxx12


solu
 Share

421 posts in this topic

Recommended Posts

This kext works also on the latest Semthex 8.8.1 kernel if you install Glitchman's kexts from http://forum.insanelymac.com/index.php?showtopic=36437 first and then my modified kext from this thread.

 

Afterwards, your Cardbus slot should be working: It should show the PCMCIA symbol in the menu bar and should show the name of your card (if inserted). Note however, that in order to make your WLAN work on recent systems, you might need the WLAN driver from 10.4.6 (there is another thread on that), and that you might need to edit NetworkInterfaces.plist (there is also another thread on that).

Link to comment
Share on other sites

Hey all,

 

I have my card being recognized, but it doesn't work. I have a Novetel 620 PCMCIA card in the slot and it shows the icon and identifies my card correctly, but when I install the Novetel drivers, it won't access the card. When my system boots I get USB Serial error messages. Now my USB slots work good. I don't have any other PCMCIA Cards to test. Anyone have this card working? If someone can give me some tips it would be greatly apprieciated I need to get this card working in OS X.

Link to comment
Share on other sites

Hi

From where I can download this file? When I try to download from this I have and error in zip file!

Thanks

 

Dave

 

!! S U C C E S S !! :D

 

noname:~ root# dmesg | grep PC

IOPCCard info: Intel PCIC probe: TI xx12 rev 00

 

so here's how I did it:

 

- since Knoppix does not boot correctly on my Laptop as it does not contain the most recent Linux kernel with full ACPI support I downloaded the latest Debian KANOTIX distribution (which contains the most recent Linux kernel)

- ran lspci -v in terminal, and look-a-there: as pretty much expected with ACPI properly loaded the values displayed are not the same as without ACPI (the second memory window range was different):

 

0a:04.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller

Subsystem: Toshiba America Info Systems Unknown device ff31

Flags: bus master, medium devsel, latency 168, IRQ 177

Memory at b3200000 (32-bit, non-prefetchable)

Bus: primary=0a, secondary=0b, subordinate=0e, sec-latency=176

Memory window 0: 50000000-51fff000 (prefetchable)

Memory window 1: 54000000-55fff000

I/O window 0: 00004000-000040ff

I/O window 1: 00004400-000044ff

16-bit legacy interface ports at 0001

 

Went back into Mac OS, edited the plist which I had copied to my desktop with Apple's Property List Editor 2.1, copied the edited Info.plist from my desktop back into the IOPCCardFamily.kext in the Extensions folder, ran my lil permissions script app, rebooted - and got a little bit different error now:

 

IOPCCard notice: AdjustResourceInfo: Unknown error code 0xffffffff

 

.. so something is happening .. ;). Searched for that error in the board of this great community and found this solution from Jeva Hose and did as he said: Replaced the IOPCIFamily.kext, ran my permissions app, rebooted - BINGO !!

 

So attached you find both, the IOPCIFamily.kext 1.8 from Mac OS 10.4.4 and the IOPCCardFamily.kext which works for the Toshiba Satellite P100-102.

 

THANKS probono for getting all of this rolling :) !!

 

With the new/old IOPCIFamily.kext I will next try to get my soundcard and my LAN card going .. :)

 

Cheers,

Bugs.

 

[EDIT] The modified kext might also work for other (Toshiba) Laptops, so just give it a try - and please report back for which Laptop it works and for which it does not work :)

Link to comment
Share on other sites

I have a Novetel 620 PCMCIA card in the slot and it shows the icon and identifies my card correctly, but when I install the Novetel drivers, it won't access the card.

 

So your PCMCIA slot definitely works :-)

 

Might well be that your Novatel driver

a) is not unibin

:) does not support PCMCIA ports

since there are no Intel Macs with PCMCIA...

 

That being said, there is a 3rd party software that should be able to drive many Novatel cards called launch2net http://www.novamedia.de/index_e.html

 

According to the site it doesn't list the "Novatel 620" but the "Novatel Merlin U630", maybe it's worth a try.

 

(Please open a new thread for Novatel cards since in this thread we are concerned with the PCMCIA slot itself)

Link to comment
Share on other sites

My experience: laptop hp pavillion dv5251 cb texas xx12:

 

-in linux i get:

08:06.0 CardBus bridge: Texas Instruments Unknown device 8039

Subsystem: Hewlett-Packard Company Unknown device 30a5

Flags: bus master, medium devsel, latency 168, IRQ 185

Memory at d2004000 (32-bit, non-prefetchable)

Bus: primary=08, secondary=09, subordinate=0c, sec-latency=176

Memory window 0: 88000000-89fff000 (prefetchable)

Memory window 1: 8c000000-8dfff000

I/O window 0: 00002400-000024ff

I/O window 1: 00002800-000028ff

16-bit legacy interface ports at 0001

 

-so:

I modifyed the plist folliwing the probono's instructions: I also removed the two surplus string for window memory (I have propertly plist editor)

 

-after:

I controll with a hex edit that in file iopccardfamily there is the string TI xx12.......(right????) i see it in two parts of the file with hexedit....

 

-then:

what can i do to modify my id device?(8039)???(where????)

 

-I continued to drag the kext in extensions

 

-Reboot

 

-give the command in the terminal: but the pccardbus failed to start!!!

 

help me plese

 

 

 

 

this is my modifyed kext IOPCCardFamily.kext.rar

Edited by ugriecu
Link to comment
Share on other sites

My driver from this thread uses

Memory window 0: 40000000-41fff000 (prefetchable)

Memory window 1: 42000000-43fff000

I/O window 0: 00005000-000050ff

I/O window 1: 00005400-000054ff

 

You have to adjust the values in Info.plist using Apple's Property List Editor to the values that Linux gives you. Your Linux MUST be running ACPI or it won't work. (Use a Kanotix Live CD for example.)

 

If you started with my driver from this thread, then you don't need to care about "xx12" and "8039" since I have already taken care of these :-)

Link to comment
Share on other sites

My driver from this thread uses

Memory window 0: 40000000-41fff000 (prefetchable)

Memory window 1: 42000000-43fff000

I/O window 0: 00005000-000050ff

I/O window 1: 00005400-000054ff

 

You have to adjust the values in Info.plist using Apple's Property List Editor to the values that Linux gives you. Your Linux MUST be running ACPI or it won't work. (Use a Kanotix Live CD for example.)

 

If you started with my driver from this thread, then you don't need to care about "xx12" and "8039" since I have already taken care of these :-)

 

ok...in this case I finished in the third point...right? when i changed the values in memory and i-o memory...I use kubuntu and it's the most compatible distro.....can you check my kext please?

maybe i can load manualy iopccardfamily.kext???!!!!!????

Edited by ugriecu
Link to comment
Share on other sites

I tried to follow the steps you suggested, but my PCMCIA card is a D-Link DFE-690TXD.

 

When I plug the PCMCIA card into the slot, and run "sudo dmesg | grep PC", the following information comes to me:

 

IOPCCard info: cs: cb_alloc(bus 3): vendor 0x1186, device 0x1340

IOPCCard info: cs: cb_alloc(bus 3): found 1 functions

IOPCCard info: cs: cb_config(bus 3)

IOPCCard info: fn 0 bar 1: io 0x3400-0x34ff

IOPCCard info: fn 0 bar 2: mem 0x30001000-0x300011ff

IOPCCard info: irq 11

 

I tried to check the System Profiler, but there was nothing there regarding my PCMCIA, although I received the information above and my card has a green light on. Also, there is an icon for my card in the menu bar, next to the clock.

 

I also opened the Network Utility and tried to see if I was able to get an IP address from my network, but I was unlucky.

 

When I ask the icon in the menu bar to shut down the card, the green light goes off and the result of the "sudo dmesg | grep PC" execution is:

 

IOPCCard info: cs: cb_alloc(bus 3): vendor 0x1186, device 0x1340

IOPCCard info: cs: cb_alloc(bus 3): found 1 functions

IOPCCard info: cs: cb_config(bus 3)

IOPCCard info: fn 0 bar 1: io 0x3400-0x34ff

IOPCCard info: fn 0 bar 2: mem 0x30001000-0x300011ff

IOPCCard info: irq 11

IOPCCard info: cs: cb_free(bus 3)

IOPCCard: shutting down socket 0.

IOPCCard: calling terminate on socket 0 function 0 nub 0x20a1900.

 

What does all of this mean?

Is it possible to make any change in the system in order to make my card to work? If so, how?

 

Thanks in advance.

 

Aldo

Link to comment
Share on other sites

I've got a Toshiba Equium A60-155, running JaS 10.4.7 been trying to get this driver working but not having much luck.

 

This is more for my own reference while i'm on a live cd. The values I get from windows device manager is completely different so i'm going to go with these ones.

 

This is from a Dyne live cd, knoppix 5 reports the same apart from a different IRQ number.

 

02:06.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 02)
       Subsystem: Toshiba America Info Systems: Unknown device ff10
       Flags: bus master, medium devsel, latency 168, IRQ 177
       Memory at d0001000 (32-bit, non-prefetchable) [size=4K]
       Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
       Memory window 0: 90000000-91fff000 (prefetchable)
       Memory window 1: d2000000-d3fff000
       I/O window 0: 0000a400-0000a4ff
       I/O window 1: 0000a800-0000a8ff
       16-bit legacy interface ports at 0001

 

Windows reports:

 

PCI/VEN_104C&DEV_AC50&SUBSYS_FF101179&REV_02\4&253A0906&0&304A
Memory Range FEBFF000 - FEBFFFFF
Memory Range FEBFE000 - FEBFEFFF
Memory Range FABFE000 - FEBFDFFF
I/O Range FE00 - FEFF
I/Q Range FD00 - FDFF
Memory Range 000DF000 - 000DFFFF

 

Ok well I'm not sure whats going wrong tbh, I'm more than positive that I have the memory range and ios correct as both knoppix and dyne are reporting the same. I've been trying many device IDs in the driver but none seem to work. Some of the IDS I've used kextload has said its sucessful but then I get no output at all from dmesg about it, or it says invalid subsys at 0x2 or something like that.

 

Ok using DEVID 50AC in the driver file has now given me "IOPCCardBridge::start failed" from dmesg after I load it into kext. Slowly but surely getting there. Just rebooted n got the same message during boot, I've not had that before on boot.

 

Will post the kext for anyone else with a Toshiba Equium A60-155 (will probably also work for the Toshiba Satalite A60-155 to) once I've got it all working.

 

=Edit 4/01/07 2:37am=

I just regrabbed the original drivers from the first post and re-editing everything, now i'm getting this on boot: "IOPCCard Notice: AdjustResourceInfo: Bad Size" and then the start failed error. I ran lspci -n on knoppix to make sure I had the right device id (ac50), which is right. So I'm not exactly sure atm whats wrong. Tried replacing IOPCIFamily.kext but no luck either. Following the instructions for replacing the IOPCIFamily kext actually took out my audio and battery, it caused alot of things to stop working. I kept the kext but undid the i386 rubbish to re-enable everything. Would really appreciate any help towards fixing this. Kext attached.

 

Badger

IOPCCardFamily.kext.zip

Edited by Bored Badger
Link to comment
Share on other sites

Help me please! My laptop is HP DV8323EA, my Hackintosh system is recognized as ADP2,1 When I do Dmesg | grep PC nothing is showed loaded.

Now I put here the LSPCI -V of latest Kanotix debian Live cd with ACPI ON:

 

08:06.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller

Subsystem: Hewlett-Packard Company Unknown device 30a5

Flags: bus master, medium devsel, latency 168, IRQ 185

Memory at d2004000 (32-bit, non-prefetchable)

Bus: primary=08, secondary=09, subordinate=0c, sec-latency=176

Memory window 0: 50000000-51fff000 (prefetchable)

Memory window 1: 54000000-55fff000

I/O window 0: 00003400-000034ff

I/O window 1: 00003800-000038ff

16-bit legacy interface ports at 0001

 

I've followed everything as described in the first part of this topic but I don't succeed in loading the kernel module so I've no PCMCIA function.

Here it is also the extract from Everest program under Windows:

 

[ Schede PCMCIA / Texas Instruments PCIxx12 Cardbus Controller ]

 

Proprietà periferica:

Descrizione driver Texas Instruments PCIxx12 Cardbus Controller

Data del driver 01/07/2001

Versione driver 5.1.2600.0

Fornitore del driver Microsoft

File INF pcmcia.inf

ID hardware PCI\VEN_104C&DEV_8039&SUBSYS_30A5103C&REV_00

Informazioni sulla posizione Bus PCI 8, periferica 6, funzione 0

Periferica PCI Texas Instruments PCIxx12 CardBus Controller

 

And here it is also the report from:

 

SiSoftware Sandra

 

Informazioni Periferica

Tipo Periferica : Da PCI a CardBus Bridge

ID Periferica : bus 8, periferica 6, funzione 0

Nome Periferica (OEM) : Texas Instruments (TI) PCIxx12 Cardbus Controller

ID Hardware (OEM) : FUN_0, VEN_104C, DEV_8039, REV_00

Nome Periferica : Texas Instruments (TI) PCIxx12 Cardbus Controller

ID Prodotto : VEN_FE00, DEV_0000

Revisione : A / 1 (0)

 

Comparing probono original file and good file for Him I've noticed that the differences of two bytes for Device ID are in these hexadecimal position:

 

00059790h: 30 89

00062c34h: 30 89

 

What I've to do? 30 89 or as Linux Kanotix says: a5 30 ?

And then what I've to put as name of TI bridge? I've noticed two locations in the driver in hexadecimal:

 

00019790h:

000554e0h:

 

Can I leave "TI xx12" or as stated from Kanotix Linux "Texas Instruments "PCIxx12" Cardbus Controller"

 

Finally help me please with Info.plist I used the plist editor but seems that If I change values in the upper side the first time is good but after when I leave the sector

where I'm writing it changes again maybe it's transforming the values for lower side who knows?

 

If u can probono could you please attach me the correct files? So I can try? thank u for the hard work and to help me.

 

P.S.

Sorry for my poor english but I'm Italian. Cheers :=)

Link to comment
Share on other sites

Help me please! My laptop is HP DV8323EA, my Hackintosh system is recognized as ADP2,1 When I do Dmesg | grep PC nothing is showed loaded.

Now I put here the LSPCI -V of latest Kanotix debian Live cd with ACPI ON:.....

 

Hi Genius, make sure your using probono's original kext as his device id is the same as yours. You are right about the positions in hex for where your device id must go but it should be 3980 not 3089. Windows has your device id correct but if you want to check, load up your Kanotix cd and run lspci -n in terminal. This will spit out the device id for all your devices in columns, just look out for the 8039 next to "08:06.0". As for changing the name for your TI Bridge in hex, you should be fine as xx12 is allready setup in the driver.

 

For the plist file make sure your using Apple's Property List Editor attached to Bug's post on the second page. For some reason the ranges you use need to be saved in a base64 varient, which apple's Property List Editor will do for you when you enter plain text.

 

Attached is a kext editing according to your info. Hope it works. If you get a start failed error you also need to replace your IOPCIFamily kext.

 

Badger

IOPCCardFamily.kext.dmg

Edited by Bored Badger
Link to comment
Share on other sites

Bored Badger thank you a lot for your help but nothing :) If I don't put IOPCIFamily.kext with dmesg I've this: IOPCCardBridge::start failed

If I use also IOPCIFamily.kext 1.8 from 10.4.4 I've a beautiful Gray screen with an apple in the center for all my life.

I think a KERNEL PANIC!

 

Help me again if u can.

 

P.S.

 

Thank you in advance..

Link to comment
Share on other sites

dmesg I've this: IOPCCardBridge::start failed

 

First off that seems like a good sign, thats as far as I have gotten with my own laptop. This seems to mean that its recognising the hardware.

 

If I use also IOPCIFamily.kext 1.8 from 10.4.4 I've a beautiful Gray screen with an apple in the center for all my life.

I think a KERNEL PANIC!

 

To recover from the panic your going to need to undo what you did. First use verbose mode when booting to see what the error is. When you get the darwin loader press F8 so you can enter boot options and use -v, it will give you detailed output of whats going on during boot. This should help you find out the problem, once you know it will hopefully be easier to fix using the next steps.

 

Single User Mode is a very handy boot option, it should give you command line access so you'll be able to correct the problem. Just as you get the darwin loader press F8 and use the boot command -s this will go into single user mode, at least thats the idea. To mount your Hard drive for write access you'll need to run the following commands. I will be honest this is going on alot of guess work as I've never had a kernal panic in that situation.

 

fsck -y
- Check the boot volume's file system, and repair if necessary (the "-y" means "Yes, go ahead and fix any problems you find"). Always do this first. Note that this may not be able to fix all problems in a single pass, so if it finds and fixes anything (it'll print "***** FILE SYSTEM WAS MODIFIED *****"), run it again, and keep running it until it comes back with something like "The volume Macintosh HD appears to be ok."

Note: If the volume has journalling enabled, you should get a message like

 

fsck_hfs: Volume is journaled. No checking performed.

fsck_hfs: Use the -f option to force checking.

In this case it should be reasonably safe to go ahead and mount the volume, since the journal should have taken care of any necessary repairs. But I'm paranoid, so I tend to recommend using fsck -yf to force a full check.

 

mount -uw /
- Remount the boot volume, enabling write access. You need to do this before you can change anything on disk, but always run fsck first.

Note: if this command works, it won't give you any output (other than another shell prompt). If it prints something like:

root_device on / (local, read-only)

devfs on /dev (local)

then you probably mistyped the command.

 

(taken from

 

From here I'm not 100% sure what you can do, if depends on what you did when you replaced the iopci kext. Perhaps re-cache your kexts, or if that fails, if you have your original iopcifamily kext replace it.

Edited by Bored Badger
Link to comment
Share on other sites

I need some help......My problem is in the hex editor....I don't understand nothing.....

I changed the values of the memories without problems with property plist editor.....

Memory window 0: 88000000-89fff000 (prefetchable)

Memory window 1: 8c000000-8dfff000

I/O window 0: 00002400-000024ff

I/O window 1: 00002800-000028ff

CardBus bridge: Texas Instruments: Unknown device 8039

ti xx12 and 8039???? what?????

Edited by ugriecu
Link to comment
Share on other sites

No problem, I make always a partition backup before testing with kext so I made a recovery in 5 mins. But no PCMCIA :unsure:

 

P.S:

Thanks If u have other Idea I'm HERE

 

 

What version of OS X are you using? I dont think anyone has gotten it working on 10.4.8 yet. To be honest I'm in the same boat, I'm getting the start failed error and dont seem to be able to get round that.

 

ugriecu if your using the original kext that probono uploaded you wont need to hex edit anything as everything has already been done as his cardbus is the same as yours.

Edited by Bored Badger
Link to comment
Share on other sites

same here tried the ioppccard kext from this thread...nothing

used the other kexts from glitchman too, but then OSX is not loading anymore after trying to start the pcmcia... :)

reinstalled the whole thing 6 times yesterday... it's PCI-kext making the system crash...

 

using JAS 10.4.8 kernel 8.8.1 Semthex

Edited by sheriffbounce
Link to comment
Share on other sites

same here tried the ioppccard kext from this thread...nothing

used the other kexts from glitchman too, but then OSX is not loading anymore after trying to start the pcmcia... :rolleyes:

reinstalled the whole thing 6 times yesterday... it's PCI-kext making the system crash...

 

using JAS 10.4.8 kernel 8.8.1 Semthex

 

 

You need to follow the instructions and posts by Bugs earlier on in this topic a few pages back, 10.4.8 does not use the iopcifamily kext. It now uses a different kext for that.

 

Badger

 

To be honest I am pretty much calling off my attempts to get my cardbus working for the time being. I only wanted it for the wireless card I bought for this purpose, I just went out and bought a usb one instead which works (as I am posting from my hac right now).

Edited by Bored Badger
Link to comment
Share on other sites

 Share

×
×
  • Create New...