• Jason Gerecke's avatar
    HID: wacom: Tie cached HID_DG_CONTACTCOUNT indices to report ID · 4fb5b524
    Jason Gerecke authored
    commit 499522c8 upstream.
    
    The cached indicies 'cc_index' and 'cc_value_index' introduced in 1b5d514
    are only valid for a single report ID. If a touchscreen has multiple
    reports with a HID_DG_CONTACTCOUNT usage, its possible that the values
    will not be correct for the report we're handling, resulting in an
    incorrect value for 'num_expected'. This has been observed with the Cintiq
    Companion 2.
    
    To address this, we store the ID of the report those indicies are valid
    for in a new  'cc_report' variable. Before using them to get the expected
    contact count, we first check if the ID of the report we're processing
    matches 'cc_report'. If it doesn't, we update the indicies to point to
    the HID_DG_CONTACTCOUNT usage of the current report (if it has one).
    Signed-off-by: default avatarJason Gerecke <jason.gerecke@wacom.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    4fb5b524
wacom_wac.h 5.18 KB