UPSTREAM: HID: steam: remove input device when a hid client is running.

Previously, when a HID client such as the Steam Client was running, this
driver disabled its input device to avoid doubling the input events.

While it worked mostly fine, some games got confused by the idle gamepad,
and switched to two player mode, or asked the user to choose which gamepad
to use. Other games just crashed, probably a bug in Unity [1].

With this commit, when a HID client starts, the input device is removed;
when the HID client ends the input device is recreated.

[1]: https://github.com/ValveSoftware/steam-for-linux/issues/5645

(cherry-picked from commit 385a4886778f6d6e61eff1d4d295af332d7130e1
("HID: steam: remove input device when a hid client is running"))
https://github.com/torvalds/linux/commit/385a4886778f6d6e61eff1d4d295af332d7130e1

Bug: 136263708

Signed-off-by: Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Siarhei Vishniakou <svv@google.com>
Change-Id: I8b93bb46c508e44d275168933b53ad738795d511
1 file changed