[PATCH libinput] udev: add quirk for Chalkboard Electronics HID Touchscreen
killertofu at gmail.com
Thu Sep 21 15:41:13 UTC 2017
On Thu, Sep 21, 2017 at 7:00 AM, Matt Porter <mporter at konsulko.com> wrote:
> On Thu, Sep 21, 2017 at 10:59:08AM +0200, Hans de Goede wrote:
>> On 19-09-17 18:41, Matt Porter wrote:
>> > The Chalkboard Electronics HID Touchscreen is classified as
>> > a tablet device by systemd udev because it has BTN_TOOL_PEN
>> > support. It also reports a resolution of 0 for both X and Y
>> > axes in absinfo. This causes libinput to reject it as an
>> > invalid tablet device.
>> > This quirk reclassifies the device as a touchscreen which
>> > allows it to be added as a valid input device.
>> > Signed-off-by: Matt Porter <mporter at konsulko.com>
>> Have you considered adding special handling for this device
>> to the kernel's hid drivers ? The hid subsys has sub drivers
>> for device specific handling and if the device never actually
>> has a pen, then the right fix would be to not make the kernel
>> export this. Note I assume this is for a so called
>> "smart" whiteboard for in classes ? If that is the case then
>> the device may actually have a pen/stylus like device in
>> some configuration. Some of these smart boards have what
>> are basically empty whiteboard-marker in multiple colors
>> and the device may report these as different styluses ...
> I hadn't really considered that since this userspace fixup
> basically follows the pattern I see for other devices in
> systemd's hwdb. Just to clarify, these are not "smartboard"
> style devices. They are typical 7-14" touchscreen displays
> with HDMI/USB interface from https://www.chalk-elec.com/
> The updated patch for this is at
> https://github.com/systemd/systemd/pull/6880 based on Peter's
> earlier comments. It could be solved in the kernel as you
> suggest, however it appears that usually that approach is for
> very different hid devices with custom protocols (e.g.
> logitech-hidpp). I could suppress the pen tool and update absinfo
> in a hid-chalkboard.c if that's preferred. There could be an
> advantage here for those that aren't using systemd udev.
What kernel driver gets bound to the device? I would expect
hid-multitouch for a generic multitouch touchscreen, but I don't
believe that driver ever exposes BTN_TOOL_PEN. Perhaps a quirk simply
needs to be refined or defined?
Now instead of four in the eights place /
you’ve got three, ‘Cause you added one /
(That is to say, eight) to the two, /
But you can’t take seven from three, /
So you look at the sixty-fours....
More information about the wayland-devel