- Update to r53061
[reactos.git] / drivers / bluetooth / fbtusb / include / fbtpnp.h
1 // Copyright (c) 2004, Antony C. Roberts
2
3 // Use of this file is subject to the terms
4 // described in the LICENSE.TXT file that
5 // accompanies this file.
6 //
7 // Your use of this file indicates your
8 // acceptance of the terms described in
9 // LICENSE.TXT.
10 //
11 // http://www.freebt.net
12
13 #ifndef _FREEBT_PNP_H
14 #define _FREEBT_PNP_H
15
16 #define REMOTE_WAKEUP_MASK 0x20
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 NTSTATUS FreeBT_DispatchPnP(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
23 NTSTATUS HandleStartDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
24 NTSTATUS HandleQueryStopDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
25 NTSTATUS HandleQueryRemoveDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
26 NTSTATUS HandleCancelRemoveDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
27 NTSTATUS HandleSurpriseRemoval(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
28 NTSTATUS HandleRemoveDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
29 NTSTATUS HandleCancelStopDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
30 NTSTATUS HandleStopDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
31 NTSTATUS HandleQueryCapabilities(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
32 NTSTATUS ReadandSelectDescriptors(IN PDEVICE_OBJECT DeviceObject);
33 NTSTATUS ConfigureDevice(IN PDEVICE_OBJECT DeviceObject);
34 NTSTATUS SelectInterfaces(IN PDEVICE_OBJECT DeviceObject, IN PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor);
35 NTSTATUS DeconfigureDevice(IN PDEVICE_OBJECT DeviceObject);
36 NTSTATUS CallUSBD(IN PDEVICE_OBJECT DeviceObject, IN PURB Urb);
37 VOID ProcessQueuedRequests(IN OUT PDEVICE_EXTENSION DeviceExtension);
38 NTSTATUS FreeBT_GetRegistryDword(IN PWCHAR RegPath, IN PWCHAR ValueName, IN OUT PULONG Value);
39 NTSTATUS FreeBT_DispatchClean(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
40 VOID DpcRoutine(
41 IN PKDPC Dpc,
42 IN PVOID DeferredContext,
43 IN PVOID SystemArgument1,
44 IN PVOID SystemArgument2);
45
46 VOID IdleRequestWorkerRoutine(IN PDEVICE_OBJECT DeviceObject, IN PVOID Context);
47 NTSTATUS FreeBT_AbortPipes(IN PDEVICE_OBJECT DeviceObject);
48 NTSTATUS IrpCompletionRoutine(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp, IN PVOID Context);
49 NTSTATUS CanStopDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
50 NTSTATUS CanRemoveDevice(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
51 NTSTATUS ReleaseMemory(IN PDEVICE_OBJECT DeviceObject);
52 LONG FreeBT_IoIncrement(IN OUT PDEVICE_EXTENSION DeviceExtension);
53 LONG FreeBT_IoDecrement(IN OUT PDEVICE_EXTENSION DeviceExtension);
54 BOOLEAN CanDeviceSuspend(IN PDEVICE_EXTENSION DeviceExtension);
55 PCHAR PnPMinorFunctionString (IN UCHAR MinorFunction);
56
57 #ifdef __cplusplus
58 };
59 #endif
60
61 #endif