Re: which PCI device instance ID fields never impact software?



FWIW, I'm currently planning to treat a change ONLY to either of VID or DID
as potentially requiring a software change, and that SID, SVID, and REV do
NOT require such.

From http://www.microsoft.com/whdc/system/bus/PCI/pciidspec.mspx:

"If the manufacturer makes a modification during the life of a PCI device
that causes any change in any exposed registers or software interfaces, or
makes a feature enhancement, the DID must be updated to a new, unique
value."

and it says REV changes are necessitated by:

"Any bug fix, feature, or performance update that does not change the
software interface."

I DO understand that drivers (or the INF-search process) may pay attention
to the subsystem (SID,SVID) fields. However, given the Windows PCI ID usage
spec mentioned above, I'm not sure why, in light of the sections of the spec
that I cited, essentially no other references to "software", and the fact
that subsystem changes all sound hardware centric (e.g., layout changes,
different resistor tolerances, component changes, etc.) and of no concern to
software.

And thanks for the feedback to date.

--Dan S.




"Maxim S. Shatskih" <maxim@xxxxxxxxxxxxxxxx> wrote in message
news:u7NewpkNGHA.984@xxxxxxxxxxxxxxxxxxxxxxx
My interpretation is that you can not ignore any of this values

Read the MSDN chapter about how the PCI PnP IDs are generated. There are
several of them - main and several "compatible", with main containing the
full
info, and "compatible" - the shortened info without the subsystem IDs.

The rest depends on INF file. If OHCI1394's INF contains the compatible ID
for
all OHCI1394 controllers, regardless of the vendor - then it will be
installed
for all of them, _except_ the ones which have more exact INF match with
subsystem IDs too.

This allows to provide the generic (and working) driver for a family of
devices, and still providing the vendor with the possibility of having a
per-unique-device-flavour driver (can support more features etc).



.



Relevant Pages


Loading