Status of USB driver support?
Alexander Morozov
amorozov at etersoft.ru
Fri Feb 20 03:28:38 CST 2009
On Thursday 19 February 2009 16:55:20 emiliano esposito wrote:
> Unhandled exception: unimplemented function
> usbd.sys.USBD_GetUSBDIVersion called in 32-bit code (0x7ee2e923)
You can try attached patch
-------------- next part --------------
From b7fad82130608126244ba2aee3f91b3337229fb3 Mon Sep 17 00:00:00 2001
From: Alexander Morozov <amorozov at etersoft.ru>
Date: Fri, 20 Feb 2009 12:14:33 +0300
Subject: [PATCH 3/3] usbd.sys: Implement USBD_GetUSBDIVersion.
---
dlls/usbd.sys/usbd.c | 7 +++++++
dlls/usbd.sys/usbd.sys.spec | 2 +-
include/ddk/usb.h | 6 ++++++
3 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/dlls/usbd.sys/usbd.c b/dlls/usbd.sys/usbd.c
index 8c2a8f9..c7c8fab 100644
--- a/dlls/usbd.sys/usbd.c
+++ b/dlls/usbd.sys/usbd.c
@@ -132,6 +132,13 @@ PURB WINAPI USBD_CreateConfigurationRequest(
return urb;
}
+void WINAPI USBD_GetUSBDIVersion( PUSBD_VERSION_INFORMATION VersionInformation )
+{
+ TRACE( "%p\n", VersionInformation );
+ VersionInformation->USBDI_Version = 0x300;
+ VersionInformation->Supported_USB_Version = 0x100;
+}
+
NTSTATUS WINAPI DriverEntry( DRIVER_OBJECT *driver, UNICODE_STRING *path )
{
return STATUS_SUCCESS;
diff --git a/dlls/usbd.sys/usbd.sys.spec b/dlls/usbd.sys/usbd.sys.spec
index 5d0377c..a18bbf8 100644
--- a/dlls/usbd.sys/usbd.sys.spec
+++ b/dlls/usbd.sys/usbd.sys.spec
@@ -19,7 +19,7 @@
@ stub USBD_GetInterfaceLength
@ stub USBD_GetPdoRegistryParameter
@ stub USBD_GetSuspendPowerState
-@ stub USBD_GetUSBDIVersion
+@ stdcall USBD_GetUSBDIVersion(ptr)
@ stub USBD_InitializeDevice
@ stub USBD_MakePdoName
@ stub USBD_ParseConfigurationDescriptor
diff --git a/include/ddk/usb.h b/include/ddk/usb.h
index b8f5f3f..a5db726 100644
--- a/include/ddk/usb.h
+++ b/include/ddk/usb.h
@@ -82,6 +82,12 @@ typedef PVOID USBD_PIPE_HANDLE;
typedef PVOID USBD_CONFIGURATION_HANDLE;
typedef PVOID USBD_INTERFACE_HANDLE;
+typedef struct _USBD_VERSION_INFORMATION {
+ ULONG USBDI_Version;
+ ULONG Supported_USB_Version;
+} USBD_VERSION_INFORMATION;
+typedef struct _USBD_VERSION_INFORMATION *PUSBD_VERSION_INFORMATION;
+
typedef enum _USBD_PIPE_TYPE {
UsbdPipeTypeControl,
UsbdPipeTypeIsochronous,
--
1.6.1.3.GIT
More information about the wine-devel
mailing list