[PATCH 4/4] hidclass.sys: Delay creating a child device until IRP_MN_START_DEVICE.
Zebediah Figura (she/her)
zfigura at codeweavers.com
Mon Apr 19 23:36:04 CDT 2021
On 4/19/21 3:12 PM, Alexandre Julliard wrote:
> Zebediah Figura <z.figura12 at gmail.com> writes:
>
>> This is necessary to allow the Hauppauge CIR receiver driver for cx2310x drivers
>> (hcw10cir.sys) to start.
>>
>> Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
>> ---
>> Tested with a Hauppauge 955Q (2040:b123), installed using WinTV 8.5. Note
>> however that the driver still does not run with upstream Wine; it needs an
>> additional patch to expose composite device interfaces from wineusb (or from a
>> layered driver on top of wineusb).
>>
>> dlls/hidclass.sys/pnp.c | 91 +++++++++++++++++-----------
>> dlls/ntoskrnl.exe/tests/driver_hid.c | 3 +-
>> 2 files changed, 57 insertions(+), 37 deletions(-)
>
> This breaks the tests here:
>
> tools/runtest -q -P wine -T . -M ntoskrnl.exe -p dlls/ntoskrnl.exe/tests/ntoskrnl.exe_test.exe ntoskrnl && touch dlls/ntoskrnl.exe/tests/ntoskrnl.ok
> ntoskrnl.c:1696: Subtest driver
> ntoskrnl.c:1739: Subtest driver_netio
> ntoskrnl.c:1742: Subtest driver_pnp
> ntoskrnl.c:1745: Subtest driver_hid
> ntoskrnl.c:1520: Test failed: failed to get interface, error 0x103
> ntoskrnl.c:1521: Test failed: wrong class {00000000-0000-0000-0000-000000000000}
> ntoskrnl.c:1523: Test failed: got flags 0
> ntoskrnl.c:1527: Test failed: failed to get interface path, error 0x57
> make: *** [Makefile:97794: dlls/ntoskrnl.exe/tests/ntoskrnl.ok] Error 4
>
Ouch. It seems I nearly broke all wine HID devices completely. On the
plus side, the third-party driver I was trying to fix still works.
More information about the wine-devel
mailing list