[PATCH v6 resend 1/5] include/ddk: Add winusbio.h file.

Mohamad Al-Jaf mohamadaljaf at gmail.com
Thu Jun 9 23:07:14 CDT 2022


Needed by winusb.h.

Signed-off-by: Mohamad Al-Jaf <mohamadaljaf at gmail.com>
---
 include/Makefile.in    |  1 +
 include/ddk/winusbio.h | 66 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+)
 create mode 100644 include/ddk/winusbio.h

diff --git a/include/Makefile.in b/include/Makefile.in
index f3e62c4bb5a..58bf7db1e13 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -211,6 +211,7 @@ SOURCES = \
 	ddk/wdm.h \
 	ddk/winddiui.h \
 	ddk/winsplp.h \
+	ddk/winusbio.h \
 	ddk/wsk.h \
 	ddraw.h \
 	ddrawgdi.h \
diff --git a/include/ddk/winusbio.h b/include/ddk/winusbio.h
new file mode 100644
index 00000000000..14d8230d87f
--- /dev/null
+++ b/include/ddk/winusbio.h
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2022 Mohamad Al-Jaf
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#ifndef _WINUSBIO_H_
+#define _WINUSBIO_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+DEFINE_GUID(WinUSB_TestGuid, 0XDA812BFF, 0X12C3, 0X46A2, 0X8E, 0X2B, 0XDB, 0XD3, 0XB7, 0X83, 0X4C, 0X43);
+
+#define SHORT_PACKET_TERMINATE 0x01
+#define AUTO_CLEAR_STALL       0x02
+#define PIPE_TRANSFER_TIMEOUT  0x03
+#define IGNORE_SHORT_PACKETS   0x04
+#define ALLOW_PARTIAL_READS    0x05
+#define AUTO_FLUSH             0x06
+#define RAW_IO                 0x07
+#define MAXIMUM_TRANSFER_SIZE  0x08
+#define RESET_PIPE_ON_RESUME   0x09
+
+typedef struct _WINUSB_PIPE_INFORMATION {
+    USBD_PIPE_TYPE PipeType;
+    UCHAR PipeId;
+    USHORT MaximumPacketSize;
+    UCHAR Interval;
+} WINUSB_PIPE_INFORMATION, *PWINUSB_PIPE_INFORMATION;
+
+#define AUTO_SUSPEND  0x81
+#define SUSPEND_DELAY 0x83
+
+#define DEVICE_SPEED  0x01
+
+#define LowSpeed      0x01
+#define FullSpeed     0x02
+#define HighSpeed     0x03
+
+typedef struct _WINUSB_PIPE_INFORMATION_EX {
+    USBD_PIPE_TYPE PipeType;
+    UCHAR PipeId;
+    USHORT MaximumPacketSize;
+    UCHAR Interval;
+    ULONG MaximumBytesPerInterval;
+} WINUSB_PIPE_INFORMATION_EX, *PWINUSB_PIPE_INFORMATION_EX;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINUSBIO_H_ */
-- 
2.36.0




More information about the wine-devel mailing list