[How To] Tips for Finding Vendor and Device ID's |
Welcome to the Genius Bar. Here's how this forum works:
1. Members are encouraged to make a guide that details something that they might have found troubling or challenging.
Chances are, if you've seen the same question asked over and over again, you should write a guide for it.
2. This is not the forum for asking questions. If you have a question about a thread that's already here, feel free to ask it.
Just don't start a thread for a specific question. Use the other forums here for that.
3. Posting links to off-site tutorials is not allowed.
4. That's it! Thanks for sharing your information with the rest of us. :)
To keep this forum clean this forum is moderated. You can post in existing topics but new ones will have to be approved before they show up.
![]() |
[How To] Tips for Finding Vendor and Device ID's |
|
Rammjet
InsanelyMac V.I.P
|
![]() |
Dec 25 2006, 12:30 PM Post #1
|
|
[How To] Tips for Finding Vendor and Device ID's
The following explains what vendor and device id's are and how to find and use them in your installation. Why Vendor and Device ID's Every device that makes up a computer needs to have a unique identifier. The operating system uses this identifier to bind a driver to that device. The unique identifier is made up of an industry-assigned code for the vendor (manufacturer) of the device and a serial number for that device which is assigned by the vendor. Each of these two values is made up of 4 hexadecimal (hex) characters. For instance, the vendor id of Intel is 0x8086, where the leading "0x" identifies this as a hex value. The actual vendor id is the 4 characters "8086". OSX keeps a list of all vendor id's and device id's that are contained in the kexts installed in the system. When the computer is booted, OSX quizzes the ROM on each device to get its vendor and device id's. Then it uses its list to see if a match exists, and if it does, it binds the kext (driver) to that device. How to Find Vendor and Device ID's System Profiler is found in the Utilities folder of OSX. You can also access it through "About This Mac" by clicking the "More Info..." button. Click on the device type (PCI, USB) in the left pane and find the device in the right pane. You should see a vendor id and a device id. You may have to click on the device in the right pane and read the values at bottom right. If you cannot find the values there, then you should try reading them in Windows. Windows - Go to Windows and open Device Manager. Find your device and get Properties for that device. Click the Details tab and read the vendor id and device id. The vendor id is the 4 characters after the letters "VEN_" and the device id is the 4 characters after the letters "DEV_". If you do not find a Details tab in Device Manager, then read this. If you do not have Windows on your computer, you can also use Linux. Linux - use the "lspci" command. In Linux, read the "man" page for the command by typing: man lspci Google - if all else fails, try Google. If you have a motherboard XYZ and want to find the vendor and device of the ethernet device, try a search like this: XYZ ethernet vendor device. If you have a computer like a Dell ABC and want the wireless device, try a Google search like this: Dell ABC wireless vendor device. Read several of the returned articles until you get 2 or 3 that agree on the correct values. What the Vendor and Device ID's Mean Once you have the vendor and device id's, you might want to verify that they are valid. To do that, you can use the Linux PCI ID Repository found here. First, find your vendor id and read the entry for it to see if it sounds like it could be the vendor for your device. Then click on the vendor id in the left column and find your device id. Read the entry for that to see if it sounds like your device. How Vendor and Device ID's Are Used in Kexts The vendor and device ids are used in the kext (driver) to tell OSX to bind that particular kext to the device with the vendor/device id's. The id's are placed into the Info.plist file inside the kext. To see the Info.plist, right-click on the kext and select "Show Package Contents". Open the Contents folder and find the Info.plist. Drag and drop the Info.plist onto TextEdit (in Applications folder) to view the contents of the file. The entry for the vendor and device ids can take different forms. There is no hard and fast rule, just observe what that particular kext uses and follow along. Here are some examples: CODE <key>IONameMatch</key> <key>IOPCIPrimaryMatch</key> <key>IOPCIMatch</key> <string>pci8086,27d8</string> <string>0x27d88086</string> <string>0x808627d8</string> In this example, the vendor id is "8086" and the device id is "27d8". Chances are when you look at the Info.plist, your vendor id will match one that is already there. Use that as your clue as to the arrangement of the vendor and device id's. Otherwise, use the Linux PCI ID Repository explained above to help determine which is a vendor id and which is a device id. Then place your values in the same pattern. |
|
np101137
Anonymac OS X
|
![]() |
Dec 25 2006, 01:47 PM Post #2
|
![]() ![]() ![]() ![]()
|
Nice guide Rammjet, thanks for the info!
|
|
looper
InsanelyMac Protégé
|
![]() |
Dec 25 2006, 11:37 PM Post #3
|
![]()
|
Very informative, thanks!
|
|
gely
InsanelyMac Protégé
|
![]() |
Dec 26 2006, 10:51 AM Post #4
|
|
nice but only work for already "reconized" hardware.
You need (from windows) a tool like "udevices" to view all hardware (known and unknown). I do not know if a same tool exist in osx ? thanks for the tips edited : for mac (date of 1998) there is http://www.eskimo.com/~pristine/diag.html#pciprober do not found any osx equivalent. keep searching. from apple : QUOTE PCI DDK 1.1.1 Mac OS X (DMG) 10.0 MB 2002-05-01 This DDK (Driver Development Kit) will enable you to create Mac OS X Kext (kernel) drivers for PCI cards. Documentation, Samples, and Tools to get you started are included. To create OpenFirmware FCode drivers, please use the existing Tokenizer on the PCI DDK for Mac OS 9. not tested : ftp://ftp.apple.com/developer/Development....1_Mac_OS_X.dmg for windows : udevices : unknown devices : http://www.halfdone.com/ and craig PCI database : http://members.datafast.net.au/~dft0802/ hope this will help This post has been edited by gely: Dec 26 2006, 11:57 AM |
|
|
gely
InsanelyMac Protégé
|
![]() |
Dec 28 2006, 02:30 AM Post #5
|
|
for OSX (do not had testing yet) :
> hostinfo > ioreg -bls > system_profiler ---hope it works :] |
|
alfredo456
InsanelyMac Protégé
|
![]() |
Jan 2 2008, 11:07 PM Post #6
|
![]()
|
Hello:
www.pcidatabase.com A huge list. Vendors and devices id are here. Greetings... |
|
Proteo
InsanelyMac Legend
|
![]() |
Jan 2 2008, 11:12 PM Post #7
|
![]() ![]() ![]() ![]() ![]() ![]()
|
Some days ago, Macgirl pointed this useful app:
http://v4.kazzuya.com/dpcimanager It seems to work fine for me. |
|
joblo10
InsanelyMac Sage
|
![]() |
Feb 25 2008, 09:35 PM Post #8
|
![]() ![]() ![]() ![]()
|
You can also get the pciutils package I built for Darwin OSX from http://x86dev.org. This is the same application that is include in the ToH DVD.
PCIUtils is the library which contains lspci, setpci and update-pciids. Please come to this site for the latest version and to report any bugs/suggestions! Cheers |
|
macgirl
Stargate's Pharaoh
|
![]() |
Feb 26 2008, 02:12 AM Post #9
|
![]()
|
I think is more easy if you use DPCI Manager:
|
|
theumang
InsanelyMac Protégé
|
![]() |
Jun 18 2008, 10:50 PM Post #10
|
|
Hi MacGirl!
Does the DPCI Manager help in locate both the Device ID and the Vendor ID ? If so, which one is what ? For example in the screenshot, the last line is 8086:283e Intel Corporation 82801h(ICH8 Family) SMBus Controller.. is 8086 the vendor id / the device id ? |
|
macgirl
Stargate's Pharaoh
|
![]() |
Jun 18 2008, 11:44 PM Post #11
|
![]()
|
Yes, in the picture all of the left values are the Vendor ID.
Exactly, 8086 is the Vendor ID of Intel (like one of their first processors). 10de = Nvidia 14e4 = Broadcom ... |
|
BuildSmart
InsanelyMac Legend
|
![]() |
Jun 19 2008, 01:36 PM Post #12
|
![]() ![]() ![]() ![]() ![]() ![]()
|
Some days ago, Macgirl pointed this useful app: http://v4.kazzuya.com/dpcimanager It seems to work fine for me. Locating the author seems to be difficult. |
|
theumang
InsanelyMac Protégé
|
![]() |
Jun 19 2008, 03:15 PM Post #13
|
|
Thanks for the Quick reply & the Info!
am trying to get the Azalia thingy work for the ADI 1988b on the Asus m2n sli Deluxe MoBo |
|
iSaint
InsanelyMac Protégé
|
![]() |
Jun 26 2008, 09:25 PM Post #14
|
|
This goes to MacGirl,
In the screencap of DPCI Manager it shows the Intel PRO/Wireless 3945ABG (8086:4222) as recognized, is that true? if so, how did you do it? I'm having problems configuring my Pavillion dv6256us, I'm using Kalyway 10.5.2 Mac OS X DVD but it won't recognize the Intel/PRO Wireless and the Intel/PRO VE Network card |
|
macgirl
Stargate's Pharaoh
|
![]() |
Jun 27 2008, 06:18 AM Post #15
|
![]()
|
One thing is DPCI reporting devices and another that they have working drivers.
My card reader is reported on DPCI but there is no kext or driver that recognizes it. 3945 and 6945 Intel WiFi cards has no working driversm there is a development effort, see the Hardware Forum. Here is DPCI on my AMD Rig, notice my Audigy Audio card, my TV Card (booktree) and my WiFi Ralink RT61 card, none of them have working drivers.
Picture_1.png ( 72.29K )
Number of downloads: 150 |
|
iSaint
InsanelyMac Protégé
|
![]() |
Jul 1 2008, 01:46 AM Post #16
|
|
@macgirl
Thanks, I thought DPCI Manager reported working drivers Cheers |
|
jw8725
InsanelyMac Protégé
|
![]() |
Aug 20 2008, 07:29 PM Post #17
|
|
hi can someone help me out. I'm doing it the Windows way in Device manager. Only that I have a billion other options in the details tab.
Which specific header do I look under? I cannot find one called Vendor ID (pardon me I'm a noob) |
|
Ma Wah Lun
InsanelyMac Protégé
|
![]() |
Jan 27 2009, 04:42 AM Post #18
|
|
I'm a newbie to OSX86
It's really helpful to me!!! Thanks for share!!! |
![]() |
|
Lo-Fi Version | Time is now: 21st November 2009 - 03:23 AM |