Thread (6 messages) 6 messages, 2 authors, 2020-05-12

Re: behaviour change for keyboards introduced by "HID: generic: create one input report per application type"

From: Siarhei Vishniakou <hidden>
Date: 2020-05-12 14:35:15

Hi Peter,

It's a bit of both. it seems unnatural to have a single physical
device represented by 2 devices in the system. It also seems not
efficient in terms of performance, because we are now allocating twice
the number of devices, which causes twice the configuration change
events on Android.



On Mon, May 11, 2020 at 10:22 PM Peter Hutterer
[off-list ref] wrote:
Hi Siarhei,

On Wed, Apr 01, 2020 at 01:02:03PM -0700, Siarhei Vishniakou wrote:
quoted
Hello linux-input,

We have noticed a recent behavior change introduced by the commit:
https://github.com/torvalds/linux/commit/f07b3c1da92db108662f99417a212fc1eddc44d1
HID: generic: create one input report per application type.

We have been looking into the behaviour of the Microsoft Designer
keyboard. Prior to these patches, the keyboard would report as a
single input_device to the user space. After these patches, the
keyboard is now split into 2 input devices: “Designer Keyboard
Consumer Control” and “"Designer Keyboard Keyboard". We noticed that
this behavior also applies to the keyboard Dell KB216. In the Dell
case, it is split into 3 devices, which include “Consumer Control”
(for some of the media keys) and “System Control” (for the sleep
button).

In both Microsoft and Dell cases, these are pretty standard keyboards,
although they do contain media keys and power/sleep keys.

Could you please confirm that this new behaviour is indeed
intentional, and that you wanted keyboards to be split in this
fashion?
Is there an actual issue with the split though or just a cosmetic one? This
is pretty standard for many keyboards (and other devices) but it shouldn't
have any negative effect on functionality.

Cheers,
   Peter
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help