From: Sriman Achanta <srimanachanta@gmail.com>
To: Jiri Kosina <jikos@kernel.org>, Benjamin Tissoires <bentiss@kernel.org>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
Bastien Nocera <hadess@hadess.net>,
Simon Wood <simon@mungewell.org>,
Christian Mayer <git@mayer-bgk.de>,
Sriman Achanta <srimanachanta@gmail.com>
Subject: [PATCH v5 0/9] HID: steelseries: split out Arctis driver and add Nova 7 Gen2 support
Date: Tue, 30 Jun 2026 13:29:21 -0400 [thread overview]
Message-ID: <cover.1782840133.git.srimanachanta@gmail.com> (raw)
This series moves the SteelSeries Arctis headset support out of
hid-steelseries.c into its own module, reworks it around a per-model
device_info table, hardens the battery power-supply lifetime, adds an
asynchronous status interface, and finally adds support for the Arctis
Nova 7 Gen2 family. After the split, hid-steelseries.c is left handling
only the SRW-S1 racing wheel.
Changes since v4:
- Refactor: send the Arctis 1 and Arctis 9 status requests as output
reports again. v4 regressed these to feature reports during the
refactor, which can stall the endpoint and break battery polling.
The now-unused feature-report helper is removed.
- Refactor: the Arctis 1 parser validates the report length and the
0x06 0x12 header before consuming a report as battery status,
instead of parsing every incoming report.
- Refactor: the Arctis 9 parser only reads capacity/charging from a
0xaa 0x01 status frame and treats every other frame (including the
0x55 "no status" and the 0x03 "stale" replies) as disconnected.
- Refcounting: register the power supply into a local variable and
publish sd->battery only on success, so a concurrent raw_event can
never observe an error pointer.
- Async: publish the sync interface's drvdata only once the device is
fully initialised, so the async sibling never attaches to a
half-initialised or failed instance; the probe error path is
simplified accordingly.
- Async: the sibling lookup verifies the sibling is bound to this
driver and takes a reference before using its data, guarding against
type confusion and use-after-free.
- Dropped the standalone "Fix whitespace in srws1 report descriptor"
patch from v4; it was unrelated churn and the descriptor is left
untouched from upstream.
- Rebased on the 7.2 merge window.
Sriman Achanta (9):
HID: steelseries: Fix ARCTIS_1_X device mislabeling
HID: steelseries: Split Arctis headset driver into separate module
HID: steelseries: Inline and simplify SRWS1 wheel driver
HID: steelseries: Refactor Arctis driver to use device_info framework
HID: steelseries: Report POWER_SUPPLY_STATUS_FULL when full
HID: steelseries: Correct Arctis 9 battery calibration range
HID: steelseries: Manage battery lifetime with refcounting
HID: steelseries: Add async status interface support
HID: steelseries: Add support for Arctis Nova 7 Gen2 family
drivers/hid/Makefile | 2 +-
drivers/hid/hid-ids.h | 12 +-
drivers/hid/hid-quirks.c | 10 +-
drivers/hid/hid-steelseries-arctis.c | 643 +++++++++++++++++++++++++++
drivers/hid/hid-steelseries.c | 406 +----------------
5 files changed, 672 insertions(+), 401 deletions(-)
create mode 100644 drivers/hid/hid-steelseries-arctis.c
base-commit: 840ef6c78e6a2f694b578ecb9063241c992aaa9e
--
2.54.0
next reply other threads:[~2026-06-30 17:29 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-30 17:29 Sriman Achanta [this message]
2026-06-30 17:29 ` [PATCH v5 1/9] HID: steelseries: Fix ARCTIS_1_X device mislabeling Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 2/9] HID: steelseries: Split Arctis headset driver into separate module Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 3/9] HID: steelseries: Inline and simplify SRWS1 wheel driver Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 4/9] HID: steelseries: Refactor Arctis driver to use device_info framework Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 5/9] HID: steelseries: Report POWER_SUPPLY_STATUS_FULL when full Sriman Achanta
2026-06-30 17:39 ` sashiko-bot
2026-06-30 17:29 ` [PATCH v5 6/9] HID: steelseries: Correct Arctis 9 battery calibration range Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 7/9] HID: steelseries: Manage battery lifetime with refcounting Sriman Achanta
2026-06-30 17:29 ` [PATCH v5 8/9] HID: steelseries: Add async status interface support Sriman Achanta
2026-06-30 17:39 ` sashiko-bot
2026-06-30 17:29 ` [PATCH v5 9/9] HID: steelseries: Add support for Arctis Nova 7 Gen2 family Sriman Achanta
2026-06-30 17:44 ` sashiko-bot
2026-07-04 17:39 ` [PATCH v5 0/9] HID: steelseries: split out Arctis driver and add Nova 7 Gen2 support Colin Blower
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1782840133.git.srimanachanta@gmail.com \
--to=srimanachanta@gmail.com \
--cc=bentiss@kernel.org \
--cc=git@mayer-bgk.de \
--cc=hadess@hadess.net \
--cc=jikos@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=simon@mungewell.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.