25#include "FxUsbPipeAPI.tmh"
130WDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck)(
149 "WDFUSBPIPE %p",
Pipe);
158WDFEXPORT(WdfUsbTargetPipeWriteSynchronously)(
177 "WDFUSBPIPE %p",
Pipe);
192WDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite)(
208 "WDFUSBPIPE %p, WDFREQUEST %p, WDFMEMORY %p",
223WDFEXPORT(WdfUsbTargetPipeReadSynchronously)(
241 "WDFUSBPIPE %p",
Pipe);
258WDFEXPORT(WdfUsbTargetPipeFormatRequestForRead)(
275 "WDFUSBPIPE %p, WDFREQUEST %p, WDFMEMORY %p",
292WDFEXPORT(WdfUsbTargetPipeConfigContinuousReader)(
320 "Config %p incorrect size %d, expected %d %!STATUS!",
331 "NULL EvtUsbTargetPipeReadComplete not allowed %!STATUS!",
status);
335 if (
Config->TransferLength == 0) {
338 "TransferLength of 0 not allowed %!STATUS!",
status);
349 "HeaderLength + TransferLength overflow %!STATUS!",
status);
360 "HeaderLength + TransferLength + TrailerLength overflow %!STATUS!",
385 "WDFUSBPIPE %p type %!WDF_USB_PIPE_TYPE!, only bulk or interrupt "
386 "pipes can be configured for continous readers, %!STATUS!",
397 "WDFUSBPIPE %p, wrong direction for continuous reader, %!STATUS!",
407 "TransferLength %I64d not a valid transer length (not integral of max "
408 "packet size %d) %!STATUS!",
Config->TransferLength,
422WDFEXPORT(WdfUsbTargetPipeAbortSynchronously)(
455 "Failed to initialize FxSyncRequest");
470 "Invalid request options");
478 "WDFUSBPIPE %p, WDFREQUEST %p being submitted",
479 Pipe,
request.m_TrueRequest->GetTraceObjectHandle());
494WDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort)(
527 "Pipe %p, Request %p, status %!STATUS!",
537WDFEXPORT(WdfUsbTargetPipeResetSynchronously)(
570 "Failed to initialize FxSyncRequest");
575 "WDFUSBPIPE %p reset",
Pipe);
585 "Invalid request options");
594 "WDFUSBPIPE %p, WDFREQUEST %p being submitted",
595 Pipe,
request.m_TrueRequest->GetTraceObjectHandle());
607 "WDFUSBPIPE %p reset, %!STATUS!",
Pipe,
status);
616WDFEXPORT(WdfUsbTargetPipeFormatRequestForReset)(
649 "Pipe %p, Request %p = 0x%x",
659WDFEXPORT(WdfUsbTargetPipeSendUrbSynchronously)(
694 "Failed to initialize FxSyncRequest");
699 "WDFUSBPIPE %p, Urb %p",
Pipe, Urb);
713 buf.SetBuffer(Urb, 0);
725 "WDFUSBPIPE %p, WDFREQUEST %p being submitted",
726 Pipe,
request.m_TrueRequest->GetTraceObjectHandle());
732 "WDFUSBPIPE %p, Urb %p, %!STATUS!",
742WDFEXPORT(WdfUsbTargetPipeFormatRequestForUrb)(
772 "Pipe %p, Request %p, Memory %p",
798 "UrbMemory %p buffer size, %I64d, smaller then "
822 "Pipe %p, Request %p, Memory %p, status %!STATUS!",
831WDFEXPORT(WdfUsbTargetPipeWdmGetPipeHandle)(
_Must_inspect_result_ NTSTATUS SubmitSync(__in FxRequestBase *Request, __in_opt PWDF_REQUEST_SEND_OPTIONS Options=NULL, __out_opt PULONG Action=NULL)
_Must_inspect_result_ NTSTATUS SubmitSyncRequestIgnoreTargetState(__in FxRequestBase *Request, __in_opt PWDF_REQUEST_SEND_OPTIONS RequestOptions)
__inline FxRequestContext * GetContext(VOID)
FX_URB_TYPE GetUrbType(VOID)
BOOLEAN IsType(__in WDF_USB_PIPE_TYPE Type)
__inline BOOLEAN IsInEndpoint(VOID)
USBD_HANDLE GetUSBDHandle(VOID)
WDF_USB_PIPE_TYPE GetType(VOID)
__inline BOOLEAN IsOutEndpoint(VOID)
_Must_inspect_result_ NTSTATUS FormatResetRequest(__in FxRequestBase *Request)
_Must_inspect_result_ NTSTATUS FormatAbortRequest(__in FxRequestBase *Request)
VOID GetInformation(__out PWDF_USB_PIPE_INFORMATION PipeInformation)
_Must_inspect_result_ NTSTATUS ValidateTransferLength(__in size_t Length)
static _Must_inspect_result_ NTSTATUS _SendTransfer(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in WDFUSBPIPE Pipe, __in_opt WDFREQUEST Request, __in_opt PWDF_REQUEST_SEND_OPTIONS RequestOptions, __in_opt PWDF_MEMORY_DESCRIPTOR MemoryDescriptor, __out_opt PULONG BytesTransferred, __in ULONG Flags)
static _Must_inspect_result_ NTSTATUS _FormatTransfer(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in WDFUSBPIPE Pipe, __in WDFREQUEST Request, __in_opt WDFMEMORY TransferMemory, __in_opt PWDFMEMORY_OFFSET TransferOffsets, __in ULONG Flags)
ULONG GetMaxPacketSize(VOID)
__inline VOID SetNoCheckPacketSize(VOID)
USBD_PIPE_HANDLE WdmGetPipeHandle(VOID)
_Must_inspect_result_ NTSTATUS InitContinuousReader(__in PWDF_USB_CONTINUOUS_READER_CONFIG Config, __in size_t TotalBufferLength)
virtual size_t GetBufferSize(VOID)=0
_Must_inspect_result_ NTSTATUS ValidateMemoryOffsets(__in_opt PWDFMEMORY_OFFSET Offsets)
#define NT_SUCCESS(StatCode)
#define __drv_maxIRQL(irql)
__inline PFX_DRIVER_GLOBALS GetFxDriverGlobals(__in PWDF_DRIVER_GLOBALS DriverGlobals)
#define FxPointerNotNull(FxDriverGlobals, Ptr)
NTSTATUS __inline FxValidateRequestOptions(_In_ PFX_DRIVER_GLOBALS FxDriverGlobals, _In_ PWDF_REQUEST_SEND_OPTIONS Options, _In_opt_ FxRequestBase *Request=NULL)
@ FX_TYPE_IO_TARGET_USB_PIPE
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in WDFMEMORY __in_opt PWDFMEMORY_OFFSET UrbOffsets
__in WDFUSBPIPE __out PWDF_USB_PIPE_INFORMATION PipeInformation
_Must_inspect_result_ __in WDFUSBPIPE __in PWDF_USB_CONTINUOUS_READER_CONFIG Config
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in_opt WDFMEMORY WriteMemory
_Must_inspect_result_ __in WDFUSBPIPE __in_opt WDFREQUEST __in_opt PWDF_REQUEST_SEND_OPTIONS __in_opt PWDF_MEMORY_DESCRIPTOR __out_opt PULONG BytesWritten
FxUsbPipeRequestContext context(FxUrbTypeLegacy)
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in_opt WDFMEMORY __in_opt PWDFMEMORY_OFFSET WriteOffsets
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in WDFMEMORY UrbMemory
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in_opt WDFMEMORY __in_opt PWDFMEMORY_OFFSET ReadOffsets
_Must_inspect_result_ __in WDFUSBPIPE __in_opt WDFREQUEST __in_opt PWDF_REQUEST_SEND_OPTIONS RequestOptions
_Must_inspect_result_ __in WDFUSBPIPE __in_opt WDFREQUEST Request
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGIOTARGET, "WDFUSBPIPE %p", Pipe)
FxObjectHandleGetPtr(GetFxDriverGlobals(DriverGlobals), Pipe, FX_TYPE_IO_TARGET_USB_PIPE,(PVOID *) &pUsbPipe)
_Must_inspect_result_ __in WDFUSBPIPE __in WDFREQUEST __in_opt WDFMEMORY ReadMemory
_Must_inspect_result_ __in WDFUSBPIPE __in_opt WDFREQUEST __in_opt PWDF_REQUEST_SEND_OPTIONS __in_opt PWDF_MEMORY_DESCRIPTOR MemoryDescriptor
_Must_inspect_result_ __in WDFUSBPIPE __in_opt WDFREQUEST __in_opt PWDF_REQUEST_SEND_OPTIONS __in_opt PWDF_MEMORY_DESCRIPTOR __out_opt PULONG BytesRead
FxObjectHandleGetPtrAndGlobals(GetFxDriverGlobals(DriverGlobals), Pipe, FX_TYPE_IO_TARGET_USB_PIPE,(PVOID *) &pUsbPipe, &pFxDriverGlobals)
PFX_DRIVER_GLOBALS pFxDriverGlobals
@ FX_VALIDATE_OPTION_PARENT_NOT_ALLOWED
_Must_inspect_result_ NTSTATUS FxValidateObjectAttributes(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_OBJECT_ATTRIBUTES Attributes, __in ULONG Flags=FX_VALIDATE_OPTION_NONE_SPECIFIED)
__inline NTSTATUS FxVerifierCheckIrqlLevel(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in KIRQL Irql)
GLenum GLuint GLenum GLsizei const GLchar * buf
#define _Must_inspect_result_
#define __in_xcount(size)
#define TRACE_LEVEL_VERBOSE
#define TRACE_LEVEL_ERROR
VOID SetUsbType(__in WDF_USB_REQUEST_TYPE Type)
WDF_USB_REQUEST_COMPLETION_PARAMS m_UsbParameters
struct _WDF_USB_REQUEST_COMPLETION_PARAMS::@3908::@3914 PipeUrb
union _WDF_USB_REQUEST_COMPLETION_PARAMS::@3908 Parameters
#define STATUS_INVALID_DEVICE_REQUEST
#define STATUS_INVALID_PARAMETER
#define STATUS_INFO_LENGTH_MISMATCH
#define USBD_TRANSFER_DIRECTION_IN
#define USBD_SHORT_TRANSFER_OK
NTSTATUS FxFormatUrbRequest(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxIoTarget *Target, __in FxRequestBase *Request, __in FxRequestBuffer *Buffer, __in FX_URB_TYPE FxUrbType, __drv_when(FxUrbType==FxUrbTypeUsbdAllocated, __in) __drv_when(FxUrbType !=FxUrbTypeUsbdAllocated, __in_opt) USBD_HANDLE UsbdHandle)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesWritten
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesRead
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY ReadMemory
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY WriteMemory
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ WDFREQUEST _In_ WDFMEMORY UrbMemory
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor
@ WdfUsbPipeTypeInterrupt
@ WdfUsbRequestTypePipeUrb
_In_ WDFUSBPIPE _Out_ PWDF_USB_PIPE_INFORMATION PipeInformation
enum _WDF_USB_PIPE_TYPE WDF_USB_PIPE_TYPE