<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/hid/hid-steelseries.c, branch v7.0.10</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v7.0.10</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v7.0.10'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-09-12T14:27:35+00:00</updated>
<entry>
<title>HID: steelseries: Fix STEELSERIES_SRWS1 handling in steelseries_remove()</title>
<updated>2025-09-12T14:27:35+00:00</updated>
<author>
<name>Jiri Kosina</name>
<email>jkosina@suse.com</email>
</author>
<published>2025-09-12T14:27:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2910913ef87dd9b9ce39e844c7295e1896b3b039'/>
<id>urn:sha1:2910913ef87dd9b9ce39e844c7295e1896b3b039</id>
<content type='text'>
srws1_remove label can be only reached only if LEDS subsystem is enabled. To
avoid putting horryfing ifdef second time around the label, just perform
the cleanup and exit immediately directly.

Fixes: a84eeacbf9325 ("HID: steelseries: refactor probe() and remove()")
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Closes: https://lore.kernel.org/oe-kbuild-all/202509090334.76D4qGtW-lkp@intel.com/
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: refactor probe() and remove()</title>
<updated>2025-08-12T12:47:11+00:00</updated>
<author>
<name>Jeongjun Park</name>
<email>aha310510@gmail.com</email>
</author>
<published>2025-07-17T11:26:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a84eeacbf9325fd7f604b80f246aaba157730cd5'/>
<id>urn:sha1:a84eeacbf9325fd7f604b80f246aaba157730cd5</id>
<content type='text'>
steelseries_srws1_probe() still does not use devm_kzalloc() and
devm_led_classdev_register(), so there is a lot of code to safely manage
heap, which reduces readability and may cause memory leaks due to minor
patch mistakes in the future.

Therefore, it should be changed to use devm_kzalloc() and
devm_led_classdev_register() to easily and safely manage heap.

Also, the current steelseries driver mainly checks sd-&gt;quriks to determine
which product a specific HID device is, which is not the correct way.

remove(), unlike probe(), does not receive struct hid_device_id as an
argument, so it must check hdev unconditionally to know which product
it is.

However, since struct steelseries_device and struct steelseries_srws1_data
have different structures, if SRWS1 is removed in remove(), converts
hdev-&gt;dev, which is initialized to struct steelseries_srws1_data,
to struct steelseries_device and uses it. This causes various
memory-related bugs as completely unexpected values exist in member
variables of the structure.

Therefore, in order to modify probe() and remove() to work properly,
Arctis 1, 9 should be added to HID_USB_DEVICE and some functions should be
modified to check hdev-&gt;product when determining HID device product.

Fixes: a0c76896c3fb ("HID: steelseries: Add support for Arctis 1 XBox")
Signed-off-by: Jeongjun Park &lt;aha310510@gmail.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: remove unnecessary return</title>
<updated>2025-01-16T10:03:57+00:00</updated>
<author>
<name>Christian Mayer</name>
<email>git@mayer-bgk.de</email>
</author>
<published>2025-01-12T11:44:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ad8ef3dfceb3c4ed2b02279d4cb9238d377a5278'/>
<id>urn:sha1:ad8ef3dfceb3c4ed2b02279d4cb9238d377a5278</id>
<content type='text'>
Remove unnecessary return in a void function.

Signed-off-by: Christian Mayer &lt;git@mayer-bgk.de&gt;
Reviewed-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: export model and manufacturer</title>
<updated>2025-01-16T10:03:57+00:00</updated>
<author>
<name>Christian Mayer</name>
<email>git@mayer-bgk.de</email>
</author>
<published>2025-01-12T11:44:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5d7c74d1057d60cffcd8e314539fce8393c33b03'/>
<id>urn:sha1:5d7c74d1057d60cffcd8e314539fce8393c33b03</id>
<content type='text'>
Export model and manufacturer with the power supply properties.
This helps identifing the device in the battery overview.
In the case of the Arctis 9 headset, the manufacturer is prefixed twice in
the device name.

Signed-off-by: Christian Mayer &lt;git@mayer-bgk.de&gt;
Reviewed-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: export charging state for the SteelSeries Arctis 9 headset</title>
<updated>2025-01-16T10:03:57+00:00</updated>
<author>
<name>Christian Mayer</name>
<email>git@mayer-bgk.de</email>
</author>
<published>2025-01-12T11:44:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=27c5438f5d25117d66aac2898bc7fc619c255b68'/>
<id>urn:sha1:27c5438f5d25117d66aac2898bc7fc619c255b68</id>
<content type='text'>
The Arctis 9 headset provides the information if
the power cable is plugged in and charging via the battery report.
This information can be exported.

Signed-off-by: Christian Mayer &lt;git@mayer-bgk.de&gt;
Reviewed-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: add SteelSeries Arctis 9 support</title>
<updated>2025-01-16T10:03:57+00:00</updated>
<author>
<name>Christian Mayer</name>
<email>git@mayer-bgk.de</email>
</author>
<published>2025-01-12T11:44:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6596be621703192f1930e6fe3ef4afe6cb284e72'/>
<id>urn:sha1:6596be621703192f1930e6fe3ef4afe6cb284e72</id>
<content type='text'>
Add support for the SteelSeries Arctis 9 headset. This driver
will export the battery information like it already does for
the Arcits 1 headset.

Signed-off-by: Christian Mayer &lt;git@mayer-bgk.de&gt;
Reviewed-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: preparation for adding SteelSeries Arctis 9 support</title>
<updated>2025-01-16T10:03:57+00:00</updated>
<author>
<name>Christian Mayer</name>
<email>git@mayer-bgk.de</email>
</author>
<published>2025-01-12T11:44:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=65b851a3cdcc851a65970f134811fee20ec6a454'/>
<id>urn:sha1:65b851a3cdcc851a65970f134811fee20ec6a454</id>
<content type='text'>
Refactor code and add calls to hid_hw_open/hid_hw_closed in preparation
for adding support for the SteelSeries Arctis 9 headset.

Signed-off-by: Christian Mayer &lt;git@mayer-bgk.de&gt;
Reviewed-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: Add capacity_level mapping</title>
<updated>2024-11-06T14:10:32+00:00</updated>
<author>
<name>Bastien Nocera</name>
<email>hadess@hadess.net</email>
</author>
<published>2024-10-23T11:24:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8ee0f23e2672f004e217b38d4fac956cee251c7f'/>
<id>urn:sha1:8ee0f23e2672f004e217b38d4fac956cee251c7f</id>
<content type='text'>
The capacity level mappings are taken from:
https://support.steelseries.com/hc/en-us/articles/360049205612-How-do-I-know-the-Arctis-battery-level-how-do-I-charge-the-Arctis

Even if we have a percentage, exporting a capacity_level that matches
with the hardware warning levels means that upower can show warnings at
the same time as the hardware. So the headset starts beeping at the same
time as the critical warning notification appears :eyeroll:

Signed-off-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: Fix battery requests stopping after some time</title>
<updated>2024-11-06T14:10:32+00:00</updated>
<author>
<name>Bastien Nocera</name>
<email>hadess@hadess.net</email>
</author>
<published>2024-10-23T11:24:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=138a339e39bb5acf6b0d0d1da91387f5f0a7dabd'/>
<id>urn:sha1:138a339e39bb5acf6b0d0d1da91387f5f0a7dabd</id>
<content type='text'>
In some cases, the headset receiver will answer one of our requests with
garbage, or not at all. This is a problem when we only request battery
information once we've received a battery response, as we might never
get to request battery information again.

If the data from the receiver could not be parsed, and there's no
pending battery requests, schedule a new request.

Signed-off-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.com&gt;
</content>
</entry>
<entry>
<title>HID: steelseries: constify fixed up report descriptor</title>
<updated>2024-09-05T14:20:57+00:00</updated>
<author>
<name>Thomas Weißschuh</name>
<email>linux@weissschuh.net</email>
</author>
<published>2024-08-28T07:33:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=88ae9ffc7c85c1b6b845f51e5fd850d092e75cd5'/>
<id>urn:sha1:88ae9ffc7c85c1b6b845f51e5fd850d092e75cd5</id>
<content type='text'>
Now that the HID core can handle const report descriptors,
constify them where possible.

Signed-off-by: Thomas Weißschuh &lt;linux@weissschuh.net&gt;
Link: https://patch.msgid.link/20240828-hid-const-fixup-2-v1-9-663b9210eb69@weissschuh.net
Signed-off-by: Benjamin Tissoires &lt;bentiss@kernel.org&gt;
</content>
</entry>
</feed>
