HDK Technical Reference

Subsystem and Vendor ID (PCI)

The subsystem and vendor ID information is provided as part of the PCI configuration information for PCI 2.1 boards; it is not available for PCI 2.0 boards. Implementation of Subsystem and Vendor ID is optional; an all-zero value indicates that the device does not support subystem identification.

Values for the Subsystem and Vendor ID are vendor-specific. By convention, Board ID identifies a generic chipset and the Subsystem and Vendor ID identifies the particular board's implementation. This convention is enforced by some operating system vendors and SCO strongly recommends adherence to this convention. as opposed to the chip set used for the device.

DDI implementation

For DDI drivers on SVR5, these values are obtained from the resource manager database.

From the driver code
Use the cm_getval(D3) function to query the CM_SBRDID parameter that is documented on the cm_params(D5) manual page. This value is in the form:
where V and D are hex digits, 0 - 9 or A - F. VVVV is the subsystem vendor ID and DDDD is the subsystem device ID. This parameter must be eight digits; when necessary, leading zeroes are used.

From the command line

The following command gives the SBRDID information:
   resmgr -k keynumber -p SBRDID
The BRDID parameter that identifies the actual chip set is displayed using the resmgr command with no arguments, but the SBRID parameter is displayed. only if it is explicitly specified on the command line with the -p option.

The ndcfg command can be used to display the incore resource manager database for all devices, not just networking devices. To display the Subsystem and Vendor ID information, use the following command:
   echo resdump   |   ndcfg -qh   |   grep SBRDID
See the manual page for more information.

The /usr/lib/X11/testtools/z35SysInfo -n command creates an HTML file that contains system configuration information, including the contents of the resource manager database, in a formatted table. Run the command, then open the .html file in the /tmp directory and look for the resmgr section.

This command is used by SCO when testing new operating systems; if you do not use the -n option, your configuration information is mailed to SCO for our database of configurations.

Note that the SBRDID information cannot be accessed using the dcu command.

From a user-level application
The user-level API to query the resource manager is not currently supported for use in customer applications because of the volatility of the interface. Use the popen to access this information.

ODDI implementation

From the driver code
See the pci(D5) manual page.

From the command line
Use the hw(ADM) command to read this information from the PCI configuration space:
   hw -vmr pci
The ``SubSysVendorID'' and ``SubSystemID'' fields contain the relevant information.

From a user-level application
Use the ioctls that are documented on the pci(HW) manual page.

© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005