From nobody Fri Feb 13 23:22:24 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1DC93CE79AB for ; Wed, 20 Sep 2023 07:48:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233905AbjITHsV (ORCPT ); Wed, 20 Sep 2023 03:48:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40902 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233964AbjITHrx (ORCPT ); Wed, 20 Sep 2023 03:47:53 -0400 Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com [IPv6:2a00:1450:4864:20::134]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CDFFFE4; Wed, 20 Sep 2023 00:47:21 -0700 (PDT) Received: by mail-lf1-x134.google.com with SMTP id 2adb3069b0e04-50305abe5f0so6275407e87.2; Wed, 20 Sep 2023 00:47:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695196040; x=1695800840; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=EiROdoH/w6RO4T8v4L/D2wMa6DTfaV0sshbNKHl/Sqc=; b=DrS2mQoO7JEXK91qMbYdeWSpq0tx6CD3rch0bpk4F00jwj36/7CzTT/EUbp0P0HPxd OFFrUyZUA6Irj0HqAbkyEG+ZIyFmx+HpQPwu/MFl23qw05zooGIN+/uhY5o9zfvGEx+L v7gTkdgDyWdow0rRvnAhl4Bf30F39pZoTQziKj4xKkfrfxFZWW0sM3xk0H+Ok7ySIKjC VmbJjCr0N2Y2eVydPp9nrPcNAyIIHwFt3unIy7Dz0xq7UTAlvTcRfhMI9gcDYCeviouG UO9IpKUNzYHBqCzH13kDY4wcIE+vKWpP1U2rSGta0/VwlWnTYaq2mDV8z8Wx80aJ6SHb euIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695196040; x=1695800840; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EiROdoH/w6RO4T8v4L/D2wMa6DTfaV0sshbNKHl/Sqc=; b=g7zApiXfnKD9uJlqUatf+9cf35j3iReNxrCir2vkiRywEkxePqHRksCxigvK77xt/H VRfuZI0x3MrW4xrJDsRkDAcflKY6qrveoPjgOrwmUBKl0jTyDzEQIuOO27pMdxZchzkp 4gNlpym2ISMLD5nMeHGjstFwuqwVkLVaLzOtGlTun74lvSmacytUPg5mf74d6amYYK0z bXeX9O+RiqsSh8zVrM4D9XHtHfBIu5MVvKatCgfW+WRC8d+VAkMaqe2GUwVsz8QXKD4O 71B6wzXyA70ditzYZKN1SXtymEzghS4vNto/8sJJCq6QFEkJ65SwcnYX7RxrN9g33G3Y F/CA== X-Gm-Message-State: AOJu0YwHU5bhIEXCThN748vvebsYzThouT/OUSgZ7guz34yVqS2TOWNV tOA/w+pNJBqskXjHkveLFmGfXCGqgKqggQXo X-Google-Smtp-Source: AGHT+IEh42GA3m8adzBJpTUtD8Z4DxwCwU2gQBF5a0RFIAgE0gQQya6HjUPx2E0eunpYTGcjxFk04A== X-Received: by 2002:a05:6512:3a8e:b0:4fe:1681:9377 with SMTP id q14-20020a0565123a8e00b004fe16819377mr1830125lfu.44.1695196039628; Wed, 20 Sep 2023 00:47:19 -0700 (PDT) Received: from emanuele-nb.toradex.int (31-10-206-125.static.upc.ch. [31.10.206.125]) by smtp.gmail.com with ESMTPSA id p13-20020a056402074d00b005224d960e66sm8438186edy.96.2023.09.20.00.47.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Sep 2023 00:47:19 -0700 (PDT) From: Emanuele Ghidoli To: Dmitry Torokhov Cc: Emanuele Ghidoli , linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, Joe Hung Subject: [PATCH v2 1/2] Input: ilitek_ts_i2c - avoid wrong input subsystem sync Date: Wed, 20 Sep 2023 09:46:49 +0200 Message-Id: <20230920074650.922292-2-ghidoliemanuele@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230920074650.922292-1-ghidoliemanuele@gmail.com> References: <20230920074650.922292-1-ghidoliemanuele@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Emanuele Ghidoli For different reasons i2c transaction may fail or report id message content may be wrong. Avoid sync the input subsystem if message cannot be parsed. An input subsystem sync without points is interpreted as "nothing is touching the screen" while normally this is not the case. Fixes: 42370681bd46 ("Input: Add support for ILITEK Lego Series") Signed-off-by: Emanuele Ghidoli Reviewed-by: Francesco Dolcini --- drivers/input/touchscreen/ilitek_ts_i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/touchscreen/ilitek_ts_i2c.c b/drivers/input/touc= hscreen/ilitek_ts_i2c.c index 90c4934e750a..0c3491e346f4 100644 --- a/drivers/input/touchscreen/ilitek_ts_i2c.c +++ b/drivers/input/touchscreen/ilitek_ts_i2c.c @@ -203,9 +203,9 @@ static int ilitek_process_and_report_v6(struct ilitek_t= s_data *ts) ilitek_touch_down(ts, id, x, y); } =20 -err_sync_frame: input_mt_sync_frame(input); input_sync(input); +err_sync_frame: return error; } =20 --=20 2.34.1 From nobody Fri Feb 13 23:22:24 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B5B7CE79AC for ; Wed, 20 Sep 2023 07:48:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234087AbjITHsY (ORCPT ); Wed, 20 Sep 2023 03:48:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54060 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233966AbjITHrz (ORCPT ); Wed, 20 Sep 2023 03:47:55 -0400 Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1B9E4CD2; Wed, 20 Sep 2023 00:47:22 -0700 (PDT) Received: by mail-ed1-x52a.google.com with SMTP id 4fb4d7f45d1cf-532c66a105bso1709663a12.3; Wed, 20 Sep 2023 00:47:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695196040; x=1695800840; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=28rY4Z706VhStnnBjkizJUKVhlFQfIjXo/tl5cpkk8U=; b=k8zBfS/zLjI+VGpiHftUdv7w1RN83ygC7omTGL+cx13zT7kvi2MHp1kkBtpKJTvQvG gvcyNn1L91rFSFVzeU1vgWrVNiaDeon3IH//AGdEk9qNjLKtPe97exvhZixsr0bCANt/ ns4rfuXcf0JKUpJ0JMpwrI5nL7LiQ1LlXGyh09HpVur5vVsS5hDd5T0eBJu2BoHb/AGq u+F11+fkRP5o6as9OU8WZDIaeCZsKU7ISfins1HHEt3xQwKBAEgUMy+TV3W6GUITjLiL j2y5xMB99OcNZescwQiB3CRC/TQfBRIOHXYJdqTdr/mBrj7m9zO+/OP06+lnWb0MMsBb 6W3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695196040; x=1695800840; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=28rY4Z706VhStnnBjkizJUKVhlFQfIjXo/tl5cpkk8U=; b=paFy/w3NTh5inTQ2OJhV4jqPqw1NCzoC3/tkEdJn/IY56ol1JK8SxfH37vH0VcNavl qYMk6f+0cDuefU3Bd0s3XoJjatQB3FNlvDdFuJI2JufeLH4A3apZ75yw8O9Z1iGlCamB I7phbUAtjNrxiqNpDWTu2QCFE6RqoctToKFo6TL/Bu1lwaHxP7UhOLGneLAb0QKHbdE4 U1BoKIq7n0RuN20lSCY3DYUldOiySHP60mZ4xaFTVTuVXiV0ecpgP0WTnIuj7S9+umB1 TW/L4a+AU4vGJcziMbRXvukeH0frIYtWc+KXJuB9uX61k3NoUUeVO90krN75Qm0QzCND IDVQ== X-Gm-Message-State: AOJu0YzcBqonvFklYc7H2EZjZprb9AzjUsILaF4n9xqS0+FaasqMUg2G 4/09Z+bIhQbuRQ6LR8UUxJ0= X-Google-Smtp-Source: AGHT+IGJ43ApLqSeJRixEnKo/cgmqEMOAcdlKq+0hGznVxNqZSgit02ciMUZnX8fvnqI7zIhTCz2Vw== X-Received: by 2002:aa7:c3c3:0:b0:532:deae:9c1f with SMTP id l3-20020aa7c3c3000000b00532deae9c1fmr1397757edr.18.1695196040241; Wed, 20 Sep 2023 00:47:20 -0700 (PDT) Received: from emanuele-nb.toradex.int (31-10-206-125.static.upc.ch. [31.10.206.125]) by smtp.gmail.com with ESMTPSA id p13-20020a056402074d00b005224d960e66sm8438186edy.96.2023.09.20.00.47.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Sep 2023 00:47:20 -0700 (PDT) From: Emanuele Ghidoli To: Dmitry Torokhov Cc: Emanuele Ghidoli , linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, Joe Hung Subject: [PATCH v2 2/2] Input: ilitek_ts_i2c - add report id message validation Date: Wed, 20 Sep 2023 09:46:50 +0200 Message-Id: <20230920074650.922292-3-ghidoliemanuele@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230920074650.922292-1-ghidoliemanuele@gmail.com> References: <20230920074650.922292-1-ghidoliemanuele@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Emanuele Ghidoli Ilitek touch IC driver answer to plain i2c read request, after it has generated an interrupt request, with a report id message starting with an identifier and a series of points. If a request is sent unsolicited by an interrupt request the answer do not contain this identifier. Add a test to discard these messages, making the driver robust to spurious interrupt requests. Fixes: 42370681bd46 ("Input: Add support for ILITEK Lego Series") Signed-off-by: Emanuele Ghidoli Reviewed-by: Francesco Dolcini --- drivers/input/touchscreen/ilitek_ts_i2c.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/input/touchscreen/ilitek_ts_i2c.c b/drivers/input/touc= hscreen/ilitek_ts_i2c.c index 0c3491e346f4..efce545236cd 100644 --- a/drivers/input/touchscreen/ilitek_ts_i2c.c +++ b/drivers/input/touchscreen/ilitek_ts_i2c.c @@ -37,6 +37,8 @@ #define ILITEK_TP_CMD_GET_MCU_VER 0x61 #define ILITEK_TP_CMD_GET_IC_MODE 0xC0 =20 +#define ILITEK_TP_I2C_REPORT_ID 0x48 + #define REPORT_COUNT_ADDRESS 61 #define ILITEK_SUPPORT_MAX_POINT 40 =20 @@ -163,6 +165,11 @@ static int ilitek_process_and_report_v6(struct ilitek_= ts_data *ts) goto err_sync_frame; } =20 + if (buf[0] !=3D ILITEK_TP_I2C_REPORT_ID) { + dev_err(dev, "get touch info failed. Wrong id: 0x%02X\n", buf[0]); + goto err_sync_frame; + } + report_max_point =3D buf[REPORT_COUNT_ADDRESS]; if (report_max_point > ts->max_tp) { dev_err(dev, "FW report max point:%d > panel info. max:%d\n", --=20 2.34.1