View Full Version : how do i get pci devices working in os x?
macuser9311
12-11-2008, 11:19 PM
hi,
to anyone who can answer my questions would be grateful ,
pci devices like ,,,creative audigy,,or a pci wireless card,or other devices which isnt supported on mac os surely there must be a way of somehow getting this hardware running from editing kexts? device id or vendor id etc ,can someone make a guide for this or show us how to do such things as so much hardware cannot be used and all can be done by a kext in system/Library/Extensions/ ...
if anyone can shed some light on this subject would be grateful
lanceomni
12-11-2008, 11:46 PM
Any particular hardware?
macuser9311
12-12-2008, 12:24 AM
atheros wireless pci card would be great to run on mac is there a way?
nfoav8or
12-12-2008, 02:42 AM
I think you need to head over to the apple developer site and read up on hardware. Apple created their OS's to work on THEIR hardware... not just any company. Sorry bud, but not every piece of hardware out there will get support through a kernel extension.
DevID's help out but thats not where the real trick lies... its in making the OS realize that if they handle certain bits certain ways along certain connections they can get certain results... thats a lot of certainty needed in an uncertain piece of hardware...
BTW, have you checked out the WIKI for hardware compatibility?
http://wiki.osx86project.org/ and scroll to HCL.
lanceomni
12-12-2008, 03:17 AM
The HCL is a wonderful tool
http://forum.insanelymac.com/index.php?showtopic=40317&start=0&p=472341&#entry472341
macuser9311
12-16-2008, 08:21 PM
@lanceomni
Moderator
thanks for the replys but i dont fully agree on what your saying ,,according to you getting a pci bus running on certain motherboards is impossible because apple didnt add it in there support? i fully understand apple uses there own boards etc and specific chipset but it is all controlled by software ! ,so many modifications hav been done over time ,,and what i am asking for is not the impossible its just not in my power to do so i dont even no what kext controls the communication between the pci bus and the os!,
this is the readout i got from lspci on the motherboard i,m trying to get the pci slots runnings
ubuntu@ubuntu:~$ lspci
00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3)
00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)
00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2)
00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3)
00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio Controller (rev a2)
00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev a2)
00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev a3)
00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev a3)
00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:07.0 Ethernet controller: Atheros Communications Inc. Atheros AR5001X+ Wireless Network Adapter (rev 01)
01:09.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller (rev 80)
01:0a.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 13)
05:00.0 VGA compatible controller: nVidia Corporation GeForce 8400 GS (rev a1)
ubuntu@ubuntu:~$
the wireless card works flawlessly in ubuntu etc ,,,
lanceomni
12-16-2008, 11:05 PM
Porting or writing a completely new driver is probably not necessary in your case. I did a little research and there are several posts out there which describe how to modify the wireless drivers to allow them to recognize your card.
When I start looking for a driver I begin with finding out:
1. Manufacturer Name
2. Model Number
3. Version
5. Vendor ID
6. Device ID
For you it likes like:
1. Atheros Communications Inc.
2. AR5001X+
I would download DPCI Manager here: http://casualsight.com/index.php?option=com_content&view=section&layout=blog&id=2&Itemid=10 This tool allows you to find the Vendor & Device IDs for your Atheros card
It will show you something like this:
http://img134.imageshack.us/img134/6164/dpciev5.png
For example the numbers on the left in the first column are the Vendor IDs and the numbers on the right in the first column are the Device ID. Find your wireless card's vendor & device IDs
The link I posted in my first response shows a method of editing the IO80211Family.kext from Tiger (as they reported problems modifying the one included in Leopard) Basically adding your card's vendor & device ids.
I would read the post inside and out along with backing up prior to making any changes.
Here is the post from above: http://forum.insanelymac.com/index.php?showtopic=40317&start=0&p=472341&#entry472341
(http://forum.insanelymac.com/index.php?showtopic=40317&start=0&p=472341&#entry472341)
I also found this post related to your card: http://forum.insanelymac.com/index.php?showtopic=117890
you may be able to find more posts by typing osx86 AR5001X or osx86 atheros.
macuser9311
12-18-2008, 01:44 AM
hi lanceoni:)
i,ve finally got it working using the tool you described and adding my device id in the string
i fixed my permissions and rebooted ,i have a fully working wireless card its used as a airport card:) thank you all for the replys and help :)
lanceomni
12-18-2008, 12:49 PM
Awesome :) With the method they described in the post using the kext from Tiger?
macuser9311
12-20-2008, 12:40 AM
yes using the method of editing the kext and repairing permissions i got my card running fully:)
shall i make a basic explanation of what i done to get the atheros wireless card running? ill be glad to do so
lanceomni
12-20-2008, 12:52 AM
No problem ;)
Also its real helpful when you get hardware up and running to go to http://wiki.osx86project.org/wiki/index.php/Main_Page and see if the component is listed. If not add it and explain your method of getting it up and running.
thedecline
12-20-2008, 09:13 AM
At the moment I am using a no name realtek 8139 PCI ethernet card and a no name firewire PCI card. In the past I've also used a sil3132 pcie raid controller. All work exactly as expected (cept the FW400 is fast enough on the slow PCI bus). There are loads of chaps out there using rocketraid pcie controllers also - the company has actually written the kexts to power the cards.
So the upshot - PCI/PCI-E buses in our hacks obviously do work (nothing gets reported in sys profiler) its a matter of getting the cards that are either supported by OSX by default (generic Firwire800/400/USB) or cards where the manufactorer has written the drivers.
Unfortunately something like a wireless card is not really going to work because no one would bother writing drivers cause apple already has airport. But I'm still pretty sure you can get wirless PCI card to work with a bit of muffing around.