On Wed Aug 14 13:45:25 2024 +0000, Rémi Bernon wrote:
Thanks, looks good. I've opened (https://gitlab.winehq.org/wine/wine/-/merge_requests/6276) with the changes split and a couple of adjustments to some make future changes easier. I think we could parse additional information from the "input" subsystem, as well as (possibly) use the PHYS strings to implement device container IDs (https://gitlab.winehq.org/wine/wine/-/merge_requests/535) which are needed for some applications to match between controllers and audio devices with the Dualshock controllers. As far as I can see pulseaudio exposes the same string in its device names.
I did this as part of a larger patchset implementing IOCTL_HID_GET_INDEXED_STRING in hidclass.sys -> winebus.sys. Have been using it for a year or so without any problems. Still plan to push an MR for the remaining part when time permits. Just saw the bug reports about the product/manufacturer string issues and decided to push this patch separately.
Many apps/games need these strings to match exactly (esp. product name), to properly recognize the device and apply predefined configuration, etc.