Updating PCI vendors database

Philip Paeps philip at freebsd.org
Mon Apr 4 16:01:16 UTC 2011


On 2011-04-04 08:51:03 (-0700), Garrett Cooper <yanegomi at gmail.com> wrote:
> On Mon, Apr 4, 2011 at 7:57 AM, Philip Paeps <philip at freebsd.org> wrote:
> > On 2011-04-04 17:39:22 (+0300), Andriy Gapon <avg at FreeBSD.org> wrote:
> >> on 04/04/2011 17:10 Philip Paeps said the following:
> >> > Would anyone object if I updated this list to source the same database
> >> > used by Linux distributions at
> >> > http://pciids.sourceforge.net/v2.2/pci.ids?
> >> >
> >> > It helps that our pciconf looks to be compatible with that format.  We
> >> > just ignore subvendor and subdevice, but it doesn't appear to matter
> >> > that the file contains this information.
> >> > [...]
> >>
> >> This is just for your information:
> >> http://thread.gmane.org/gmane.os.freebsd.current/127979/focus=128577
> >> Maybe you'll find something useful there.
> >
> > Thanks.  I've just read through that discussion.  It doesn't look like
> > there were any "serious" objections to pulling in the new list, other than
> > verifying that the new list contains all the entries the current list
> > contains.
> >
> > I am not entirely sure what the little side-discussion about using #
> > instead of ; as a comment marker is about.  It looks to me like the
> > pci.ids file "Just Works"[tm] with our pciconf(8).  Maybe Garrett can
> > elaborate on that?
> 
> Well, close. You can substitute the hashes with semicolons, but you
> need to get rid of subvendor / subdevice.

The presence of the subvendor/subdevice entries doesn't appear to affect the
correctness of the output on the machines I've tested it on.  Cursorily
reading through the pciconf(8) source code suggests it ignores that data (and
as it happens the presence of subvendors and subdevices).

I think the "most correct" thing to do would be to teach pciconf(8) about
subvendors and subdevices and pull in the new list as-is.  I'll take a look
at adding support for that later today.  It shouldn't be much work.

> Setting PCICONF_VENDOR_DATABASE to pci.ids worked, but all the items on my
> box are different in the new file (all device descriptions, but also some of
> the vendor descriptions dealing with my nVidia card, Realtek NIC, and LSI
> card) [it would be interesting to see who's correct in terms of corporation
> branding :)..]. So this definitely isn't MFC-able :).

It doesn't look like they're fundamentally different through.  The strings
changed, but still seem to be describing the same devices.

I'm happy to agree that this isn't MFC-able.

> > I think we should just go with the new list, but I'll hold off for a bit
> > to let others object. ;)
> 
> +1, just for the fact that our sources are becoming stale. I wonder though
> what other OSes like NetBSD/OpenBSD/[Open]Solaris/IlluminOS use however for
> tracking PCI IDs, as the sources for pci.ids aren't necessarily the vendor
> itself and in some cases are end-users. I thought some of our other sources
> were based on data provided by vendors.

A comment from jfv@ in the thread from a few months ago, suggests that at
least Intel contributes directly to the pci.ids list.  One measurement isn't
a valid statistic though.

 - Philip

-- 
Philip Paeps                                    Please don't Cc me, I am
philip at freebsd.org                               subscribed to the list.


More information about the freebsd-hackers mailing list