[PATCH v5 00/10] HID: steam: General cleanup and improvements

Vicki Pfau <[email protected]> Wed, 29 Jul 2026 21:12:23 -0700
Newsgroups org.kernel.vger.linux-input
Message-ID <[email protected]>
This is the first half of a patch series improving the hid-steam driver.

This series contains a few notable changes:
- As I've been maintaining it downstream in SteamOS as well as writing
  general improvements, I'm marking myself as the maintainer of the driver.
- Renames some stuff, notably marking the original Steam Controller as
  Steam Controller (2015) in preparation of adding support for the Steam
  Controller (2026), which will be in the second half of this series once
  it's ready for submission.
- Adds IMU support for the Steam Controller (2015).
- Some reliability improvements, especially surrounding edge cases
  regarding scheduled work during teardown.
- Fixes a short read issue reported by syzkaller.

Hopefully the second half of the series will be ready soon, but I am
waiting on more testing by SteamOS users before I submit it.

v4 introduced failed to properly revert a patch from v3, which is fixed
here, as well as a completely random other bug that sashiko brought up for
some reason.

I am pretty exhausted from sashiko jerking me around. It has several issues
that I think are entirely imagined, in this series mostly invovling HID
startup and teardown. It seems to believe that HID interrupts will get
serviced during startup and teardown, but I'm pretty sure that isn't the
case if hid_device_io_start isn't called. I've wasted a lot of hours trying
to fix theoretical issues regarding this in this and other patch series.
And that's only one of the classes of bugs it's hallucinated. This thing is
very clearly not ready to be taken seriously, especially if we don't want
to burn out maintainers.

Vicki Pfau (11):
  HID: steam: Update documentation
  HID: steam: Refactor and clean up report parsing
  HID: steam: Rename some constants that got renamed upstream
  HID: steam: Add support for sensor events on the Steam Controller
    (2015)
  HID: steam: Coalesce rumble packets
  HID: steam: Fully unregister controller when hidraw is opened
  HID: steam: Rearrange teardown sequence
  HID: steam: Improve logging and other cleanup
  HID: steam: Zero-initialize reply in serial lookup
  HID: steam: Reject short reads
  HID: steam: Retry send/recv reports if stale

 MAINTAINERS             |   6 +
 drivers/hid/hid-steam.c | 685 +++++++++++++++++++++++++++-------------
 2 files changed, 473 insertions(+), 218 deletions(-)

-- 
2.54.0