mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 09:16:17 +00:00
- Brandon Turner's warning fixing patch
- When compiled with gcc we assume that CPU can't do TSC (the function will be rewritten anyway since it's weird to use inline assembly in a driver) - Changed to the correct .rc file, removed duplicate one (ehci.rc) - usbdriver now compiles with reactos build system svn path=/trunk/; revision=23610
This commit is contained in:
parent
6da011c669
commit
1f4c3ee955
6 changed files with 34 additions and 92 deletions
|
@ -1,3 +1,3 @@
|
||||||
<!--<directory name="usbdriver">
|
<directory name="usbdriver">
|
||||||
<xi:include href="usbdriver/usbdriver.rbuild" />
|
<xi:include href="usbdriver/usbdriver.rbuild" />
|
||||||
</directory>-->
|
</directory>
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
// Resource script for USBISO driver
|
|
||||||
// Generated by Walt Oney's driver wizard
|
|
||||||
|
|
||||||
#include <windows.h>
|
|
||||||
|
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL
|
|
||||||
|
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
|
||||||
FILEVERSION 0,0,1,0
|
|
||||||
PRODUCTVERSION 0,0,1,0
|
|
||||||
FILEFLAGSMASK 0x3fL
|
|
||||||
#ifdef _DEBUG
|
|
||||||
FILEFLAGS 0x1L
|
|
||||||
#else
|
|
||||||
FILEFLAGS 0x0L
|
|
||||||
#endif
|
|
||||||
FILEOS 0x40004L
|
|
||||||
FILETYPE 0x1L
|
|
||||||
FILESUBTYPE 0x0L
|
|
||||||
BEGIN
|
|
||||||
BLOCK "StringFileInfo"
|
|
||||||
BEGIN
|
|
||||||
BLOCK "040904b0"
|
|
||||||
BEGIN
|
|
||||||
VALUE "Comments", "This is a beta version of usb driver stack( ehci ), contact me at mypublic99@yahoo.com\0"
|
|
||||||
VALUE "CompanyName", "Woodhead Software\0"
|
|
||||||
VALUE "FileDescription", "ehci.sys\0"
|
|
||||||
VALUE "FileVersion", "0, 0, 1, 0\0"
|
|
||||||
VALUE "InternalName", "ehci.sys\0"
|
|
||||||
VALUE "LegalCopyright", "Copyright © 2002-2004 Woodhead Software\0"
|
|
||||||
VALUE "LegalTrademarks", "\0"
|
|
||||||
VALUE "OriginalFilename", "ehci.sys\0"
|
|
||||||
VALUE "PrivateBuild", "0.01\0"
|
|
||||||
VALUE "ProductName", "usb driver stack for windows NT\0"
|
|
||||||
VALUE "ProductVersion", "0, 0, 1, 0\0"
|
|
||||||
VALUE "SpecialBuild", "0131.d\0"
|
|
||||||
END
|
|
||||||
END
|
|
||||||
BLOCK "VarFileInfo"
|
|
||||||
BEGIN
|
|
||||||
VALUE "Translation", 0x409, 1200
|
|
||||||
END
|
|
||||||
END
|
|
||||||
|
|
|
@ -57,7 +57,7 @@
|
||||||
return;\
|
return;\
|
||||||
}
|
}
|
||||||
|
|
||||||
extern POBJECT_TYPE *IoDriverObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoDriverObjectType;
|
||||||
|
|
||||||
extern VOID
|
extern VOID
|
||||||
disp_urb_completion(
|
disp_urb_completion(
|
||||||
|
@ -295,9 +295,8 @@ DEV_HANDLE dev_handle
|
||||||
PUSB_CTRL_SETUP_PACKET psetup;
|
PUSB_CTRL_SETUP_PACKET psetup;
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
PUCHAR buf;
|
PUCHAR buf;
|
||||||
LONG credit, i, j, match;
|
LONG i;
|
||||||
PUSB_CONFIGURATION_DESC pconfig_desc;
|
PUSB_CONFIGURATION_DESC pconfig_desc;
|
||||||
PUSB_INTERFACE_DESC pif_desc;
|
|
||||||
PUSB_DEV_MANAGER dev_mgr;
|
PUSB_DEV_MANAGER dev_mgr;
|
||||||
|
|
||||||
if( param == NULL || dev_handle == 0 )
|
if( param == NULL || dev_handle == 0 )
|
||||||
|
@ -401,7 +400,6 @@ ULONG param
|
||||||
// and call its AddDevice.
|
// and call its AddDevice.
|
||||||
//
|
//
|
||||||
LONG i;
|
LONG i;
|
||||||
NTSTATUS status;
|
|
||||||
PUSB_DRIVER pdrvr;
|
PUSB_DRIVER pdrvr;
|
||||||
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
||||||
PGENDRV_EXT_DRVR_ENTRY pentry;
|
PGENDRV_EXT_DRVR_ENTRY pentry;
|
||||||
|
@ -411,10 +409,9 @@ ULONG param
|
||||||
|
|
||||||
PDEVICE_OBJECT pdev_obj;
|
PDEVICE_OBJECT pdev_obj;
|
||||||
PDRIVER_OBJECT pdrvr_obj;
|
PDRIVER_OBJECT pdrvr_obj;
|
||||||
HANDLE handle;
|
|
||||||
PLIST_ENTRY pthis, pnext;
|
PLIST_ENTRY pthis, pnext;
|
||||||
|
|
||||||
USE_IRQL;
|
USE_BASIC_NON_PENDING_IRQL;
|
||||||
|
|
||||||
if( pdev == NULL )
|
if( pdev == NULL )
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -509,12 +506,11 @@ PVOID context
|
||||||
{
|
{
|
||||||
DEV_HANDLE dev_handle;
|
DEV_HANDLE dev_handle;
|
||||||
PUSB_DEV_MANAGER dev_mgr;
|
PUSB_DEV_MANAGER dev_mgr;
|
||||||
PWORK_QUEUE_ITEM pwork_item;
|
|
||||||
PUSB_DRIVER pdriver;
|
PUSB_DRIVER pdriver;
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
PUSB_DEV pdev;
|
PUSB_DEV pdev;
|
||||||
PUSB_EVENT pevent;
|
PUSB_EVENT pevent;
|
||||||
USE_IRQL;
|
USE_BASIC_NON_PENDING_IRQL;
|
||||||
|
|
||||||
if( purb == NULL || context == NULL )
|
if( purb == NULL || context == NULL )
|
||||||
return;
|
return;
|
||||||
|
@ -576,7 +572,7 @@ PVOID context
|
||||||
pevent->context = 0;
|
pevent->context = 0;
|
||||||
pevent->param = ( ULONG )pdriver;
|
pevent->param = ( ULONG )pdriver;
|
||||||
pevent->pnext = 0; //vertical queue for serialized operation
|
pevent->pnext = 0; //vertical queue for serialized operation
|
||||||
pevent->process_event = gendrv_event_select_driver;
|
pevent->process_event = (PROCESS_EVENT)gendrv_event_select_driver;
|
||||||
pevent->process_queue = event_list_default_process_queue;
|
pevent->process_queue = event_list_default_process_queue;
|
||||||
|
|
||||||
InsertTailList( &dev_mgr->event_list, &pevent->event_link );
|
InsertTailList( &dev_mgr->event_list, &pevent->event_link );
|
||||||
|
@ -828,7 +824,6 @@ PDEVICE_OBJECT pdev_obj,
|
||||||
PVOID pctx
|
PVOID pctx
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
PDRIVER_EXTENSION pwin_drvr_ext;
|
|
||||||
if( pdev_obj == NULL )
|
if( pdev_obj == NULL )
|
||||||
return STATUS_INVALID_PARAMETER;
|
return STATUS_INVALID_PARAMETER;
|
||||||
|
|
||||||
|
@ -842,7 +837,7 @@ PVOID pctx
|
||||||
pdrvr_obj = (PDRIVER_OBJECT )pctx;
|
pdrvr_obj = (PDRIVER_OBJECT )pctx;
|
||||||
if( pdrvr_obj->DriverExtension )
|
if( pdrvr_obj->DriverExtension )
|
||||||
{
|
{
|
||||||
return pdrvr_obj->DriverExtension->AddDevice( pdrvr_obj, &pdev_obj );
|
return pdrvr_obj->DriverExtension->AddDevice( pdrvr_obj, pdev_obj );
|
||||||
}
|
}
|
||||||
return STATUS_IO_DEVICE_ERROR;
|
return STATUS_IO_DEVICE_ERROR;
|
||||||
}
|
}
|
||||||
|
@ -896,9 +891,8 @@ DEV_HANDLE if_handle
|
||||||
|
|
||||||
PDEVICE_OBJECT pdev_obj;
|
PDEVICE_OBJECT pdev_obj;
|
||||||
PDRIVER_OBJECT pdrvr_obj;
|
PDRIVER_OBJECT pdrvr_obj;
|
||||||
HANDLE handle;
|
|
||||||
PLIST_ENTRY pthis, pnext;
|
PLIST_ENTRY pthis, pnext;
|
||||||
USE_IRQL;
|
USE_BASIC_NON_PENDING_IRQL;
|
||||||
|
|
||||||
pdev = NULL;
|
pdev = NULL;
|
||||||
usb_dbg_print( DBGLVL_MAXIMUM, ( "gendrv_if_connect(): entering...\n" ) );
|
usb_dbg_print( DBGLVL_MAXIMUM, ( "gendrv_if_connect(): entering...\n" ) );
|
||||||
|
@ -1062,13 +1056,11 @@ BOOL is_if
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
PUSB_DEV pdev;
|
PUSB_DEV pdev;
|
||||||
PDEVICE_OBJECT dev_obj;
|
PDEVICE_OBJECT dev_obj = NULL;
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
PUSB_DRIVER pdrvr;
|
PUSB_DRIVER pdrvr;
|
||||||
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
PGENDRV_DRVR_EXTENSION pdrvr_ext = NULL;
|
||||||
PGENDRV_EXT_DRVR_ENTRY pentry;
|
PGENDRV_DEVICE_EXTENSION pdev_ext = NULL;
|
||||||
PLIST_ENTRY pthis;
|
|
||||||
PGENDRV_DEVICE_EXTENSION pdev_ext;
|
|
||||||
ULONG if_idx;
|
ULONG if_idx;
|
||||||
|
|
||||||
status = usb_query_and_lock_dev( dev_mgr, if_handle, &pdev );
|
status = usb_query_and_lock_dev( dev_mgr, if_handle, &pdev );
|
||||||
|
@ -1178,8 +1170,7 @@ PUSB_DRIVER pdriver
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
||||||
LONG i;
|
PLIST_ENTRY pthis;
|
||||||
PLIST_ENTRY pthis, pnext;
|
|
||||||
PGENDRV_EXT_DRVR_ENTRY pentry;
|
PGENDRV_EXT_DRVR_ENTRY pentry;
|
||||||
if( dev_mgr == NULL || pdriver == NULL )
|
if( dev_mgr == NULL || pdriver == NULL )
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -1225,7 +1216,7 @@ PUNICODE_STRING unicode_string
|
||||||
OBJECT_ATTRIBUTES oa;
|
OBJECT_ATTRIBUTES oa;
|
||||||
HANDLE drvr_handle;
|
HANDLE drvr_handle;
|
||||||
UNICODE_STRING oname;
|
UNICODE_STRING oname;
|
||||||
PDRIVER_OBJECT pdrvr;
|
PDRIVER_OBJECT pdrvr = NULL;
|
||||||
|
|
||||||
RtlZeroMemory( &oa, sizeof( oa ) );
|
RtlZeroMemory( &oa, sizeof( oa ) );
|
||||||
oa.Length = sizeof( oa );
|
oa.Length = sizeof( oa );
|
||||||
|
@ -1235,7 +1226,7 @@ PUNICODE_STRING unicode_string
|
||||||
RtlAppendUnicodeStringToString( &oname, unicode_string );
|
RtlAppendUnicodeStringToString( &oname, unicode_string );
|
||||||
|
|
||||||
status = ObOpenObjectByName( &oa,
|
status = ObOpenObjectByName( &oa,
|
||||||
*IoDriverObjectType, // object type
|
IoDriverObjectType, // object type
|
||||||
KernelMode, // access mode
|
KernelMode, // access mode
|
||||||
NULL, // access state
|
NULL, // access state
|
||||||
FILE_READ_DATA, // STANDARD_RIGHTS_READ, access right
|
FILE_READ_DATA, // STANDARD_RIGHTS_READ, access right
|
||||||
|
@ -1248,9 +1239,9 @@ PUNICODE_STRING unicode_string
|
||||||
}
|
}
|
||||||
ObReferenceObjectByHandle( drvr_handle,
|
ObReferenceObjectByHandle( drvr_handle,
|
||||||
FILE_READ_DATA,
|
FILE_READ_DATA,
|
||||||
*IoDriverObjectType,
|
IoDriverObjectType,
|
||||||
KernelMode,
|
KernelMode,
|
||||||
&pdrvr,
|
(PVOID)&pdrvr,
|
||||||
NULL // OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL
|
NULL // OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL
|
||||||
);
|
);
|
||||||
ZwClose( drvr_handle );
|
ZwClose( drvr_handle );
|
||||||
|
@ -1334,8 +1325,6 @@ PIRP irp
|
||||||
}
|
}
|
||||||
else if( irpstack->MinorFunction == IOCTL_GET_DEV_HANDLE )
|
else if( irpstack->MinorFunction == IOCTL_GET_DEV_HANDLE )
|
||||||
{
|
{
|
||||||
PUCHAR user_buffer;
|
|
||||||
ULONG user_buffer_length;
|
|
||||||
PGENDRV_DEVICE_EXTENSION pdev_ext;
|
PGENDRV_DEVICE_EXTENSION pdev_ext;
|
||||||
pdev_ext = dev_obj->DeviceExtension;
|
pdev_ext = dev_obj->DeviceExtension;
|
||||||
if( irpstack->Parameters.DeviceIoControl.OutputBufferLength < sizeof( LONG ) )
|
if( irpstack->Parameters.DeviceIoControl.OutputBufferLength < sizeof( LONG ) )
|
||||||
|
@ -1383,8 +1372,6 @@ PIRP irp
|
||||||
}
|
}
|
||||||
else if( irpstack->MinorFunction == IOCTL_GET_DEV_HANDLE )
|
else if( irpstack->MinorFunction == IOCTL_GET_DEV_HANDLE )
|
||||||
{
|
{
|
||||||
PUCHAR user_buffer;
|
|
||||||
ULONG user_buffer_length;
|
|
||||||
PGENDRV_DEVICE_EXTENSION pdev_ext;
|
PGENDRV_DEVICE_EXTENSION pdev_ext;
|
||||||
pdev_ext = dev_obj->DeviceExtension;
|
pdev_ext = dev_obj->DeviceExtension;
|
||||||
if( irpstack->Parameters.DeviceIoControl.OutputBufferLength < sizeof( LONG ) )
|
if( irpstack->Parameters.DeviceIoControl.OutputBufferLength < sizeof( LONG ) )
|
||||||
|
@ -1409,14 +1396,14 @@ PDEVICE_OBJECT dev_obj,
|
||||||
PUSB_DEV_MANAGER dev_mgr
|
PUSB_DEV_MANAGER dev_mgr
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
PDEVEXT_HEADER dev_hdr;
|
PDEVEXT_HEADER dev_hdr = NULL;
|
||||||
if( dev_obj == NULL || dev_mgr == NULL )
|
if( dev_obj == NULL || dev_mgr == NULL )
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
dev_hdr = ( PDEVEXT_HEADER )dev_obj->DeviceExtension;
|
dev_hdr = ( PDEVEXT_HEADER )dev_obj->DeviceExtension;
|
||||||
dev_hdr->type = NTDEV_TYPE_CLIENT_DEV;
|
dev_hdr->type = NTDEV_TYPE_CLIENT_DEV;
|
||||||
dev_hdr->dispatch = gendrv_dispatch;
|
dev_hdr->dispatch = gendrv_dispatch;
|
||||||
dev_hdr->start_io = gendrv_startio;
|
dev_hdr->start_io = (PDRIVER_STARTIO)gendrv_startio;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1557,7 +1544,6 @@ PDEVICE_OBJECT dev_obj
|
||||||
UCHAR dev_name[ 64 ];
|
UCHAR dev_name[ 64 ];
|
||||||
STRING string;
|
STRING string;
|
||||||
UNICODE_STRING symb_link;
|
UNICODE_STRING symb_link;
|
||||||
NTSTATUS status;
|
|
||||||
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
PGENDRV_DRVR_EXTENSION pdrvr_ext;
|
||||||
|
|
||||||
if( dev_mgr == NULL || dev_obj == 0 )
|
if( dev_mgr == NULL || dev_obj == 0 )
|
||||||
|
@ -1810,7 +1796,7 @@ IN PIRP irp
|
||||||
PIO_STACK_LOCATION irp_stack;
|
PIO_STACK_LOCATION irp_stack;
|
||||||
ULONG ctrl_code;
|
ULONG ctrl_code;
|
||||||
PUSB_DEV_MANAGER dev_mgr;
|
PUSB_DEV_MANAGER dev_mgr;
|
||||||
USE_IRQL;
|
USE_NON_PENDING_IRQL;
|
||||||
|
|
||||||
if( dev_obj == NULL || irp == NULL )
|
if( dev_obj == NULL || irp == NULL )
|
||||||
return;
|
return;
|
||||||
|
@ -1847,17 +1833,14 @@ IN PIRP irp
|
||||||
case IOCTL_SUBMIT_URB_NOIO:
|
case IOCTL_SUBMIT_URB_NOIO:
|
||||||
case IOCTL_SUBMIT_URB_WR:
|
case IOCTL_SUBMIT_URB_WR:
|
||||||
{
|
{
|
||||||
LONG buf_size;
|
|
||||||
PURB purb;
|
PURB purb;
|
||||||
KIRQL old_irql;
|
ULONG endp_idx, if_idx, user_buffer_length = 0;
|
||||||
ULONG endp_idx, if_idx, user_buffer_length;
|
PUCHAR user_buffer = NULL;
|
||||||
PUCHAR user_buffer;
|
|
||||||
PUSB_DEV pdev;
|
PUSB_DEV pdev;
|
||||||
DEV_HANDLE endp_handle;
|
DEV_HANDLE endp_handle;
|
||||||
PUSB_ENDPOINT pendp;
|
PUSB_ENDPOINT pendp;
|
||||||
|
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
PUSB_CTRL_SETUP_PACKET psetup;
|
|
||||||
|
|
||||||
if( irp_stack->Parameters.DeviceIoControl.InputBufferLength < sizeof( URB ) )
|
if( irp_stack->Parameters.DeviceIoControl.InputBufferLength < sizeof( URB ) )
|
||||||
{
|
{
|
||||||
|
@ -2004,8 +1987,7 @@ PDEVICE_OBJECT dev_obj
|
||||||
KIRQL cancelIrql;
|
KIRQL cancelIrql;
|
||||||
PIRP irp, cur_irp;
|
PIRP irp, cur_irp;
|
||||||
PKDEVICE_QUEUE_ENTRY packet;
|
PKDEVICE_QUEUE_ENTRY packet;
|
||||||
LIST_ENTRY cancel_irps, *pthis, *pnext;
|
LIST_ENTRY cancel_irps, *pthis;
|
||||||
PDEVEXT_HEADER dev_hdr;
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// cancel all the irps in the queue
|
// cancel all the irps in the queue
|
||||||
|
@ -2018,7 +2000,7 @@ PDEVICE_OBJECT dev_obj
|
||||||
// remove the irps from device queue
|
// remove the irps from device queue
|
||||||
IoAcquireCancelSpinLock( &cancelIrql );
|
IoAcquireCancelSpinLock( &cancelIrql );
|
||||||
cur_irp = dev_obj->CurrentIrp;
|
cur_irp = dev_obj->CurrentIrp;
|
||||||
while( packet = KeRemoveDeviceQueue( &dev_obj->DeviceQueue ) )
|
while(( packet = KeRemoveDeviceQueue( &dev_obj->DeviceQueue ) ))
|
||||||
{
|
{
|
||||||
irp = struct_ptr( packet, IRP, Tail.Overlay.DeviceQueueEntry );
|
irp = struct_ptr( packet, IRP, Tail.Overlay.DeviceQueueEntry );
|
||||||
InsertTailList( &cancel_irps, &irp->Tail.Overlay.DeviceQueueEntry.DeviceListEntry );
|
InsertTailList( &cancel_irps, &irp->Tail.Overlay.DeviceQueueEntry.DeviceListEntry );
|
||||||
|
@ -2050,7 +2032,6 @@ PIRP pirp
|
||||||
// cancel routine for irps queued in the device queue
|
// cancel routine for irps queued in the device queue
|
||||||
PUSB_DEV_MANAGER dev_mgr;
|
PUSB_DEV_MANAGER dev_mgr;
|
||||||
PDEVEXT_HEADER pdev_ext_hdr;
|
PDEVEXT_HEADER pdev_ext_hdr;
|
||||||
ULONG i;
|
|
||||||
|
|
||||||
pdev_ext_hdr = ( PDEVEXT_HEADER )dev_obj->DeviceExtension;
|
pdev_ext_hdr = ( PDEVEXT_HEADER )dev_obj->DeviceExtension;
|
||||||
dev_mgr = pdev_ext_hdr->dev_mgr;
|
dev_mgr = pdev_ext_hdr->dev_mgr;
|
||||||
|
|
|
@ -1076,6 +1076,7 @@ LONG usb_count_list( PLIST_HEAD list_head )
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// checks if processor supports Time Stamp Counter
|
||||||
__inline BOOL
|
__inline BOOL
|
||||||
usb_query_clicks(
|
usb_query_clicks(
|
||||||
PLARGE_INTEGER clicks
|
PLARGE_INTEGER clicks
|
||||||
|
@ -1084,6 +1085,8 @@ PLARGE_INTEGER clicks
|
||||||
BOOL ret_val;
|
BOOL ret_val;
|
||||||
//so we have to use intel's cpu???
|
//so we have to use intel's cpu???
|
||||||
ret_val = FALSE;
|
ret_val = FALSE;
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
__asm
|
__asm
|
||||||
{
|
{
|
||||||
push ebx;
|
push ebx;
|
||||||
|
@ -1102,6 +1105,9 @@ LBL_OUT:
|
||||||
pop eax;
|
pop eax;
|
||||||
pop ebx;
|
pop ebx;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
ret_val = FALSE;
|
||||||
|
#endif
|
||||||
return ret_val;
|
return ret_val;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,5 +15,5 @@
|
||||||
<file>compdrv.c</file>
|
<file>compdrv.c</file>
|
||||||
<file>etd.c</file>
|
<file>etd.c</file>
|
||||||
<file>gendrv.c</file>
|
<file>gendrv.c</file>
|
||||||
<file>ehci.rc</file>
|
<file>usbdriver.rc</file>
|
||||||
</module>
|
</module>
|
||||||
|
|
|
@ -25,12 +25,12 @@ BEGIN
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "Comments", "This is a beta version of usb driver stack( ehci ), contact me at mypublic99@yahoo.com\0"
|
VALUE "Comments", "This is a beta version of usb driver stack( ehci ), contact me at mypublic99@yahoo.com\0"
|
||||||
VALUE "CompanyName", "Woodhead Software\0"
|
VALUE "CompanyName", "Woodhead Software\0"
|
||||||
VALUE "FileDescription", "ehci.sys\0"
|
VALUE "FileDescription", "usbdriver.sys\0"
|
||||||
VALUE "FileVersion", "0, 0, 1, 0\0"
|
VALUE "FileVersion", "0, 0, 1, 0\0"
|
||||||
VALUE "InternalName", "ehci.sys\0"
|
VALUE "InternalName", "usbdriver.sys\0"
|
||||||
VALUE "LegalCopyright", "Copyright © 2002-2004 Woodhead Software\0"
|
VALUE "LegalCopyright", "Copyright © 2002-2004 Woodhead Software\0"
|
||||||
VALUE "LegalTrademarks", "\0"
|
VALUE "LegalTrademarks", "\0"
|
||||||
VALUE "OriginalFilename", "ehci.sys\0"
|
VALUE "OriginalFilename", "usbdriver.sys\0"
|
||||||
VALUE "PrivateBuild", "0.01\0"
|
VALUE "PrivateBuild", "0.01\0"
|
||||||
VALUE "ProductName", "usb driver stack for windows NT\0"
|
VALUE "ProductName", "usb driver stack for windows NT\0"
|
||||||
VALUE "ProductVersion", "0, 0, 1, 0\0"
|
VALUE "ProductVersion", "0, 0, 1, 0\0"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue