|
|
Structure used to retrieve detailed information about a Windows device.
Syntax
typedef struct _DEVICEINFO_DATA {
PDEVICEINFOA DeviceInfo;
TCHAR Class [50];
TCHAR Manufacturer [128];
DWORD Location;
DWORD Slot;
DWORD IRQ; //RTX only
DWORD Disposition; //RTX only
MSI_CAPABILITY MSICapable; //RTX only
BOOL KeepLineBasedAvailable; //RTX only
BOOL FilterOutIOPortResource; //RTX only
} DEVICEINFO_DATA, *PDEVICEINFO_DATA;
Members
DeviceInfo
Pointer to a DEVICEINFO data structure that contains general information about this device.
Class
Windows-defined class for this device.
Manufacturer
Device manufacturer.
Location
Device location in the machine, for example:
PCI Bus 5, device 1, function 0
Slot
The PCI slot this device resides in.
IRQ
The interrupt request resource for this device. RTX only.
Disposition
Indicates whether the device has an exclusive or shared IRQ resource. RTX only.
|
Value |
Description |
|
DEVICE_DISPOSITION_UNKNOWN |
Device is in an unknown state. |
|
DEVICE_DISPOSITION_EXCLUSIVE |
Device has an exclusive line-based interrupt. |
|
DEVICE_DISPOSITION_SHARED |
Device has a shared line-based interrupt. Note that shared interrupts can only be shared with other RTX devices. |
MSICapable
TRUE if the device is MSI-capable, FALSE if it is not. RTX devices only, version 8.1 and above.
KeepLineBasedAvailable
Indicates whether or not the device can use line-based resources. TRUE if the device can use line-based resources, FALSE if it cannot. RTX devices only, version 8.1 and above.
NOTE: By configuring both line-based and message-based interrupts for an MSI-capable device, you make it possible for some RTSS applications to communicate with the device via line-based interrupts while others use message-based interrupts. However, you cannot attach to a device using message-based and line-based interrupts at the same time. If multiple applications attach simultaneously to a single MSI-capable device, they must all use the same interrupt type.