📄 patch.txt
字号:
--- /dos/g/winddk/src/wdm/usb/bulkusb/sys/bulkusb.h Fri Aug 17 12:54:32 2001
+++ /dos/g/winddk/src/wdm/usb/tiglusb/sys/bulkusb.h Wed Jul 3 11:18:42 2002
@@ -97,7 +97,7 @@
(_Data_)->DeviceState = (_Data_)->PrevDevState;
-#define BULKUSB_MAX_TRANSFER_SIZE 256
+#define BULKUSB_MAX_TRANSFER_SIZE 32 // roms
#define BULKUSB_TEST_BOARD_TRANSFER_BUFFER_SIZE (64 *1024 )
//
@@ -106,7 +106,7 @@
//
#define BULKUSB_REGISTRY_PARAMETERS_PATH \
- L"\\REGISTRY\\Machine\\System\\CurrentControlSet\\SERVICES\\BULKUSB\\Parameters"
+ L"\\REGISTRY\\Machine\\System\\CurrentControlSet\\SERVICES\\TIGLUSB\\Parameters" //roms
typedef struct _BULKUSB_PIPE_CONTEXT {
--- /dos/g/winddk/src/wdm/usb/bulkusb/sys/bulkusr.h Fri Aug 17 12:54:32 2001
+++ /dos/g/winddk/src/wdm/usb/tiglusb/sys/bulkusr.h Wed Jul 3 11:23:10 2002
@@ -46,5 +46,31 @@
METHOD_BUFFERED, \
FILE_ANY_ACCESS)
+//roms: new IOCTL codes, will be removed later
+#define IOCTL_BULKUSB_RESET_PIPES CTL_CODE(FILE_DEVICE_UNKNOWN, \
+ BULKUSB_IOCTL_INDEX + 3, \
+ METHOD_BUFFERED, \
+ FILE_ANY_ACCESS)
+
+#define IOCTL_BULKUSB_ABORT_PIPES CTL_CODE(FILE_DEVICE_UNKNOWN, \
+ BULKUSB_IOCTL_INDEX + 4, \
+ METHOD_BUFFERED, \
+ FILE_ANY_ACCESS)
+
+#define IOCTL_BULKUSB_CANCEL_PENDING_IO CTL_CODE(FILE_DEVICE_UNKNOWN, \
+ BULKUSB_IOCTL_INDEX + 5, \
+ METHOD_BUFFERED, \
+ FILE_ANY_ACCESS)
+
+#define IOCTL_BULKUSB_SET_TIMEOUT CTL_CODE(FILE_DEVICE_UNKNOWN, \
+ BULKUSB_IOCTL_INDEX + 6, \
+ METHOD_BUFFERED, \
+ FILE_ANY_ACCESS)
+
+#define IOCTL_BULKUSB_GET_TIMEOUT CTL_CODE(FILE_DEVICE_UNKNOWN, \
+ BULKUSB_IOCTL_INDEX + 7, \
+ METHOD_BUFFERED, \
+ FILE_ANY_ACCESS)
+
#endif
--- /dos/g/winddk/src/wdm/usb/bulkusb/sys/bulkdev.c Fri Aug 17 12:54:30 2001
+++ /dos/g/winddk/src/wdm/usb/tiglusb/sys/bulkdev.c Wed Jul 3 11:56:24 2002
@@ -409,6 +409,33 @@
break;
+ case IOCTL_BULKUSB_RESET_PIPES:
+ {
+ PUSBD_PIPE_INFORMATION pipeIn, pipeOut;
+ PFILE_OBJECT fileObject;
+
+ BulkUsb_DbgPrint(3, ("IOCTL_BULKUSB_RESET_PIPES"));
+
+ // get our context and see if it is a pipe
+ fileObject = irpStack->FileObject;
+
+ pipeIn = &deviceExtension->UsbInterface->Pipes[0];
+ pipeOut = &deviceExtension->UsbInterface->Pipes[1];
+
+ if(pipeIn == NULL || pipeOut == NULL) {
+ // error, this is not a pipe
+ ntStatus = STATUS_INVALID_PARAMETER;
+ }
+ else {
+ BulkUsb_ResetPipe(DeviceObject, pipeIn );
+ BulkUsb_ResetPipe(DeviceObject, pipeOut);
+
+ ntStatus = STATUS_SUCCESS;
+ }
+
+ break;
+ }
+
default :
ntStatus = STATUS_INVALID_DEVICE_REQUEST;
--- /dos/g/winddk/src/wdm/usb/bulkusb/sys/bulkrwr.c Fri Aug 17 12:54:32 2001
+++ /dos/g/winddk/src/wdm/usb/tiglusb/sys/bulkrwr.c Wed Jul 3 11:47:48 2002
@@ -546,8 +546,8 @@
}
}
else {
-
- BulkUsb_DbgPrint(1, ("ReadWriteCompletion - failed with status = %X\n", ntStatus));
+
+ BulkUsb_DbgPrint(1, ("ReadWriteCompletion - failed with status = %X\n", ntStatus));
}
if(rwContext) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -