Steam Deck Controller Interface Seeing Initial Support With Linux 6.3


With the upcoming Linux 6.3 cycle there is finally support for the Steam Deck being added to the Steam HID driver.

Set to be introduced during the Linux 6.3 merge window opening later this month is preliminary support for the Steam Deck’s controller interface within hid-steam, the HID kernel driver originally created for supporting the Steam Controller.

Steam Deck

Vicki Pfau, seemingly working on this for Valve Software given Valve’s copyright notice being added to the hid-steam code, allows for the Steam Deck controller interface to be enabled with the upstream/mainline kernel. Vicki Pfau explained with the patch tacking on this Steam Deck support:

HID: hid-steam: Add Steam Deck support

Add preliminary support for the Steam Deck’s controller interface. Currently, this only supports the controller inputs and toggling lizard mode (Valve’s name for a hardware kb/m emulation mode). It does not support any of the advanced features, such as the motion sensors or force-feedback.

The Steam Deck also includes a heartbeat for lizard mode that switches it back on if no reports have been received within a few milliseconds. The official Steam client handles this by sending a handful of configuration reports every few ms, so we copy this behavior by sending configuration reports to disable the mouse and reset the digital mappings every 5ms. As this isn’t needed for the older Steam Controller, this is only done on the Steam Deck.

A follow-on patch goes on to them enable rumble / force feedback support for the Steam Deck. But at least for Linux 6.3, none of the other «advanced» controller features appear to be ready.

This Steam Deck controller interface support for hid-steam has been picked up by the HID subsystem’s for-next branch as for-6.3/steam ahead of the Linux 6.3 merge window opening up in a week and a half.