|
|
/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
bulkpnp.h
Abstract:
Environment:
Kernel mode
Notes:
Copyright (c) 2000 Microsoft Corporation. All Rights Reserved.
--*/
#ifndef _BULKUSB_PNP_H
#define _BULKUSB_PNP_H
#define REMOTE_WAKEUP_MASK 0x20
NTSTATUS BulkUsb_DispatchPnP( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleStartDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleQueryStopDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleQueryRemoveDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleCancelRemoveDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleSurpriseRemoval( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleRemoveDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleCancelStopDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleStopDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS HandleQueryCapabilities( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS ReadandSelectDescriptors( IN PDEVICE_OBJECT DeviceObject );
NTSTATUS ConfigureDevice( IN PDEVICE_OBJECT DeviceObject );
NTSTATUS SelectInterfaces( IN PDEVICE_OBJECT DeviceObject, IN PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor );
NTSTATUS DeconfigureDevice( IN PDEVICE_OBJECT DeviceObject );
NTSTATUS CallUSBD( IN PDEVICE_OBJECT DeviceObject, IN PURB Urb );
VOID ProcessQueuedRequests( IN OUT PDEVICE_EXTENSION DeviceExtension );
NTSTATUS BulkUsb_GetRegistryDword( IN PWCHAR RegPath, IN PWCHAR ValueName, IN OUT PULONG Value );
NTSTATUS BulkUsb_DispatchClean( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
VOID DpcRoutine( IN PKDPC Dpc, IN PVOID DeferredContext, IN PVOID SystemArgument1, IN PVOID SystemArgument2 );
VOID IdleRequestWorkerRoutine( IN PDEVICE_OBJECT DeviceObject, IN PVOID Context );
NTSTATUS BulkUsb_AbortPipes( IN PDEVICE_OBJECT DeviceObject );
NTSTATUS IrpCompletionRoutine( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp, IN PVOID Context );
NTSTATUS CanStopDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS CanRemoveDevice( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp );
NTSTATUS ReleaseMemory( IN PDEVICE_OBJECT DeviceObject );
LONG BulkUsb_IoIncrement( IN OUT PDEVICE_EXTENSION DeviceExtension );
LONG BulkUsb_IoDecrement( IN OUT PDEVICE_EXTENSION DeviceExtension );
BOOLEAN CanDeviceSuspend( IN PDEVICE_EXTENSION DeviceExtension );
PCHAR PnPMinorFunctionString ( IN UCHAR MinorFunction );
#endif
|