ReactOS  0.4.11-dev-433-g473ca91
fbtusb.h File Reference
#include <initguid.h>
#include <wdm.h>
#include <wmilib.h>
#include <wmistr.h>
#include <windef.h>
#include "usbdi.h"
#include "usbdlib.h"
#include "fbtHciDefs.h"
Include dependency graph for fbtusb.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _GLOBALS
 
struct  _FREEBT_PIPE_CONTEXT
 
struct  _DEVICE_EXTENSION
 
struct  _IRP_COMPLETION_CONTEXT
 

Macros

#define FREEBT_USB_STDCLASS   0xE0
 
#define FREEBT_USB_STDSUBCLASS   0x01
 
#define FREEBT_USB_STDPROTOCOL   0x01
 
#define FREEBT_STDENDPOINT_HCICMD   0x00
 
#define FREEBT_STDENDPOINT_HCIEVENT   0x81
 
#define FREEBT_STDENDPOINT_ACLIN   0x82
 
#define FREEBT_STDENDPOINT_ACLOUT   0x02
 
#define FREEBT_STDENDPOINT_AUDIOIN   0x83
 
#define FREEBT_STDENDPOINT_AUDIOOUT   0x03
 
#define OBTTAG   (ULONG) 'OBTU'
 
#define ExAllocatePool(type, size)   ExAllocatePoolWithTag(type, size, OBTTAG);
 
#define FreeBT_DbgPrint(level, _x_)
 
#define IDLE_INTERVAL   5000
 
#define INITIALIZE_PNP_STATE(_Data_)
 
#define SET_NEW_PNP_STATE(_Data_, _state_)
 
#define RESTORE_PREVIOUS_PNP_STATE(_Data_)   (_Data_)->DeviceState = (_Data_)->PrevDevState;
 
#define FREEBT_REGISTRY_PARAMETERS_PATH   L"\\REGISTRY\\Machine\\System\\CurrentControlSet\\SERVICES\\BULKUSB\\Parameters"
 

Typedefs

typedef struct _GLOBALS GLOBALS
 
typedef enum _PIPETYPE FREEBT_PIPETYPE
 
typedef enum _DEVSTATE DEVSTATE
 
typedef enum _QUEUE_STATE QUEUE_STATE
 
typedef enum _WDM_VERSION WDM_VERSION
 
typedef struct _FREEBT_PIPE_CONTEXT FREEBT_PIPE_CONTEXT
 
typedef struct
_FREEBT_PIPE_CONTEXT
PFREEBT_PIPE_CONTEXT
 
typedef struct _DEVICE_EXTENSION DEVICE_EXTENSION
 
typedef struct _DEVICE_EXTENSIONPDEVICE_EXTENSION
 
typedef struct
_IRP_COMPLETION_CONTEXT 
IRP_COMPLETION_CONTEXT
 
typedef struct
_IRP_COMPLETION_CONTEXT
PIRP_COMPLETION_CONTEXT
 

Enumerations

enum  _PIPETYPE {
  HciCommandPipe, HciEventPipe, AclDataIn, AclDataOut,
  SCODataIn, SCODataOut
}
 
enum  _DEVSTATE {
  NotStarted, Stopped, Working, PendingStop,
  PendingRemove, SurpriseRemoved, Removed
}
 
enum  _QUEUE_STATE { HoldRequests, AllowRequests, FailRequests }
 
enum  _WDM_VERSION { WinXpOrBetter, Win2kOrBetter, WinMeOrBetter, Win98OrBetter }
 

Variables

GLOBALS Globals
 
ULONG DebugLevel
 

Macro Definition Documentation

#define ExAllocatePool (   type,
  size 
)    ExAllocatePoolWithTag(type, size, OBTTAG);

Definition at line 44 of file fbtusb.h.

Referenced by _MiFlushMappedSection(), _MiWriteBackPage(), AllocateItem(), AllocateRegistryPathInfo(), AllocRoutine(), ARPReceive(), AtapiRegCheckParameterValue(), BadBlockQueryRoutine(), BindAdapterByName(), CUSBDevice::BuildInterfaceDescriptor(), CalculateMbrCheckSum(), calloc(), CcInitializeCacheMap(), CcpDereferenceCache(), CcScheduleReadAhead(), CcZeroData(), CdRomCheckRegistryForMediaChangeValue(), CdRomDeviceControl(), CdRomIsPlayActive(), CdRomSetVolumeIntermediateCompletion(), CdRomUpdateCapacity(), ClassAcquireRemoveLockEx(), CmGetSystemDriverList(), ConfigureDevice(), ConstructDeviceName(), CopyUS(), CreateCdRomDeviceObject(), CUSBDevice::CreateDeviceDescriptor(), CreateDeviceIds(), CreateDeviceName(), CreateDiskDeviceObject(), CreatePartitionDeviceObjects(), CreatePin(), DeconfigureDevice(), default_bzalloc(), DisableWriteCache(), DiskOpen(), DiskRead(), DispatchCreateKMix(), DriverEntry(), DuplicatesTest(), DuplicateUnicodeString(), EnumDeviceKeys(), EnumerateBusKey(), EnumerateSoundDevices(), EthCreateFilter(), Ext2BuildEntry(), FdcFdoQueryBusRelations(), FreeBT_AbortPipes(), FreeBT_DispatchRead(), FreeBT_DispatchWrite(), FreeBT_GetHCIEvent(), FreeBT_ResetPipe(), FreeBT_SendHCICommand(), FsRtlAddToTunnelCache(), FsRtlFindInTunnelCache(), FsRtlGetTunnelParameterValue(), FsRtlTest_StartTest(), GetBusInterface(), GreenDuplicateUnicodeString(), GreenPnp(), GreenQueryBusRelations(), HalpXboxDeviceHasXboxPartitioning(), CHCDController::HandlePnp(), CHubController::HandlePnp(), HitachProcessError(), HoldIoRequests(), IdleNotificationCallback(), InitializeFilterWithKs(), InitModuleList(), IntVideoPortChildQueryId(), IntVideoPortChildQueryRelations(), IntVideoPortChildQueryText(), IntVideoPortFilterResourceRequirements(), IntVideoPortPnPStartDevice(), IntVideoPortQueryBusRelations(), IoGetDeviceInterfaces(), IoGetDeviceProperty(), IoOpenDeviceRegistryKey(), IopAssignDeviceResources(), IopCaptureUnicodeString(), IopCreateDeviceNode(), IopEnumerateDetectedDevices(), IopFixupResourceListWithRequirements(), IopGetBusTypeGuidIndex(), IopGetDeviceProperty(), IopGetRegistryValue(), IopInitializePlugPlayServices(), IopInstallCriticalDevice(), IopIsFirmwareMapperDisabled(), IopOpenInterfaceKey(), IopQueueTargetDeviceEvent(), IopRestartLogWorker(), IopSaveBootLogToFile(), IopTranslateDeviceResources(), IopUpdateResourceMap(), IoReadPartitionTable(), IoRegisterDeviceInterface(), IPCreateInterface(), IsaFdoQueryDeviceRelations(), IsaPdoQueryDeviceRelations(), IsFloppyDevice(), IsThisAnAtapiChanger(), IsThisASanyo(), KdbpCaptureFileForSymbols(), KdbpCliInit(), KdbSymProcessSymbols(), KdpInitDebugLog(), KdpScreenInit(), KeSaveFloatingPointState(), KiI386PentiumLockErrataFixup(), KMixAllocateDeviceHeader(), LanCreateProtocol(), LANRegisterAdapter(), LogMessage(), LoopTransmit(), MiniIndicateReceivePacket(), MiniQueryInformation(), MiniQueueWorkItem(), MiniSetInformation(), NdisAllocateMemory(), NdisAllocatePacketPoolEx(), ndisBindMiniportsToProtocol(), NdisIAddDevice(), NdisInitializeWrapper(), NdisIPnPStartDevice(), NdisMAllocateMapRegisters(), NdisMAllocateSharedMemoryAsync(), NdisMCreateLog(), NdisMFreeSharedMemory(), NdisMQueryAdapterInstanceName(), NdisMRegisterAdapterShutdownHandler(), NdisMRegisterDmaChannel(), NdisOpenAdapter(), NdisOpenConfiguration(), NdisOpenConfigurationKeyByIndex(), NdisOpenConfigurationKeyByName(), NdisOpenFile(), NdisOpenProtocolConfiguration(), NdisReadConfiguration(), NdisReadEisaSlotInformation(), NdisReadNetworkAddress(), NdisRegisterProtocol(), NduReceive(), NtSetLdtEntries(), OpenDeviceReadWrite(), OpenRegistryHandlesFromSymbolicLink(), PatchKeyboardDriver(), PciIdeXFdoQueryBusRelations(), PciIdeXPdoPnpDispatch(), PciIdeXPdoQueryDeviceRelations(), PciIdeXPdoQueryResourceRequirements(), PciIdeXSetBusData(), PdoQueryDeviceRelations(), PdoQueryResourceRequirements(), PdoQueryResources(), PerformChannelConversion(), PerformQualityConversion(), PerformSampleRateConversion(), PerformTest(), PICE_malloc(), PinCreate(), PnpRootCreateDevice(), PnpRootQueryDeviceRelations(), ProcessorSetFriendlyName(), ProIndicatePacket(), ProSend(), ProSetupPnPEvent(), ReadandSelectDescriptors(), ReadIrpCancel(), ReadRegistryEntries(), ResetScsiBus(), ScanForSpecial(), ScreenAddDevice(), ScsiCdRomStartIo(), ScsiClassDeviceControl(), ScsiClassGetInquiryData(), ScsiClassInitialize(), ScsiClassQueryTimeOutRegistryValue(), ScsiClassReadDriveCapacity(), ScsiClassReleaseQueue(), ScsiClassSendSrbSynchronous(), ScsiDiskDeviceControl(), ScsiDiskModeSelect(), ScsiDiskShutdownFlush(), SelectInterfaces(), SendDeviceIrp(), SpiAllocateCommonBuffer(), SpiScanAdapter(), START_TEST(), StartUnit(), StreamClassAddDevice(), StreamClassReenumerateStreams(), StreamClassStartDevice(), SubmitIdleRequestIrp(), sys_mbox_post(), sys_thread_new(), TCPSleep(), TdiBuildNullConnectionInfo(), TdiOpenTransport(), TdiQueryAddress(), TdiReceiveDatagram(), TdiSendDatagram(), Test_Initialize(), TestFsRtlAddToTunnelCache(), TestFsRtlFindInTunnelCache(), TestFsRtlInitializeTunnelCache(), Tests_Insert_And_Delete(), TestSymlinks(), ToshibaProcessError(), UDFPhWriteSynchronous(), UniataAllocateLunExt(), UniataClaimLegacyPCIIDE(), UniataEnumBusMasterController__(), UpdateGeometry(), USBD_CreateConfigurationRequestEx(), USBD_GetPdoRegistryParameter(), USBHUB_FdoQueryBusRelations(), USBHUB_ParentFDOStartDevice(), USBHUB_PdoHandlePnp(), USBHUB_PdoQueryDeviceText(), USBHUB_PdoQueryId(), VideoPortCreateSpinLock(), VideoPortGetAccessRanges(), VideoPortGetDmaAdapter(), VideoPortGetRomImage(), VideoPortIsNoVesa(), VideoPortStartDma(), and VideoPortVerifyAccessRanges().

#define FreeBT_DbgPrint (   level,
  _x_ 
)

Definition at line 55 of file fbtusb.h.

Referenced by CallUSBD(), CancelQueued(), CancelSelectSuspend(), CancelWaitWake(), CanDeviceSuspend(), ConfigureDevice(), DeconfigureDevice(), DevPoCompletionRoutine(), DpcRoutine(), DriverEntry(), FinishDevPoDnIrp(), FinishDevPoUpIrp(), FreeBT_AbortPipes(), FreeBT_AddDevice(), FreeBT_DispatchClean(), FreeBT_DispatchClose(), FreeBT_DispatchCreate(), FreeBT_DispatchDevCtrl(), FreeBT_DispatchPnP(), FreeBT_DispatchPower(), FreeBT_DispatchRead(), FreeBT_DispatchSysCtrl(), FreeBT_DispatchWrite(), FreeBT_DriverUnload(), FreeBT_GetHCIEvent(), FreeBT_GetPortStatus(), FreeBT_GetRegistryDword(), FreeBT_HCIEventCompletion(), FreeBT_HCISendCompletion(), FreeBT_IoDecrement(), FreeBT_IoIncrement(), FreeBT_QueryWmiDataBlock(), FreeBT_QueryWmiRegInfo(), FreeBT_ReadCompletion(), FreeBT_ResetDevice(), FreeBT_ResetParentPort(), FreeBT_ResetPipe(), FreeBT_SendHCICommand(), FreeBT_SetWmiDataBlock(), FreeBT_SetWmiDataItem(), FreeBT_WriteCompletion(), HandleCancelRemoveDevice(), HandleCancelStopDevice(), HandleDeviceQueryPower(), HandleDeviceSetPower(), HandleQueryCapabilities(), HandleQueryRemoveDevice(), HandleQueryStopDevice(), HandleRemoveDevice(), HandleStartDevice(), HandleStopDevice(), HandleSurpriseRemoval(), HandleSystemQueryPower(), HandleSystemSetPower(), HoldIoRequests(), HoldIoRequestsWorkerRoutine(), IdleNotificationCallback(), IdleNotificationRequestComplete(), IdleRequestWorkerRoutine(), IssueWaitWake(), PoIrpAsyncCompletionFunc(), PoIrpCompletionFunc(), ProcessQueuedRequests(), QueueRequest(), ReadandSelectDescriptors(), ReleaseMemory(), SelectInterfaces(), SendDeviceIrp(), SetDeviceFunctional(), SubmitIdleRequestIrp(), SysPoCompletionRoutine(), WaitWakeCallback(), WaitWakeCompletionRoutine(), and WWIrpCompletionFunc().

#define FREEBT_REGISTRY_PARAMETERS_PATH   L"\\REGISTRY\\Machine\\System\\CurrentControlSet\\SERVICES\\BULKUSB\\Parameters"

Definition at line 121 of file fbtusb.h.

Referenced by FreeBT_AddDevice().

#define FREEBT_STDENDPOINT_ACLIN   0x82

Definition at line 35 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_STDENDPOINT_ACLOUT   0x02

Definition at line 36 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_STDENDPOINT_AUDIOIN   0x83

Definition at line 37 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_STDENDPOINT_AUDIOOUT   0x03

Definition at line 38 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_STDENDPOINT_HCICMD   0x00

Definition at line 33 of file fbtusb.h.

#define FREEBT_STDENDPOINT_HCIEVENT   0x81

Definition at line 34 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_USB_STDCLASS   0xE0

Definition at line 28 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_USB_STDPROTOCOL   0x01

Definition at line 30 of file fbtusb.h.

Referenced by SelectInterfaces().

#define FREEBT_USB_STDSUBCLASS   0x01

Definition at line 29 of file fbtusb.h.

Referenced by SelectInterfaces().

#define IDLE_INTERVAL   5000

Definition at line 65 of file fbtusb.h.

Referenced by HandleStartDevice(), and IdleNotificationRequestComplete().

#define INITIALIZE_PNP_STATE (   _Data_)
Value:
(_Data_)->DeviceState = NotStarted;\
(_Data_)->PrevDevState = NotStarted;

Definition at line 107 of file fbtusb.h.

Referenced by Bus_AddDevice(), Bus_InitializePdo(), CreateUsbChildDeviceObject(), FreeBT_AddDevice(), and USBHUB_AddDevice().

#define OBTTAG   (ULONG) 'OBTU'

Definition at line 41 of file fbtusb.h.

#define RESTORE_PREVIOUS_PNP_STATE (   _Data_)    (_Data_)->DeviceState = (_Data_)->PrevDevState;
#define SET_NEW_PNP_STATE (   _Data_,
  _state_ 
)
Value:
(_Data_)->PrevDevState = (_Data_)->DeviceState;\
(_Data_)->DeviceState = (_state_);

Definition at line 111 of file fbtusb.h.

Referenced by Bus_FDO_PnP(), Bus_PDO_PnP(), Bus_StartFdo(), HandleQueryRemoveDevice(), HandleQueryStopDevice(), HandleRemoveDevice(), HandleStartDevice(), HandleStopDevice(), HandleSurpriseRemoval(), USBHUB_FdoHandlePnp(), USBHUB_PdoHandlePnp(), and USBHUB_PdoStartDevice().

Typedef Documentation

Enumeration Type Documentation

Enumerator
NotStarted 
Stopped 
Working 
PendingStop 
PendingRemove 
SurpriseRemoved 
Removed 

Definition at line 78 of file fbtusb.h.

79 {
80  NotStarted, // not started
81  Stopped, // device stopped
82  Working, // started and working
83  PendingStop, // stop pending
84  PendingRemove, // remove pending
85  SurpriseRemoved, // removed by surprise
86  Removed // removed
87 
88 } DEVSTATE;
enum _DEVSTATE DEVSTATE
Definition: fbtusb.h:81
Definition: fbtusb.h:82
Definition: fbtusb.h:86
Enumerator
HciCommandPipe 
HciEventPipe 
AclDataIn 
AclDataOut 
SCODataIn 
SCODataOut 

Definition at line 67 of file fbtusb.h.

68 {
71  AclDataIn,
72  AclDataOut,
73  SCODataIn,
75 
enum _PIPETYPE FREEBT_PIPETYPE
Enumerator
HoldRequests 
AllowRequests 
FailRequests 

Definition at line 90 of file fbtusb.h.

91 {
92  HoldRequests, // device is not started yet
93  AllowRequests, // device is ready to process
94  FailRequests // fail both existing and queued up requests
95 
96 } QUEUE_STATE;
enum _QUEUE_STATE QUEUE_STATE
Enumerator
WinXpOrBetter 
Win2kOrBetter 
WinMeOrBetter 
Win98OrBetter 

Definition at line 98 of file fbtusb.h.

99 {
104 
105 } WDM_VERSION;
enum _WDM_VERSION WDM_VERSION

Variable Documentation

GLOBALS Globals

Definition at line 13 of file clipbrd.c.