https://bugs.winehq.org/show_bug.cgi?id=39891
--- Comment #29 from Omar gamingpakker+wine@gmail.com --- Ok I've compiled wine-staging 1.9.16 with the product ID for the wireless controller (0x02a1). As a result the controller is handled properly by Split/Second.
Other things I noticed to keep in mind: 1) The presence of the 'js' entry causes a generic joystick to be added as well with no mappings defined. 2) If the 'js' entry of the controller isn't disabled in WINE it will process that entry instead of the 'event' entry of the same controller ('js' seems to take precedence over 'event').
I don't know if nr. 2 is something caused by the game does or by WINE. However, since it is easily solved by just disabling the 'js' entry in wine control, I'm not sure it warrants spending time on to figure that out.
To summarize the cause of this issue: 1) Linux driver exposes the wrong Product ID for the wireless 360 controllers. 2) WINE just takes over the ID presented by the driver. 3) Game gets an ID it doesn't know thus does not allow controller use in menus and does not auto-assign it for you.
Possible fixes I see available to solve this: 1) Get the Linux drivers to set the correct Product ID. 2) As long as 1 is not done, patch WINE to replace the Product ID of Microsoft joysticks that have ID=0x0719 with ID=0x02a1.