To implement different methods for pen and touch, the previous
implementation has to be reworked.
This detection of the input attached to the touch sensor is the same
than the one used in mt_report().
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
static void mt_input_configured(struct hid_device *hdev, struct hid_input *hi)
{
- struct input_dev *input = hi->input;
-
- /* Only initialize slots for MT input devices */
- if (!test_bit(ABS_MT_POSITION_X, input->absbit))
- return;
+ struct mt_device *td = hid_get_drvdata(hdev);
- mt_touch_input_configured(hdev, hi);
+ if (hi->report->id == td->mt_report_id)
+ mt_touch_input_configured(hdev, hi);
}
static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)