KMDF Callback Function Role Types for SDV


This section provides a complete list of the callback function role types that SDV supports.

Tip 

Callback function role types follow a naming convention that is similar to the convention for placeholder function names in the WDK. For example, the EVT_WDF_DEVICE_ D0_EXIT role type corresponds to the placeholder function named EvtDeviceD0Exit. To find documentation about a callback function, delete the characters "WDF" and "_" (underscore) from the role type name and then search the WDK for the resulting string. The search is case insensitive.

The following are the KMDF callback function role types for SDV:

 EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_COPY EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_DUPLICATE EVT_WDF_CHILD_LIST_CREATE_DEVICE EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_CLEANUP EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COPY EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_DUPLICATE EVT_WDF_CHILD_LIST_SCAN_FOR_CHILDREN EVT_WDF_DEVICE_ARM_WAKE_FROM_S0 EVT_WDF_DEVICE_ARM_WAKE_FROM_SX EVT_WDF_DEVICE_CONTEXT_CLEANUP EVT_WDF_DEVICE_CONTEXT_DESTROY EVT_WDF_DEVICE_D0_ENTRY EVT_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED EVT_WDF_DEVICE_D0_EXIT EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS EVT_WDF_DEVICE_DISARM_WAKE_FROM_S0 EVT_WDF_DEVICE_DISARM_WAKE_FROM_SX EVT_WDF_DEVICE_EJECT EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS EVT_WDF_DEVICE_FILE_CREATE EVT_WDF_DEVICE_FILTER_RESOURCE_REQUIREMENTS EVT_WDF_DEVICE_PNP_STATE_CHANGE_NOTIFICATION EVT_WDF_DEVICE_POWER_POLICY_STATE_CHANGE_NOTIFICATION EVT_WDF_DEVICE_POWER_STATE_CHANGE_NOTIFICATION EVT_WDF_DEVICE_PREPARE_HARDWARE EVT_WDF_DEVICE_PROCESS_QUERY_INTERFACE_REQUEST EVT_WDF_DEVICE_QUERY_REMOVE EVT_WDF_DEVICE_QUERY_STOP EVT_WDF_DEVICE_RELATIONS_QUERY EVT_WDF_DEVICE_RELEASE_HARDWARE EVT_WDF_DEVICE_REMOVE_ADDED_RESOURCES EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY EVT_WDF_DEVICE_RESOURCES_QUERY EVT_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP EVT_WDF_DEVICE_SELF_MANAGED_IO_FLUSH EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART EVT_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND EVT_WDF_DEVICE_SET_LOCK EVT_WDF_DEVICE_SHUTDOWN_NOTIFICATION EVT_WDF_DEVICE_SURPRISE_REMOVAL EVT_WDF_DEVICE_USAGE_NOTIFICATION EVT_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED EVT_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED EVT_WDF_DMA_ENABLER_DISABLE EVT_WDF_DMA_ENABLER_ENABLE EVT_WDF_DMA_ENABLER_FILL EVT_WDF_DMA_ENABLER_FLUSH EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_START EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_STOP EVT_WDF_DPC EVT_WDF_DRIVER_DEVICE_ADD EVT_WDF_DRIVER_UNLOAD EVT_WDF_FILE_CLEANUP EVT_WDF_FILE_CLOSE EVT_WDF_FILE_CONTEXT_CLEANUP_CALLBACK EVT_WDF_FILE_CONTEXT_DESTROY_CALLBACK EVT_WDF_INTERRUPT_DISABLE EVT_WDF_INTERRUPT_DPC EVT_WDF_INTERRUPT_ENABLE EVT_WDF_INTERRUPT_ISR EVT_WDF_INTERRUPT_SYNCHRONIZE EVT_WDF_IO_IN_CALLER_CONTEXT EVT_WDF_IO_QUEUE_CONTEXT_CLEANUP_CALLBACK EVT_WDF_IO_QUEUE_CONTEXT_DESTROY_CALLBACK EVT_WDF_IO_QUEUE_IO_CANCELED_ON_QUEUE EVT_WDF_IO_QUEUE_IO_DEFAULT EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL EVT_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL EVT_WDF_IO_QUEUE_IO_READ EVT_WDF_IO_QUEUE_IO_RESUME EVT_WDF_IO_QUEUE_IO_STOP EVT_WDF_IO_QUEUE_IO_WRITE EVT_WDF_IO_QUEUE_STATE EVT_WDF_IO_TARGET_QUERY_REMOVE EVT_WDF_IO_TARGET_REMOVE_CANCELED EVT_WDF_IO_TARGET_REMOVE_COMPLETE EVT_WDF_OBJECT_CONTEXT_CLEANUP EVT_WDF_OBJECT_CONTEXT_DESTROY EVT_WDF_PROGRAM_DMA EVT_WDF_REQUEST_CANCEL EVT_WDF_REQUEST_COMPLETION_ROUTINE EVT_WDF_TIMER EVT_WDF_TRACE_CALLBACK EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE EVT_WDF_WMI_INSTANCE_SET_INSTANCE EVT_WDF_WMI_INSTANCE_SET_ITEM EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL EVT_WDF_WORKITEM EVT_WDFDEVICE_WDM_IRP_PREPROCESS 

For each role type, a driver can have only one callback function, except for the role types in Table 24-2.

Table 24-2: Callback Function Role Types that Allow Multiple Callbacks
Open table as spreadsheet

Callback function role type

Maximum number of callbacks

EVT_WDF_DPC

7

EVT_WDF_INTERRUPT_SYNCHRONIZE

11

EVT_WDF_TIMER

6

EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD

5

EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE

5

EVT_WDF_WMI_INSTANCE_SET_INSTANCE

5

EVT_WDF_WMI_INSTANCE_SET_ITEM

5




Developing Drivers with the Microsoft Windows Driver Foundation
Developing Drivers with the Windows Driver Foundation (Pro Developer)
ISBN: 0735623740
EAN: 2147483647
Year: 2007
Pages: 224

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net