HID-BPF Ready For Linux 6.3 Along With Steam Deck Controller Interface
First and foremost this pull request includes HID-BPF for bringing eBPF program support to the Human Interface Devices subsystem. HID-BPF was started by Red Hat engineers last year for making it easier to deal with buggy/quirky devices rather than always needing to write a new driver just to deploy simple fixes/quirks, better handling of some complex input devices, and other areas that HID can potentially innovate around eBPF programs.
For Linux 6.3 the initial HID-BPF infrastructure is in place but the mechanism for shipping HID-BPF programs through the kernel source tree is still to be implemented in the future. This will be quite useful in the future for more easily shipping quirk/workaround fixes for the plethora of HID devices requiring small tweaks for proper handling on Linux.
In addition to the HID-BPF infrastructure, as I wrote about earlier this month, there is Steam Deck support added to hid-steam. This is initial support for the Steam Deck controller interface with initial support added for its input controls. The hid-steam driver started out for enabling the Steam Controller on Linux with a native kernel driver to work outside of Steam while now this Steam Deck input handling is being worked on as well.
Other HID changes for Linux 6.3 include various Logitech HID++ protocol fixes, UClogic XP-PEN tablet handling improvements, a driver to workaround an issue with EVision keyboards, and Logitech G923 Xbox Edition steering wheel support. The Logitech G923 is a $329~399 racing wheel intended for Xbox, PlayStation, and PC gaming that now will also work correctly on Linux. The support had been missing over not having the appropriate USB ID within the hid-logitech-hidpp driver code.
The full list of HID updates for Linux 6.3 can be found via this pull request.