IRP_MN_QUERY_RESOURCES
The PnP manager uses this IRP to get a device's boot configuration resources.
Bus drivers must handle this request for their child devices that require hardware resources. Function and filter drivers do not handle this IRP.
Value
0x0A
Major Code
When Sent
The PnP manager sends this IRP when a device is enumerated.
The PnP manager sends this IRP at IRQL PASSIVE_LEVEL in an arbitrary thread context.
Input Parameters
None
Output Parameters
Returned in the I/O status block.
I/O Status Block
A bus driver that handles this IRP sets Irp->IoStatus.Status to STATUS_SUCCESS or to an appropriate error status.
On success, a bus driver sets Irp->IoStatus.Information to a pointer to a CM_RESOURCE_LIST that contains the requested information. On an error, the bus driver sets Irp->IoStatus.Information to zero.
Operation
If a bus driver returns a resource list in response to this IRP, it allocates a CM_RESOURCE_LIST from paged memory. The PnP manager frees the buffer when it is no longer needed.
If a device requires no hardware resources, the device's parent bus driver completes the IRP (IoCompleteRequest) without modifying Irp->IoStatus.Status or Irp->IoStatus.Information.
Function and filter drivers do not receive this IRP.
See Plug and Play for the general rules for handling Plug and Play minor IRPs.
Sending This IRP
Reserved for system use. Drivers must not send this IRP.
Drivers can call IoGetDeviceProperty to get the boot configuration for a device, in both raw and translated forms.
Requirements
Header |
Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h) |