28 #include "../pnppriv.hpp" 34 #if defined(EVENT_TRACING) 37 #include "FxPkgFdoKm.tmh" 70 WDFIORESREQLIST reqlist;
73 "Entering FilterResourceRequirements handler");
98 if (pNewWdmList !=
NULL) {
102 if (pWdmRequirementsList !=
NULL) {
162 Irp->GetInformation();
187 if (pNewWdmList !=
NULL) {
191 if (pWdmRequirementsList !=
NULL) {
219 "Exiting FilterResourceRequirements handler, %!STATUS!",
348 "Lower stack returned error for query pnp device state, %!STATUS!",
411 #pragma prefast(suppress: __WARNING_PASSING_FUNCTION_UNEXPECTED_NULL, "Static child lists do not use the EvtChildListCreateDevice callback")
VOID HandleQueryCapabilitiesCompletion(__inout FxIrp *Irp)
virtual _Must_inspect_result_ NTSTATUS AskParentToRemoveAndReenumerate(VOID)
_Must_inspect_result_ NTSTATUS QueryForDsfInterface(VOID)
virtual VOID DeleteObject(VOID)
return STATUS_NOT_SUPPORTED
static _Must_inspect_result_ NTSTATUS _PnpQueryCapabilitiesCompletionRoutine(__in MdDeviceObject DeviceObject, __inout MdIrp Irp, __inout PVOID Context)
#define STATUS_INSUFFICIENT_RESOURCES
_Must_inspect_result_ NTSTATUS Commit(__in_opt PWDF_OBJECT_ATTRIBUTES Attributes, __out_opt WDFOBJECT *ObjectHandle, __in_opt FxObject *Parent=NULL, __in BOOLEAN AssignDriverAsDefaultParent=TRUE)
NTSTATUS FilterResourceRequirements(__in IO_RESOURCE_REQUIREMENTS_LIST **IoList)
#define UNREFERENCED_PARAMETER(P)
WDFDEVICE __inline GetHandle(VOID)
REENUMERATE_SELF_INTERFACE_STANDARD m_SurpriseRemoveAndReenumerateSelfInterface
struct _IO_RESOURCE_REQUIREMENTS_LIST * PIO_RESOURCE_REQUIREMENTS_LIST
_Must_inspect_result_ NTSTATUS Invoke(__in WDFDEVICE Device, __in WDFIORESREQLIST Collection)
FxIoResReqList * pIoResReqList
VOID HandleQueryPnpDeviceStateCompletion(__inout FxIrp *Irp)
virtual _Must_inspect_result_ NTSTATUS Initialize(__in PWDFDEVICE_INIT DeviceInit)
static __inline VOID MxFreePool(__in PVOID Ptr)
PFN_WDF_DEVICE_FILTER_RESOURCE_REQUIREMENTS m_Method
_In_ PDEVICE_OBJECT DeviceObject
return STATUS_NOT_IMPLEMENTED
_Must_inspect_result_ NTSTATUS PnpFilterResourceRequirements(__inout FxIrp *Irp)
#define TRACE_LEVEL_VERBOSE
#define ASSERTMSG(msg, exp)
FxPnpDeviceFilterResourceRequirements m_DeviceFilterRemoveResourceRequirements
_Must_inspect_result_ PIO_RESOURCE_REQUIREMENTS_LIST CreateWdmList(VOID)
_Must_inspect_result_ NTSTATUS PnpQueryCapabilities(__inout FxIrp *Irp)
_Must_inspect_result_ NTSTATUS AllocateEnumInfo(VOID)
FxPnpDeviceFilterResourceRequirements m_DeviceFilterAddResourceRequirements
#define NT_SUCCESS(StatCode)
VOID HandleQueryCapabilities(__inout FxIrp *Irp)
#define _Must_inspect_result_
PFX_DRIVER_GLOBALS pGlobals
virtual _Must_inspect_result_ NTSTATUS Initialize(__in PWDFDEVICE_INIT DeviceInit)
static _Must_inspect_result_ NTSTATUS _PnpQueryPnpDeviceState(__inout FxPkgPnp *This, __inout FxIrp *Irp)
#define TRACE_LEVEL_ERROR
static _Must_inspect_result_ NTSTATUS _PnpQueryPnpDeviceStateCompletionRoutine(__in MdDeviceObject DeviceObject, __inout MdIrp Irp, __inout PVOID Context)
FxChildList * m_StaticDeviceList
__inline PFX_DRIVER_GLOBALS GetDriverGlobals(VOID)
WDFIORESREQLIST GetHandle(VOID)
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
#define WDF_NO_OBJECT_ATTRIBUTES
static _Must_inspect_result_ NTSTATUS _CreateAndInit(__out FxChildList **ChildList, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_OBJECT_ATTRIBUTES ListAttributes, __in size_t TotalDescriptionSize, __in CfxDevice *Device, __in PWDF_CHILD_LIST_CONFIG ListConfig, __in BOOLEAN Static=FALSE)
VOID DeleteFromFailedCreate(VOID)
static _Must_inspect_result_ NTSTATUS _ComputeTotalDescriptionSize(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_CHILD_LIST_CONFIG Config, __in size_t *TotalDescriptionSize)
_In_ PWDFDEVICE_INIT DeviceInit
virtual _Must_inspect_result_ NTSTATUS SendIrpSynchronously(__inout FxIrp *Irp)
static _Must_inspect_result_ FxIoResReqList * _CreateFromWdmList(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PIO_RESOURCE_REQUIREMENTS_LIST WdmRequirementsList, __in UCHAR AccessFlags)
static SERVICE_STATUS status
NTSTATUS CompletePnpRequest(__inout FxIrp *Irp, __in NTSTATUS Status)
FORCEINLINE VOID WDF_CHILD_LIST_CONFIG_INIT(_Out_ PWDF_CHILD_LIST_CONFIG Config, _In_ ULONG IdentificationDescriptionSize, _In_ PFN_WDF_CHILD_LIST_CREATE_DEVICE EvtChildListCreateDevice)
size_t totalDescriptionSize