From patchwork Mon Dec 20 13:39:24 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Henrik Rydberg X-Patchwork-Id: 420771 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id oBKDf1BZ031845 for ; Mon, 20 Dec 2010 13:41:01 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753137Ab0LTNlB (ORCPT ); Mon, 20 Dec 2010 08:41:01 -0500 Received: from ch-smtp02.sth.basefarm.net ([80.76.149.213]:37282 "EHLO ch-smtp02.sth.basefarm.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754701Ab0LTNlA (ORCPT ); Mon, 20 Dec 2010 08:41:00 -0500 Received: from c83-248-200-95.bredband.comhem.se ([83.248.200.95]:60388 helo=polaris) by ch-smtp02.sth.basefarm.net with smtp (Exim 4.72) (envelope-from ) id 1PUfyJ-00085G-6l; Mon, 20 Dec 2010 14:40:18 +0100 Received: by polaris (sSMTP sendmail emulation); Mon, 20 Dec 2010 14:40:13 +0100 From: "Henrik Rydberg" To: Dmitry Torokhov Cc: Jiri Kosina , Takashi Iwai , Chase Douglas , Chris Bagwell , linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Henrik Rydberg Subject: [PATCH 3/3] Input: synaptics - ignore bogus mt packet Date: Mon, 20 Dec 2010 14:39:24 +0100 Message-Id: <1292852364-19127-4-git-send-email-rydberg@euromail.se> X-Mailer: git-send-email 1.7.2.3 In-Reply-To: <1292852364-19127-1-git-send-email-rydberg@euromail.se> References: <1292852364-19127-1-git-send-email-rydberg@euromail.se> X-Originating-IP: 83.248.200.95 X-Scan-Result: No virus found in message 1PUfyJ-00085G-6l. X-Scan-Signature: ch-smtp02.sth.basefarm.net 1PUfyJ-00085G-6l 5795f3fb58d505511809a3d2687a9c1c Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Mon, 20 Dec 2010 13:41:02 +0000 (UTC) diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 2f8a97a..ae85ab2 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c @@ -548,7 +548,7 @@ static void synaptics_process_packet(struct psmouse *psmouse) return; } - if (hw.z > 0) { + if (hw.z > 0 && hw.x > 1) { num_fingers = 1; finger_width = 5; if (SYN_CAP_EXTENDED(priv->capabilities)) { @@ -582,7 +582,7 @@ static void synaptics_process_packet(struct psmouse *psmouse) if (hw.z > 30) input_report_key(dev, BTN_TOUCH, 1); if (hw.z < 25) input_report_key(dev, BTN_TOUCH, 0); - if (hw.z > 0) { + if (num_fingers > 0) { input_report_abs(dev, ABS_X, hw.x); input_report_abs(dev, ABS_Y, YMAX_NOMINAL + YMIN_NOMINAL - hw.y); }