Plug and Play BIOS Specification

Plug and Play BIOS Specification 1.0A Page 24
Field Size
Size of the device node WORD
Device node number/handle BYTE
Device product identifier DWORD
Device type code 3 BYTES
Device node attribute bit-field WORD
Allocated resource configuration descriptor block VARIABLE
Possible resource configuration descriptor block VARIABLE
Compatible device identifiers VARIABLE
Size of Device Node:
This field contains the size, in bytes, of the device node.
Device node number:
The node number, or handle, is a unique identifier value assigned to the node by the system BIOS and is
used to access the node information through the BIOS interface.
Device product identifier:
This field is an EISA ID, which is a seven character ASCII representation of the product identifier
compressed into a 32-bit identifier. The seven character ID consists of a three character manufacturer
code, a three character hexadecimal product identifier, and a one character hexadecimal revision number.
For example, the third revision of the ABC device might have an uncompressed ID such as ABC1003.
The manufacturer code is a 3 uppercase character code that is compressed into 3 5-bit values as follows:
1. Find hex ASCII value for each letter
2. Subtract 40h from each ASCII value
3. Retain 5 least-significant bits for each letter by discarding upper 3-bits because they are always 0.
4. Compressed code = Concatenate 0 and the 3 5-bit values for the character.
The format of the compressed product identifier is as follows:
Byte Description
0 Bit 7: Reserved (0)
Bits 6-2: 1st character of the compressed manufacturer code
Bits 1-0: Upper 2 bits of the 2nd character of the compressed manufacturer code
1 Bits 7-5: Lower 3 bits of the 2nd character of the compressed manufacturer code.
Bits 4-0: 3rd character of the compressed manufacturer code.
(bit 4 is most significant)
2 Bits 7-4: 1st hexadecimal digit of the product number. (bit 7 is most significant)
Bits 3-0: 2nd hexadecimal digit of the product number. (bit 3 is most significant)
3 Bits 7-4: 3rd hexadecimal digit of the product number (bit 7 is most significant)
Bits 3-0: Hexadecimal digit for the revision number. (bit 3 is most significant)
Refer to the Device Identifier Reference Table & Device Type Code Table for a list of product identifiers.
This list includes generic Plug and Play device identifiers for the standard systemboard components. See
the References section of this document.
Device type code:
This field is used to specify the type or characteristics of the node in the configuration list. There are
many different kinds of controllers and devices and through the type field you can identify which kind of
component this node represents.
The Device Type code is broken down into three byte fields. The first byte in the Device Type Code
consists of a Base Type code which indicates the general device type. The second byte is the device Sub-
Type and its definition is dependent upon the Base Type code. The third byte defines the specific device
programming interface, IF. Type, based on the Base Class and Sub-Class.
Refer to the Device Identifier Reference Table & Device Type Code Table for a description of Device
Type Codes.
Device node attribute bit-field: