From patchwork Tue Jun 6 07:49:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Benjamin Tissoires X-Patchwork-Id: 9768231 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 20C4B60352 for ; Tue, 6 Jun 2017 07:49:18 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 14E5E27D4A for ; Tue, 6 Jun 2017 07:49:18 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 0988C28464; Tue, 6 Jun 2017 07:49:18 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 50B3C27D4A for ; Tue, 6 Jun 2017 07:49:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751292AbdFFHtQ (ORCPT ); Tue, 6 Jun 2017 03:49:16 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58268 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751285AbdFFHtQ (ORCPT ); Tue, 6 Jun 2017 03:49:16 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7F57C61D0F; Tue, 6 Jun 2017 07:49:15 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 7F57C61D0F Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=benjamin.tissoires@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 7F57C61D0F Received: from mail.corp.redhat.com (ovpn-117-133.ams2.redhat.com [10.36.117.133]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 558595C6DB; Tue, 6 Jun 2017 07:49:13 +0000 (UTC) Date: Tue, 6 Jun 2017 09:49:09 +0200 From: Benjamin Tissoires To: Masaki Ota , Damjan Georgievski Cc: Dmitry Torokhov , "linux-input@vger.kernel.org" Subject: Re: Trackpoint on Thinkpad X1 Carbon (5th gen) Message-ID: <20170606074909.GU1293@mail.corp.redhat.com> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Tue, 06 Jun 2017 07:49:15 +0000 (UTC) Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi, On Jun 05 2017 or thereabouts, Masaki Ota wrote: > Hi, Damjan, > > Latest X1 Carbon system has two TrackPoint venders. > One is Alps, the other is Elantech. ( Touchpad is only Synaptics.) > > To detect the device, we can send "E1" command by using pass-through. > The device response is as below. > If Alps, E1 -> 02 > If Elantech, E1-> 01 > > It's a spec, but I have not checked it. Thanks. This made me realize that we have a difference between the PS/2 handling of the touchpad and the RMI4 use: in the PS/2 protocol, we mark the pass-through device as such by using SERIO_PS_PSTHRU. While in RMI4, we mark it as if it was a platform device, meaning we check on every protocol. Damjan, would you mind trying the following change: --- If this gives equal results than when using synaptics_intertouch=0, then I guess this will be a good candidate for an rc. Cheers, Benjamin > > By the way, TrackPoint speed might be different between Alps and Elan. > And Middle Button Click behavior without a driver is the same as Mouse middle click. > > Best Regards, > Masaki Ota > -----Original Message----- > From: Damjan Georgievski [mailto:gdamjan@gmail.com] > Sent: Friday, June 02, 2017 7:47 PM > To: Dmitry Torokhov > Cc: linux-input@vger.kernel.org; Benjamin Tissoires ; 太田 真喜 Masaki Ota > Subject: Re: Trackpoint on Thinkpad X1 Carbon (5th gen) > > On 30 May 2017 at 19:24, Dmitry Torokhov wrote: > > On Tue, May 23, 2017 at 11:12 AM, Damjan Georgievski wrote: > >> On 19 May 2017 at 22:12, Damjan Georgievski wrote: > >>> Hi all, > >>> the trackpoint on the Thinkpad X1 Carbon (5th gen) (model 20HQ) is > >>> recognised as: > >>> "ImPS/2 Generic Wheel Mouse" while typically it should be "TPPS/2 > >>> IBM TrackPoint". > >> > >> the following patch[1] adds the X1 Carbon gen 5 to work with the > >> rmi4_smbus support, there are some issues though: > >> - the touchpad _seems_ to be working a bit better (at least that's > >> what I feel like) > >> - the trackpoint moves too fast > >> - middle click scrolling is not enabled and can't be set with xinput > >> > >> Can I do someting to improve/test the trackpoint issues, before > >> submiting this for merging? > >> > >> ps. > >> also, when this is aplied the touchpad and trackpoint are recognized > >> as > >>> ⎜ ↳ AlpsPS/2 ALPS DualPoint Stick id=12 [slave pointer (2)] > >>> ⎜ ↳ AlpsPS/2 ALPS DualPoint TouchPad id=14 [slave pointer (2)] > > > > This is surprising that device on F03 pass-through port managed to > > respond to ALPS queries... > > > actually the touchpad seems to be recognized as > ⎜ ↳ Synaptics TM3289-002 id=12 [slave pointer (2)] > > and the other two ALPS devices are the trackpoint and its buttons (which I beleive are connected to the touchpad) > > > > Masaki, is there a chance to make ALPS detection more robust here as I > > do not believe we are dealing with ALPS device here. > > > Is there anything else I can test? > > > > -- > damjan -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/input/rmi4/rmi_f03.c b/drivers/input/rmi4/rmi_f03.c index 77dad04..ad71a5e 100644 --- a/drivers/input/rmi4/rmi_f03.c +++ b/drivers/input/rmi4/rmi_f03.c @@ -146,7 +146,7 @@ static int rmi_f03_register_pt(struct f03_data *f03) if (!serio) return -ENOMEM; - serio->id.type = SERIO_8042; + serio->id.type = SERIO_PS_PSTHRU; serio->write = rmi_f03_pt_write; serio->port_data = f03;