[USB-BRINGUP]
authorJohannes Anderwald <johannes.anderwald@reactos.org>
Thu, 5 Jan 2012 04:05:10 +0000 (04:05 +0000)
committerJohannes Anderwald <johannes.anderwald@reactos.org>
Thu, 5 Jan 2012 04:05:10 +0000 (04:05 +0000)
- Add a ReactOS hack to let the hid stack initialize
- Add input.inf
- HID Mouse initializes and starts, now win32k needs some work to open the mice

svn path=/branches/usb-bringup/; revision=54838

drivers/hid/hidclass/hidclass.c
drivers/usb/usbhub_new/fdo.c
media/inf/CMakeLists.txt
media/inf/input.inf [new file with mode: 0644]
media/inf/syssetup.inf.tpl

index e6eb4a9..392f7a4 100644 (file)
@@ -137,12 +137,23 @@ HidClass_Create(
     CommonDeviceExtension = (PHIDCLASS_COMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension;
     if (CommonDeviceExtension->IsFDO)
     {
+#ifndef __REACTOS__
+
          //
          // only supported for PDO
          //
          Irp->IoStatus.Status = STATUS_UNSUCCESSFUL;
          IoCompleteRequest(Irp, IO_NO_INCREMENT);
          return STATUS_UNSUCCESSFUL;
+#else
+         //
+         // ReactOS PnP manager [...]
+         //
+         DPRINT1("[HIDCLASS] PnP HACK\n");
+         Irp->IoStatus.Status = STATUS_SUCCESS;
+         IoCompleteRequest(Irp, IO_NO_INCREMENT);
+         return STATUS_SUCCESS;
+#endif
     }
 
     //
index cdca463..89eb166 100644 (file)
@@ -971,7 +971,7 @@ CreateDeviceIds(
        //
        // copy instance id
        //
-       RtlCopyMemory(UsbChildExtension->usInstanceId.Buffer, Buffer, wcslen(Buffer) * sizeof(WCHAR));
+       RtlCopyMemory(UsbChildExtension->usInstanceId.Buffer, Buffer, Index * sizeof(WCHAR));
        UsbChildExtension->usInstanceId.Length = UsbChildExtension->usDeviceId.MaximumLength = Index * sizeof(WCHAR);
 
        DPRINT1("usDeviceId %wZ\n", &UsbChildExtension->usInstanceId);
index 8237cc7..e875899 100644 (file)
@@ -9,6 +9,7 @@ list(APPEND INF_FILES
     fdc.inf
     font.inf
     hdc.inf
+    input.inf
     intl.inf
     keyboard.inf
     ks.inf
diff --git a/media/inf/input.inf b/media/inf/input.inf
new file mode 100644 (file)
index 0000000..c33d99f
--- /dev/null
@@ -0,0 +1,73 @@
+[Version]
+Signature="$WINDOWS NT$"
+Class=HIDClass
+ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da}
+Provider=%MSFT%
+LayoutFile=layout.inf
+DriverVer=07/01/2001,5.1.2600.5512
+
+[DestinationDirs]
+DefaultDestDir = 12
+HID_Inst.CopyFilesDLL.NT = 11
+SPI_Files_DLL = 11
+
+[ClassInstall]
+Addreg=HIDClassReg
+
+[HIDClassReg]
+HKR,,,,%HID.ClassName%
+HKR,,Icon,,-24
+HKR,,NoInstallClass,,1
+
+[ClassInstall32]
+Addreg=HIDClassReg
+
+[MSMice]
+%USB\VID_045E&PID_0009.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0009
+%USB\VID_045E&PID_001E.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_001E
+%USB\VID_045E&PID_0023.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0023
+%USB\VID_045E&PID_0024.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0024
+%USB\VID_045E&PID_0025.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0025
+%USB\VID_045E&PID_0029.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0029
+%USB\VID_045E&PID_0039.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0039
+%USB\VID_045E&PID_0040.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0040
+%USB\VID_045E&PID_0047.DeviceDesc%=HID_Inst,, USB\VID_045E&PID_0047
+
+
+[Standard]
+%HID_DEVICE_SYSTEM_GAME%=HID_Raw_Inst,, HID_DEVICE_SYSTEM_GAME
+%HID_DEVICE%=HID_Raw_Inst,, HID_DEVICE
+%HID.DeviceDesc% = HID_Inst,,GENERIC_HID_DEVICE,USB\Class_03&SubClass_01,USB\Class_03
+
+
+[HID_Inst.NT]
+Copyfiles = HID_Inst.CopyFiles.NT, HID_Inst.CopyFilesDLL.NT
+
+[HID_Inst.CopyFiles.NT]
+hidusb.sys
+hidclass.sys
+hidparse.sys
+
+[HID_INST.CopyFilesDLL.NT]
+hid.dll
+
+[HID_Inst.NT.Services]
+AddService = hidusb, 0x00000002, HID_Service_Inst
+
+[HID_Service_Inst]
+ServiceType   = 1
+StartType     = 3
+ErrorControl  = 1
+ServiceBinary = %12%\hidusb.sys
+LoadOrderGroup = Pointer Port
+
+[strings]
+MSFT                  = "ReactOS"
+HID.DeviceDesc        = "USB-HID (Human Interface Device)"
+HID.DefaultDevice     = "HID-Standardgerät"
+HID.ClassName         = "Eingabegeräte (Human Interface Devices)"
+HID.SvcDesc           = "ReactOS HID Class-Treiber"
+
+
+
+
index f1c7ff6..ab79fca 100644 (file)
@@ -19,6 +19,7 @@ cdrom.inf
 display.inf\r
 fdc.inf\r
 hdc.inf\r
+input.inf\r
 keyboard.inf\r
 machine.inf\r
 msmouse.inf\r