From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756147AbdKGXkZ (ORCPT ); Tue, 7 Nov 2017 18:40:25 -0500 Received: from mout02.posteo.de ([185.67.36.66]:39158 "EHLO mout02.posteo.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754875AbdKGXkX (ORCPT ); Tue, 7 Nov 2017 18:40:23 -0500 From: Martin Kepplinger To: dmitry.torokhov@gmail.com Cc: keescook@chromium.org, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Martin Kepplinger Subject: [PATCH] Input: tsc200x-core - set INPUT_PROP_DIRECT Date: Wed, 8 Nov 2017 00:40:00 +0100 Message-Id: <20171107234000.10236-1-martink@posteo.de> X-Mailer: git-send-email 2.11.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If INPUT_PROP_DIRECT is set, userspace doesn't have to fall back to old ways of identifying touchscreen devices. In order to identify a touchscreen device, Android for example, seems to already depend on INPUT_PROP_DIRECT to be present in drivers. udev still checks for either BTN_TOUCH or INPUT_PROP_DIRECT. Checking for BTN_TOUCH however can quite easily lead to false positives; it's a code that not only touchscreen device drivers use. According to the documentation, touchscreen drivers should have this property set and in order to make life easy for userspace, let's set it. Signed-off-by: Martin Kepplinger --- Still, as a paranoia measure, I'd not do a bulk-patchset adding this bit to every driver here. I'll add it to drivers I know of, by using them myself or people that report using tslib. Who knows what devices or usecases exist out there :) drivers/input/touchscreen/tsc200x-core.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/input/touchscreen/tsc200x-core.c b/drivers/input/touchscreen/tsc200x-core.c index 542db26d7fd0..e0fde590df8e 100644 --- a/drivers/input/touchscreen/tsc200x-core.c +++ b/drivers/input/touchscreen/tsc200x-core.c @@ -531,6 +531,7 @@ int tsc200x_probe(struct device *dev, int irq, const struct input_id *tsc_id, input_set_drvdata(input_dev, ts); + __set_bit(INPUT_PROP_DIRECT, input_dev->propbit); input_set_capability(input_dev, EV_KEY, BTN_TOUCH); input_set_abs_params(input_dev, ABS_X, -- 2.11.0