Author: akhaldi
Date: Fri Mar 5 13:25:38 2010
New Revision: 45867
URL:
http://svn.reactos.org/svn/reactos?rev=45867&view=rev
Log:
More work on USB related definitions
Modified:
branches/header-work/include/psdk/usb200.h
branches/header-work/include/psdk/usbcamdi.h
Modified: branches/header-work/include/psdk/usb200.h
URL:
http://svn.reactos.org/svn/reactos/branches/header-work/include/psdk/usb200…
==============================================================================
--- branches/header-work/include/psdk/usb200.h [iso-8859-1] (original)
+++ branches/header-work/include/psdk/usb200.h [iso-8859-1] Fri Mar 5 13:25:38 2010
@@ -23,6 +23,16 @@
UsbFullSpeed,
UsbHighSpeed
} USB_DEVICE_SPEED;
+
+#define USB_PORT_STATUS_CONNECT 0x0001
+#define USB_PORT_STATUS_ENABLE 0x0002
+#define USB_PORT_STATUS_SUSPEND 0x0004
+#define USB_PORT_STATUS_OVER_CURRENT 0x0008
+#define USB_PORT_STATUS_RESET 0x0010
+#define USB_PORT_STATUS_POWER 0x0100
+#define USB_PORT_STATUS_LOW_SPEED 0x0200
+#define USB_PORT_STATUS_HIGH_SPEED 0x0400
+
typedef union _BM_REQUEST_TYPE {
struct _BM {
@@ -56,6 +66,9 @@
C_ASSERT(sizeof(USB_DEFAULT_PIPE_SETUP_PACKET) == 8);
+#define USB_DEVICE_QUALIFIER_DESCRIPTOR_TYPE 0x06
+#define USB_OTHER_SPEED_CONFIGURATION_DESCRIPTOR_TYPE 0x07
+
typedef struct _USB_DEVICE_QUALIFIER_DESCRIPTOR {
UCHAR bLength;
UCHAR bDescriptorType;
@@ -77,6 +90,8 @@
USHORT us;
} USB_HIGH_SPEED_MAXPACKET, *PUSB_HIGH_SPEED_MAXPACKET;
+#define USB_INTERFACE_ASSOCIATION_DESCRIPTOR_TYPE 0x0B
+
typedef struct _USB_INTERFACE_ASSOCIATION_DESCRIPTOR {
UCHAR bLength;
UCHAR bDescriptorType;
@@ -88,16 +103,4 @@
UCHAR iFunction;
} USB_INTERFACE_ASSOCIATION_DESCRIPTOR, *PUSB_INTERFACE_ASSOCIATION_DESCRIPTOR;
-#define USB_PORT_STATUS_CONNECT 0x0001
-#define USB_PORT_STATUS_ENABLE 0x0002
-#define USB_PORT_STATUS_SUSPEND 0x0004
-#define USB_PORT_STATUS_OVER_CURRENT 0x0008
-#define USB_PORT_STATUS_RESET 0x0010
-#define USB_PORT_STATUS_POWER 0x0100
-#define USB_PORT_STATUS_LOW_SPEED 0x0200
-#define USB_PORT_STATUS_HIGH_SPEED 0x0400
-#define USB_DEVICE_QUALIFIER_DESCRIPTOR_TYPE 0x06
-#define USB_OTHER_SPEED_CONFIGURATION_DESCRIPTOR_TYPE 0x07
-#define USB_INTERFACE_ASSOCIATION_DESCRIPTOR_TYPE 0x0B
-
#include <poppack.h>
Modified: branches/header-work/include/psdk/usbcamdi.h
URL:
http://svn.reactos.org/svn/reactos/branches/header-work/include/psdk/usbcam…
==============================================================================
--- branches/header-work/include/psdk/usbcamdi.h [iso-8859-1] (original)
+++ branches/header-work/include/psdk/usbcamdi.h [iso-8859-1] Fri Mar 5 13:25:38 2010
@@ -21,10 +21,6 @@
*/
#pragma once
-
-#if !defined(__USB_H) && !defined(__USBDI_H)
-#error include usb.h or usbdi.h before usbcamdi.h
-#else
#ifdef __cplusplus
extern "C" {
@@ -36,12 +32,10 @@
#define USBCAMAPI DECLSPEC_IMPORT
#endif
-DEFINE_GUID(GUID_USBCAMD_INTERFACE,
- 0x2bcb75c0, 0xb27f, 0x11d1, 0xba, 0x41, 0x0, 0xa0, 0xc9, 0xd, 0x2b, 0x5);
-
-#define USBCAMD_PROCESSPACKETEX_DropFrame 0x0002
-#define USBCAMD_PROCESSPACKETEX_NextFrameIsStill 0x0004
-#define USBCAMD_PROCESSPACKETEX_CurrentFrameIsStill 0x0008
+typedef struct _pipe_config_descriptor {
+ CHAR StreamAssociation;
+ UCHAR PipeConfigFlags;
+} USBCAMD_Pipe_Config_Descriptor, *PUSBCAMD_Pipe_Config_Descriptor;
#define USBCAMD_DATA_PIPE 0x0001
#define USBCAMD_MULTIPLEX_PIPE 0x0002
@@ -52,13 +46,12 @@
#define USBCAMD_STILL_STREAM 0x2
#define USBCAMD_VIDEO_STILL_STREAM (USBCAMD_VIDEO_STREAM | USBCAMD_STILL_STREAM)
+#define USBCAMD_PROCESSPACKETEX_DropFrame 0x0002
+#define USBCAMD_PROCESSPACKETEX_NextFrameIsStill 0x0004
+#define USBCAMD_PROCESSPACKETEX_CurrentFrameIsStill 0x0008
+
#define USBCAMD_STOP_STREAM 0x00000001
#define USBCAMD_START_STREAM 0x00000000
-
-typedef struct _pipe_config_descriptor {
- CHAR StreamAssociation;
- UCHAR PipeConfigFlags;
-} USBCAMD_Pipe_Config_Descriptor, *PUSBCAMD_Pipe_Config_Descriptor;
typedef enum {
USBCAMD_CamControlFlag_NoVideoRawProcessing = 1,
@@ -68,19 +61,21 @@
} USBCAMD_CamControlFlags;
typedef NTSTATUS
-(NTAPI *PCAM_ALLOCATE_BW_ROUTINE)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN PULONG RawFrameLength,
- IN PVOID Format);
-
-typedef NTSTATUS
-(NTAPI *PCAM_ALLOCATE_BW_ROUTINE_EX)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN PULONG RawFrameLength,
- IN PVOID Format,
- IN ULONG StreamNumber);
+(NTAPI *PCOMMAND_COMPLETE_FUNCTION)(
+ IN PVOID DeviceContext,
+ IN OUT PVOID CommandContext,
+ IN NTSTATUS NtStatus);
+
+typedef VOID
+(NTAPI *PSTREAM_RECEIVE_PACKET)(
+ IN PVOID Srb,
+ IN PVOID DeviceContext,
+ IN PBOOLEAN Completed);
+
+typedef NTSTATUS
+(NTAPI *PCAM_INITIALIZE_ROUTINE)(
+ PDEVICE_OBJECT BusDeviceObject,
+ PVOID DeviceContext);
typedef NTSTATUS
(NTAPI *PCAM_CONFIGURE_ROUTINE)(
@@ -102,6 +97,32 @@
IN PUSB_DEVICE_DESCRIPTOR DeviceDescriptor);
typedef NTSTATUS
+(NTAPI *PCAM_START_CAPTURE_ROUTINE)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext);
+
+typedef NTSTATUS
+(NTAPI *PCAM_START_CAPTURE_ROUTINE_EX)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN ULONG StreamNumber);
+
+typedef NTSTATUS
+(NTAPI *PCAM_ALLOCATE_BW_ROUTINE)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN PULONG RawFrameLength,
+ IN PVOID Format);
+
+typedef NTSTATUS
+(NTAPI *PCAM_ALLOCATE_BW_ROUTINE_EX)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN PULONG RawFrameLength,
+ IN PVOID Format,
+ IN ULONG StreamNumber);
+
+typedef NTSTATUS
(NTAPI *PCAM_FREE_BW_ROUTINE)(
IN PDEVICE_OBJECT BusDeviceObject,
IN PVOID DeviceContext);
@@ -112,10 +133,45 @@
IN PVOID DeviceContext,
IN ULONG StreamNumber);
-typedef NTSTATUS
-(NTAPI *PCAM_INITIALIZE_ROUTINE)(
- PDEVICE_OBJECT BusDeviceObject,
- PVOID DeviceContext);
+typedef VOID
+(NTAPI *PADAPTER_RECEIVE_PACKET_ROUTINE)(
+ IN OUT PHW_STREAM_REQUEST_BLOCK Srb);
+
+typedef NTSTATUS
+(NTAPI *PCAM_STOP_CAPTURE_ROUTINE)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext);
+
+typedef NTSTATUS
+(NTAPI *PCAM_STOP_CAPTURE_ROUTINE_EX)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN ULONG StreamNumber);
+
+typedef ULONG
+(NTAPI *PCAM_PROCESS_PACKET_ROUTINE)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN PVOID CurrentFrameContext,
+ IN PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket OPTIONAL,
+ IN PVOID SyncBuffer OPTIONAL,
+ IN PUSBD_ISO_PACKET_DESCRIPTOR DataPacket OPTIONAL,
+ IN OUT PVOID DataBuffer,
+ OUT PBOOLEAN FrameComplete,
+ OUT PBOOLEAN NextFrameIsStill);
+
+typedef ULONG
+(NTAPI *PCAM_PROCESS_PACKET_ROUTINE_EX)(
+ IN PDEVICE_OBJECT BusDeviceObject,
+ IN PVOID DeviceContext,
+ IN PVOID CurrentFrameContext,
+ IN PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket OPTIONAL,
+ IN PVOID SyncBuffer OPTIONAL,
+ IN PUSBD_ISO_PACKET_DESCRIPTOR DataPacket OPTIONAL,
+ IN OUT PVOID DataBuffer,
+ OUT PBOOLEAN FrameComplete,
+ OUT PULONG PacketFlag,
+ OUT PULONG ValidDataOffset);
typedef VOID
(NTAPI *PCAM_NEW_FRAME_ROUTINE)(
@@ -155,57 +211,30 @@
IN ULONG ActualRawFrameLength,
IN ULONG StreamNumber);
-typedef ULONG
-(NTAPI *PCAM_PROCESS_PACKET_ROUTINE)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN PVOID CurrentFrameContext,
- IN PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket OPTIONAL,
- IN PVOID SyncBuffer OPTIONAL,
- IN PUSBD_ISO_PACKET_DESCRIPTOR DataPacket OPTIONAL,
- IN OUT PVOID DataBuffer,
- OUT PBOOLEAN FrameComplete,
- OUT PBOOLEAN NextFrameIsStill);
-
-typedef ULONG
-(NTAPI *PCAM_PROCESS_PACKET_ROUTINE_EX)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN PVOID CurrentFrameContext,
- IN PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket OPTIONAL,
- IN PVOID SyncBuffer OPTIONAL,
- IN PUSBD_ISO_PACKET_DESCRIPTOR DataPacket OPTIONAL,
- IN OUT PVOID DataBuffer,
- OUT PBOOLEAN FrameComplete,
- OUT PULONG PacketFlag,
- OUT PULONG ValidDataOffset);
-
typedef NTSTATUS
(NTAPI *PCAM_STATE_ROUTINE)(
IN PDEVICE_OBJECT BusDeviceObject,
IN PVOID DeviceContext);
-typedef NTSTATUS
-(NTAPI *PCAM_START_CAPTURE_ROUTINE)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext);
-
-typedef NTSTATUS
-(NTAPI *PCAM_START_CAPTURE_ROUTINE_EX)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN ULONG StreamNumber);
-
-typedef NTSTATUS
-(NTAPI *PCAM_STOP_CAPTURE_ROUTINE)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext);
-
-typedef NTSTATUS
-(NTAPI *PCAM_STOP_CAPTURE_ROUTINE_EX)(
- IN PDEVICE_OBJECT BusDeviceObject,
- IN PVOID DeviceContext,
- IN ULONG StreamNumber);
+#if defined(DEBUG_LOG)
+
+USBCAMAPI
+VOID
+NTAPI
+USBCAMD_Debug_LogEntry(
+ IN CHAR *Name,
+ IN ULONG Info1,
+ IN ULONG Info2,
+ IN ULONG Info3);
+
+#define ILOGENTRY(sig, info1, info2, info3) \
+ USBCAMD_Debug_LogEntry(sig, (ULONG)info1, (ULONG)info2, (ULONG)info3)
+
+#else
+
+#define ILOGENTRY(sig, info1, info2, info3)
+
+#endif /* DEBUG_LOG */
typedef struct _USBCAMD_DEVICE_DATA {
ULONG Sig;
@@ -239,39 +268,8 @@
PCAM_FREE_BW_ROUTINE_EX CamFreeBandwidthEx;
} USBCAMD_DEVICE_DATA2, *PUSBCAMD_DEVICE_DATA2;
-USBCAMAPI
-ULONG
-NTAPI
-USBCAMD_InitializeNewInterface(
- IN PVOID DeviceContext,
- IN PVOID DeviceData,
- IN ULONG Version,
- IN ULONG CamControlFlag);
-
-typedef NTSTATUS
-(NTAPI *PCOMMAND_COMPLETE_FUNCTION)(
- IN PVOID DeviceContext,
- IN OUT PVOID CommandContext,
- IN NTSTATUS NtStatus);
-
-typedef NTSTATUS
-(NTAPI *PFNUSBCAMD_BulkReadWrite)(
- IN PVOID DeviceContext,
- IN USHORT PipeIndex,
- IN PVOID Buffer,
- IN ULONG BufferLength,
- IN PCOMMAND_COMPLETE_FUNCTION CommandComplete,
- IN PVOID CommandContext);
-
-typedef NTSTATUS
-(NTAPI *PFNUSBCAMD_SetIsoPipeState)(
- IN PVOID DeviceContext,
- IN ULONG PipeStateFlags);
-
-typedef NTSTATUS
-(NTAPI *PFNUSBCAMD_CancelBulkReadWrite)(
- IN PVOID DeviceContext,
- IN ULONG PipeIndex);
+DEFINE_GUID(GUID_USBCAMD_INTERFACE,
+ 0x2bcb75c0, 0xb27f, 0x11d1, 0xba, 0x41, 0x0, 0xa0, 0xc9, 0xd, 0x2b, 0x5);
typedef NTSTATUS
(NTAPI *PFNUSBCAMD_SetVideoFormat)(
@@ -288,9 +286,24 @@
IN PVOID EventContext,
IN BOOLEAN LoopBack);
-typedef VOID
-(NTAPI *PADAPTER_RECEIVE_PACKET_ROUTINE)(
- IN OUT PHW_STREAM_REQUEST_BLOCK Srb);
+typedef NTSTATUS
+(NTAPI *PFNUSBCAMD_CancelBulkReadWrite)(
+ IN PVOID DeviceContext,
+ IN ULONG PipeIndex);
+
+typedef NTSTATUS
+(NTAPI *PFNUSBCAMD_SetIsoPipeState)(
+ IN PVOID DeviceContext,
+ IN ULONG PipeStateFlags);
+
+typedef NTSTATUS
+(NTAPI *PFNUSBCAMD_BulkReadWrite)(
+ IN PVOID DeviceContext,
+ IN USHORT PipeIndex,
+ IN PVOID Buffer,
+ IN ULONG BufferLength,
+ IN PCOMMAND_COMPLETE_FUNCTION CommandComplete,
+ IN PVOID CommandContext);
#define USBCAMD_VERSION_200 0x200
@@ -303,13 +316,17 @@
PFNUSBCAMD_CancelBulkReadWrite USBCAMD_CancelBulkReadWrite;
} USBCAMD_INTERFACE, *PUSBCAMD_INTERFACE;
-typedef VOID
-(NTAPI *PSTREAM_RECEIVE_PACKET)(
- IN PVOID Srb,
- IN PVOID DeviceContext,
- IN PBOOLEAN Completed);
-
/* FIXME : Do we need USBCAMAPI here ? */
+
+USBCAMAPI
+ULONG
+NTAPI
+USBCAMD_DriverEntry(
+ IN PVOID Context1,
+ IN PVOID Context2,
+ IN ULONG DeviceContextSize,
+ IN ULONG FrameContextSize,
+ IN PADAPTER_RECEIVE_PACKET_ROUTINE ReceivePacket);
USBCAMAPI
PVOID
@@ -335,14 +352,11 @@
IN PVOID CommandContext OPTIONAL);
USBCAMAPI
-ULONG
-NTAPI
-USBCAMD_DriverEntry(
- IN PVOID Context1,
- IN PVOID Context2,
- IN ULONG DeviceContextSize,
- IN ULONG FrameContextSize,
- IN PADAPTER_RECEIVE_PACKET_ROUTINE ReceivePacket);
+NTSTATUS
+NTAPI
+USBCAMD_SelectAlternateInterface(
+ IN PVOID DeviceContext,
+ IN OUT PUSBD_INTERFACE_INFORMATION RequestInterface);
USBCAMAPI
NTSTATUS
@@ -355,31 +369,13 @@
IN ULONG DataLength);
USBCAMAPI
-NTSTATUS
-NTAPI
-USBCAMD_SelectAlternateInterface(
- IN PVOID DeviceContext,
- IN OUT PUSBD_INTERFACE_INFORMATION RequestInterface);
-
-#if defined(DEBUG_LOG)
-
-USBCAMAPI
-VOID
-NTAPI
-USBCAMD_Debug_LogEntry(
- IN CHAR *Name,
- IN ULONG Info1,
- IN ULONG Info2,
- IN ULONG Info3);
-
-#define ILOGENTRY(sig, info1, info2, info3) \
- USBCAMD_Debug_LogEntry(sig, (ULONG)info1, (ULONG)info2, (ULONG)info3)
-
-#else
-
-#define ILOGENTRY(sig, info1, info2, info3)
-
-#endif /* DEBUG_LOG */
+ULONG
+NTAPI
+USBCAMD_InitializeNewInterface(
+ IN PVOID DeviceContext,
+ IN PVOID DeviceData,
+ IN ULONG Version,
+ IN ULONG CamControlFlag);
#ifdef __cplusplus
}