lkml.org 
[lkml]   [2017]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.12 17/43] HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage
    Date
    4.12-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Jason Gerecke <killertofu@gmail.com>

    commit 8d411cbf46e515ca2b7ceb3d2b3f43e22813edac upstream.

    The WACOM_HID_WD_TOUCHRINGSTATUS usage is a single bit which tells us
    whether the touchring is currently in use or not. Because we need to
    reset the axis value to 0 when the finger is removed, we call
    'wacom_map_usage' to ensure that the required type/code values are
    associated with the usage. The 'wacom_map_usage' also sets up the axis
    range and resolution, however, which is not desired in this particular
    case.

    Although xf86-input-wacom doesn't do really do anything with the ring's
    range or resolution, the libinput driver (for Wayland environments)
    uses these values to provide proper angle indications to userspace.

    Fixes: 60a2218698 ("HID: wacom: generic: add support for touchring")
    Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/hid/wacom_wac.c | 8 +++++++-
    1 file changed, 7 insertions(+), 1 deletion(-)

    --- a/drivers/hid/wacom_wac.c
    +++ b/drivers/hid/wacom_wac.c
    @@ -1767,7 +1767,13 @@ static void wacom_wac_pad_usage_mapping(
    features->device_type |= WACOM_DEVICETYPE_PAD;
    break;
    case WACOM_HID_WD_TOUCHRINGSTATUS:
    - wacom_map_usage(input, usage, field, EV_ABS, ABS_WHEEL, 0);
    + /*
    + * Only set up type/code association. Completely mapping
    + * this usage may overwrite the axis resolution and range.
    + */
    + usage->type = EV_ABS;
    + usage->code = ABS_WHEEL;
    + set_bit(EV_ABS, input->evbit);
    features->device_type |= WACOM_DEVICETYPE_PAD;
    break;
    case WACOM_HID_WD_BUTTONCONFIG:

    \
     
     \ /
      Last update: 2017-09-08 15:41    [W:4.156 / U:0.872 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site