<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/hid, branch v6.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v6.2</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v6.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2023-02-09T17:09:13Z</updated>
<entry>
<title>Merge tag 'for-linus-2023020901' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid</title>
<updated>2023-02-09T17:09:13Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2023-02-09T17:09:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0b028189d1019ca352da108643b8f1503ee25a0e'/>
<id>urn:sha1:0b028189d1019ca352da108643b8f1503ee25a0e</id>
<content type='text'>
Pull HID fixes from Benjamin Tissoires:

 - fix potential infinite loop with a badly crafted HID device (Xin
   Zhao)

 - fix regression from 6.1 in USB logitech devices potentially making
   their mouse wheel not working (Bastien Nocera)

 - clean up in AMD sensors, which fixes a long time resume bug (Mario
   Limonciello)

 - few device small fixes and quirks

* tag 'for-linus-2023020901' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
  HID: Ignore battery for ELAN touchscreen 29DF on HP
  HID: amd_sfh: if no sensors are enabled, clean up
  HID: logitech: Disable hi-res scrolling on USB
  HID: core: Fix deadloop in hid_apply_multiplier.
  HID: Ignore battery for Elan touchscreen on Asus TP420IA
  HID: elecom: add support for TrackBall 056E:011C
</content>
</entry>
<entry>
<title>HID: Ignore battery for ELAN touchscreen 29DF on HP</title>
<updated>2023-02-06T15:38:55Z</updated>
<author>
<name>Luka Guzenko</name>
<email>l.guzenko@web.de</email>
</author>
<published>2023-01-20T22:37:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ebebf05a4b06a1be49788ca0edf990de01c4b0d0'/>
<id>urn:sha1:ebebf05a4b06a1be49788ca0edf990de01c4b0d0</id>
<content type='text'>
The touchscreen reports a battery status of 0% and jumps to 1% when a
stylus is used. The device ID was added and the battery ignore quirk was
enabled for it.

Signed-off-by: Luka Guzenko &lt;l.guzenko@web.de&gt;
Link: https://lore.kernel.org/r/20230120223741.3007-1-l.guzenko@web.de
Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
</content>
</entry>
<entry>
<title>HID: amd_sfh: if no sensors are enabled, clean up</title>
<updated>2023-02-06T10:00:36Z</updated>
<author>
<name>Mario Limonciello</name>
<email>mario.limonciello@amd.com</email>
</author>
<published>2023-02-03T22:08:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7bcfdab3f0c6672ca52be3cb65a0550d8b99554b'/>
<id>urn:sha1:7bcfdab3f0c6672ca52be3cb65a0550d8b99554b</id>
<content type='text'>
It was reported that commit b300667b33b2 ("HID: amd_sfh: Disable the
interrupt for all command") had caused increased resume time on HP Envy
x360.

Before this commit 3 sensors were reported, but they were not actually
functional.  After this commit the sensors are no longer reported, but
also the resume time increased.

To avoid this problem explicitly look for the number of disabled sensors.
If all the sensors are disabled, clean everything up.

Fixes: b300667b33b2 ("HID: amd_sfh: Disable the interrupt for all command")
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2115
Reported-by: Xaver Hugl &lt;xaver.hugl@gmail.com&gt;
Signed-off-by: Mario Limonciello &lt;mario.limonciello@amd.com&gt;
Acked-by: Basavaraj Natikar &lt;Basavaraj.Natikar@amd.com&gt;
Link: https://lore.kernel.org/r/20230203220850.13924-1-mario.limonciello@amd.com
Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
</content>
</entry>
<entry>
<title>HID: logitech: Disable hi-res scrolling on USB</title>
<updated>2023-02-06T09:58:15Z</updated>
<author>
<name>Bastien Nocera</name>
<email>hadess@hadess.net</email>
</author>
<published>2023-02-03T10:18:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=690eb7dec72ae52d1d710d14a451844b4d0f4f19'/>
<id>urn:sha1:690eb7dec72ae52d1d710d14a451844b4d0f4f19</id>
<content type='text'>
On some Logitech mice, such as the G903, and possibly the G403, the HID
events are generated on a different interface to the HID++ one.

If we enable hi-res through the HID++ interface, the HID interface
wouldn't know anything about it, and handle the events as if they were
regular scroll events, making the mouse unusable.

Disable hi-res scrolling on those devices until we implement scroll
events through HID++.

Signed-off-by: Bastien Nocera &lt;hadess@hadess.net&gt;
Tested-by: Tobias Klausmann &lt;klausman@schwarzvogel.de&gt;
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216885
Fixes: 908d325e1665 ("HID: logitech-hidpp: Detect hi-res scrolling support")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20230203101800.139380-1-hadess@hadess.net
Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
</content>
</entry>
<entry>
<title>HID: core: Fix deadloop in hid_apply_multiplier.</title>
<updated>2023-02-06T09:57:27Z</updated>
<author>
<name>Xin Zhao</name>
<email>xnzhao@google.com</email>
</author>
<published>2023-01-30T21:29:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ea427a222d8bdf2bc1a8a6da3ebe247f7dced70c'/>
<id>urn:sha1:ea427a222d8bdf2bc1a8a6da3ebe247f7dced70c</id>
<content type='text'>
The initial value of hid-&gt;collection[].parent_idx if 0. When
Report descriptor doesn't contain "HID Collection", the value
remains as 0.

In the meanwhile, when the Report descriptor fullfill
all following conditions, it will trigger hid_apply_multiplier
function call.
1. Usage page is Generic Desktop Ctrls (0x01)
2. Usage is RESOLUTION_MULTIPLIER (0x48)
3. Contain any FEATURE items

The while loop in hid_apply_multiplier will search the top-most
collection by searching parent_idx == -1. Because all parent_idx
is 0. The loop will run forever.

There is a Report Descriptor triggerring the deadloop
0x05, 0x01,        // Usage Page (Generic Desktop Ctrls)
0x09, 0x48,        // Usage (0x48)
0x95, 0x01,        // Report Count (1)
0x75, 0x08,        // Report Size (8)
0xB1, 0x01,        // Feature

Signed-off-by: Xin Zhao &lt;xnzhao@google.com&gt;
Link: https://lore.kernel.org/r/20230130212947.1315941-1-xnzhao@google.com
Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
</content>
</entry>
<entry>
<title>HID: Ignore battery for Elan touchscreen on Asus TP420IA</title>
<updated>2023-01-25T14:44:46Z</updated>
<author>
<name>marco.rodolfi@tuta.io</name>
<email>marco.rodolfi@tuta.io</email>
</author>
<published>2023-01-10T14:54:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cb963b2c011a62838852c902eccb3f72e5d3dbb6'/>
<id>urn:sha1:cb963b2c011a62838852c902eccb3f72e5d3dbb6</id>
<content type='text'>
This device has a touchscreen thats report a battery even if it doesn't
have one.
Ask Linux to ignore the battery so it will not always report it as low.

[jkosina@suse.cz: fix whitespace damage]
Signed-off-by: Marco Rodolfi &lt;marco.rodolfi@tuta.io&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
<entry>
<title>HID: elecom: add support for TrackBall 056E:011C</title>
<updated>2023-01-20T17:44:10Z</updated>
<author>
<name>Takahiro Fujii</name>
<email>fujii@xaxxi.net</email>
</author>
<published>2023-01-19T18:30:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=29f316a1d7e0a570be9a47fa283ece53a67cebb7'/>
<id>urn:sha1:29f316a1d7e0a570be9a47fa283ece53a67cebb7</id>
<content type='text'>
Make function buttons on ELECOM M-HT1DRBK trackball mouse work. This model
has two devices with different device IDs (010D and 011C). Both of
them misreports the number of buttons as 5 in the report descriptor, even
though they have 8 buttons. hid-elecom overwrites the report to fix them,
but supports only on 010D and does not work on 011C. This patch fixes
011C in the similar way but with specialized position parameters.
In fact, it is sufficient to rewrite only 17th byte (05 -&gt; 08). However I
followed the existing way.

Signed-off-by: Takahiro Fujii &lt;fujii@xaxxi.net&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
<entry>
<title>Merge tag 'for-linus-2023011801' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid</title>
<updated>2023-01-18T22:44:32Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2023-01-18T22:44:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7287904c8771b77b9504f53623bb477065c19a58'/>
<id>urn:sha1:7287904c8771b77b9504f53623bb477065c19a58</id>
<content type='text'>
Pull HID fixes from Jiri Kosina:

 - fixes for potential empty list handling in HID core (Pietro Borrello)

 - fix for NULL pointer dereference in betop driver that could be
   triggered by malicious device (Pietro Borrello)

 - fixes for handling calibration data preventing division by zero in
   Playstation driver (Roderick Colenbrander)

 - fix for memory leak on error path in amd-sfh driver (Basavaraj
   Natikar)

 - other few assorted small fixes and device ID-specific handling

* tag 'for-linus-2023011801' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
  HID: betop: check shape of output reports
  HID: playstation: sanity check DualSense calibration data.
  HID: playstation: sanity check DualShock4 calibration data.
  HID: uclogic: Add support for XP-PEN Deco 01 V2
  HID: revert CHERRY_MOUSE_000C quirk
  HID: check empty report_list in bigben_probe()
  HID: check empty report_list in hid_validate_values()
  HID: amd_sfh: Fix warning unwind goto
  HID: intel_ish-hid: Add check for ishtp_dma_tx_map
</content>
</entry>
<entry>
<title>HID: betop: check shape of output reports</title>
<updated>2023-01-18T15:34:35Z</updated>
<author>
<name>Pietro Borrello</name>
<email>borrello@diag.uniroma1.it</email>
</author>
<published>2023-01-11T18:12:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3782c0d6edf658b71354a64d60aa7a296188fc90'/>
<id>urn:sha1:3782c0d6edf658b71354a64d60aa7a296188fc90</id>
<content type='text'>
betopff_init() only checks the total sum of the report counts for each
report field to be at least 4, but hid_betopff_play() expects 4 report
fields.
A device advertising an output report with one field and 4 report counts
would pass the check but crash the kernel with a NULL pointer dereference
in hid_betopff_play().

Fixes: 52cd7785f3cd ("HID: betop: add drivers/hid/hid-betopff.c")
Signed-off-by: Pietro Borrello &lt;borrello@diag.uniroma1.it&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
<entry>
<title>HID: playstation: sanity check DualSense calibration data.</title>
<updated>2023-01-18T09:10:58Z</updated>
<author>
<name>Roderick Colenbrander</name>
<email>roderick@gaikai.com</email>
</author>
<published>2023-01-06T01:59:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ccf1e1626d37745d0a697db67407beec9ae9d4b8'/>
<id>urn:sha1:ccf1e1626d37745d0a697db67407beec9ae9d4b8</id>
<content type='text'>
Make sure calibration values are defined to prevent potential kernel
crashes. This fixes a hypothetical issue for virtual or clone devices
inspired by a similar fix for DS4.

Signed-off-by: Roderick Colenbrander &lt;roderick.colenbrander@sony.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
</feed>
