Subscribe to our RSS news feed
AAPL 199.94 (-1.25)

> Forum Guidelines.

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.

 
Reply to this topic Start new topic
[How To] Tips for Finding Vendor and Device ID's
Group Icon
  • Group: Gurus
  • Posts: 5,302
  • Joined: 12-May 06
  • Member No.: 38,728
[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.
PM Profile Card
Go to the top of the page
+ Quote Post
*****
  • Group: Members
  • Posts: 300
  • Joined: 3-July 06
  • Member No.: 45,341
Nice guide Rammjet, thanks for the info!
PM Profile Card
Go to the top of the page
+ Quote Post
**
  • Group: Members
  • Posts: 58
  • Joined: 4-April 06
  • Member No.: 32,284
Very informative, thanks!
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 11
  • Joined: 25-August 05
  • Member No.: 7,768
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 wink.gif

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 wink.gif

This post has been edited by gely: Dec 26 2006, 11:57 AM
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 11
  • Joined: 25-August 05
  • Member No.: 7,768
for OSX (do not had testing yet) :

> hostinfo
> ioreg -bls
> system_profiler

---hope it works :]
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 41
  • Joined: 25-March 07
  • From: Torre del Mar (Spain)
  • Member No.: 95,640
Hello:


www.pcidatabase.com A huge list. Vendors and devices id are here.


Greetings...
PM Profile Card
Go to the top of the page
+ Quote Post
*******
  • Group: Members
  • Posts: 683
  • Joined: 19-August 05
  • From: Parangaricutirimicuaro
  • Member No.: 6,945
Some days ago, Macgirl pointed this useful app:

http://v4.kazzuya.com/dpcimanager

It seems to work fine for me.
PM Profile Card
Go to the top of the page
+ Quote Post
*****
  • Group: Members
  • Posts: 270
  • Joined: 30-December 05
  • Member No.: 18,836
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! smile.gif

Cheers
PM Profile Card
Go to the top of the page
+ Quote Post
Group Icon
  • Group: Moderators
  • Posts: 7,558
  • Joined: 5-July 05
  • From: Mexico City
  • Member No.: 123
I think is more easy if you use DPCI Manager:
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 44
  • Joined: 14-May 08
  • Member No.: 230,277
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 ?
PM Profile Card
Go to the top of the page
+ Quote Post
Group Icon
  • Group: Moderators
  • Posts: 7,558
  • Joined: 5-July 05
  • From: Mexico City
  • Member No.: 123
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
...
PM Profile Card
Go to the top of the page
+ Quote Post
*******
  • Group: Banned
  • Posts: 849
  • Joined: 3-August 06
  • Member No.: 49,043
QUOTE (Proteo @ Jan 2 2008, 07:12 PM) *
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.
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 44
  • Joined: 14-May 08
  • Member No.: 230,277
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
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 11
  • Joined: 24-June 08
  • From: Mexico
  • Member No.: 248,952
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
PM Profile Card
Go to the top of the page
+ Quote Post
Group Icon
  • Group: Moderators
  • Posts: 7,558
  • Joined: 5-July 05
  • From: Mexico City
  • Member No.: 123
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.
Attached File  Picture_1.png ( 72.29K ) Number of downloads: 150
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 11
  • Joined: 24-June 08
  • From: Mexico
  • Member No.: 248,952
@macgirl

Thanks, I thought DPCI Manager reported working drivers smile.gif .Anyway, I finally managed to make my Intel PRO/100 VE NIC work. It runs smoothly, so far. I'll be checking out future developments for the 3945ABG drivers, hope to have it working soon

Cheers
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 8
  • Joined: 30-May 08
  • Member No.: 237,530
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)
PM Profile Card
Go to the top of the page
+ Quote Post
*
  • Group: Members
  • Posts: 1
  • Joined: 27-January 09
  • Member No.: 364,908
I'm a newbie to OSX86
It's really helpful to me!!!
Thanks for share!!!
PM Profile Card
Go to the top of the page
+ Quote Post
Reply to this topic Start new topic

1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

RSS Lo-Fi Version Time is now: 21st November 2009 - 03:23 AM