From patchwork Thu Feb 24 19:37:44 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Henrik Rydberg X-Patchwork-Id: 588421 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 p1OJadTZ014728 for ; Thu, 24 Feb 2011 19:36:40 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756415Ab1BXTgi (ORCPT ); Thu, 24 Feb 2011 14:36:38 -0500 Received: from ch-smtp03.sth.basefarm.net ([80.76.149.214]:57157 "EHLO ch-smtp03.sth.basefarm.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756280Ab1BXTgi (ORCPT ); Thu, 24 Feb 2011 14:36:38 -0500 Received: from c83-248-192-164.bredband.comhem.se ([83.248.192.164]:34414 helo=polaris) by ch-smtp03.sth.basefarm.net with smtp (Exim 4.73) (envelope-from ) id 1Psgyn-0005NM-CB; Thu, 24 Feb 2011 20:36:05 +0100 Received: by polaris (sSMTP sendmail emulation); Thu, 24 Feb 2011 20:37:47 +0100 From: "Henrik Rydberg" To: Dmitry Torokhov Cc: Jiri Kosina , linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Henrik Rydberg Subject: [PATCH] Input: bcm5974 - Report button also for zero fingers Date: Thu, 24 Feb 2011 20:37:44 +0100 Message-Id: <1298576264-1563-1-git-send-email-rydberg@euromail.se> X-Mailer: git-send-email 1.7.4.1 X-Originating-IP: 83.248.192.164 X-Scan-Result: No virus found in message 1Psgyn-0005NM-CB. X-Scan-Signature: ch-smtp03.sth.basefarm.net 1Psgyn-0005NM-CB c461e51bcafd430d8ac29a419b5f4eeb 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.6 (demeter1.kernel.org [140.211.167.41]); Thu, 24 Feb 2011 19:36:40 +0000 (UTC) diff --git a/drivers/input/mouse/bcm5974.c b/drivers/input/mouse/bcm5974.c index ee82851..0efaf66 100644 --- a/drivers/input/mouse/bcm5974.c +++ b/drivers/input/mouse/bcm5974.c @@ -430,10 +430,6 @@ static int report_tp_state(struct bcm5974 *dev, int size) ptest = int2bound(&c->p, raw_p); origin = raw2int(f->origin); - /* set the integrated button if applicable */ - if (c->tp_type == TYPE2) - ibt = raw2int(dev->tp_data[BUTTON_TYPE2]); - /* while tracking finger still valid, count all fingers */ if (ptest > PRESSURE_LOW && origin) { abs_p = ptest; @@ -452,6 +448,10 @@ static int report_tp_state(struct bcm5974 *dev, int size) } } + /* set the integrated button if applicable */ + if (c->tp_type == TYPE2) + ibt = raw2int(dev->tp_data[BUTTON_TYPE2]); + if (dev->fingers < nmin) dev->fingers = nmin; if (dev->fingers > nmax)