Guidelines for DDS Structure
There is no single defined DDS format. Writers of device drivers and device methods must agree upon a particular device's DDS format. When obtaining information about a parent device, you might want to group that information together in the DDS.
When building a DDS for a device connected to an adapter card, you will typically need the following adapter information:
Item | Description |
---|---|
slot number | Obtained from the connwhere descriptor of the adapter's Customized Device (CuDv) object. |
bus resources | Obtained from attributes for the adapter in the Customized Attribute (CuAt) or Predefined Attribute (PdAt) object classes. These include attributes for bus interrupt levels, interrupt priorities, bus memory addresses, bus I/O addresses, and DMA arbitration levels. |
The following attribute must be obtained for the adapter's parent bus device:
Item | Description |
---|---|
bus_id | Identifies the I/O bus. This field is needed by the device driver to access the I/O bus. |
Note: The getattr device configuration subroutine
should be used whenever attributes are obtained from the Configuration
database. This subroutine returns the Customized attribute value if
the attribute is represented in the Customized Attribute object class.
Otherwise, it returns the default value from the Predefined Attribute
object class.
Finally, a DDS generally includes the device's logical name. This is used by the device driver to identify the device when logging an error for the device.