From owner-freebsd-drivers@freebsd.org Sun Jun 2 14:12:37 2019 Return-Path: Delivered-To: freebsd-drivers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 98D1515B6DF3; Sun, 2 Jun 2019 14:12:37 +0000 (UTC) (envelope-from andrey.kosachenko@gmail.com) Received: from mail-lj1-x242.google.com (mail-lj1-x242.google.com [IPv6:2a00:1450:4864:20::242]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2AD786B0D0; Sun, 2 Jun 2019 14:12:36 +0000 (UTC) (envelope-from andrey.kosachenko@gmail.com) Received: by mail-lj1-x242.google.com with SMTP id m22so13550641ljc.3; Sun, 02 Jun 2019 07:12:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=9fM60iWn8DpswI1DSQEcMvM77dmpSn+N4gRGsY/L4tg=; b=M9RXFEyAc/4wzF3AyMQbBr+/Zaq1/MYJfbeOyIf8mEKGqgHnprIvGCEvwGZNWYvOYE Jht2kZxjxWNAzRVkfLVKgWS+QJGKpXCr+lUOnpCU2etcq3MPp8/G8HGewRP6KBIE8YKj kYu+HUs7+NrmnKRkhR7yHnNQA7BREmT4EssG5l+SVegjkjmRQnZiciIkTCsYXoJapJ69 6ZklbS9OymEIhqopaNMXqG4CW/+9iDz140RyX5QjEwETu/Pf0Od6jp96ftXmq+0NpmvW VXjPDQPizS40hG9gZIoYFlks8DpTOITA7gZnfeqrzMxvynF0B5cSFcWfoigxMc24g3+K PQEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=9fM60iWn8DpswI1DSQEcMvM77dmpSn+N4gRGsY/L4tg=; b=lO9Lh9EwlDoRaoNytAy0AYzLoQ1Vl/MBBcNnMnRwTv90st+/XuXXuSjJwq4gKhICNx 18sWH5s/795iN2Bm+LEK/iltyJ/mA8kyM5PZNnwoyM8hOX41hPPBK7EdAevvuVMocCfI Ii5Dys+oYa/sZr0ewpPCqYeQT+t2KBs4QT/+9TsCXMIh01gDkgBtTt+ofdYO+BDe7wi5 xVvLQbTsHyNt5mMcWyXHTFf4DQM9akRVlgdlZBp6u8lJYs6smUh7QK+X4tvrefqLAErl FVzZ4LUNA6+1aEGwJftgG/kNJxLEUj9RMAbxE9vX5O+8V5iStlgMsreOgaC4MXN/qd0X /Odg== X-Gm-Message-State: APjAAAW9jvDwDXEQ61x+Jdk1dTsiw1v8WJaV+acWh1OqcwZEaonvp/Vu g7Ciujtm3NkOK8CUbhrwmJsklEd2Nf0= X-Google-Smtp-Source: APXvYqxNTlOHOB9Y6pt1080BQy96onUei1dl71jtsZbeQeXek/lPXaPOwDKb/DC3rQnu/Z9Ot2w7mg== X-Received: by 2002:a2e:4256:: with SMTP id p83mr11188180lja.201.1559484754405; Sun, 02 Jun 2019 07:12:34 -0700 (PDT) Received: from beastie.intra ([46.149.95.227]) by smtp.gmail.com with ESMTPSA id s205sm648041lja.48.2019.06.02.07.12.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 02 Jun 2019 07:12:33 -0700 (PDT) Subject: Re: Thinkpad t480s elantech touchpad device is not recognized: unknown touchpad firmware (firmware v.0x7f3001) To: Vladimir Kondratyev Cc: freebsd-drivers@freebsd.org, FreeBSD X11 mailing list References: <5f4e1f25-8c87-5fa5-1d7f-edbde63fde6e@gmail.com> <279a4144-43d3-6921-2047-e7877bfd721d@kondratyev.su> From: Andrey Kosachenko Message-ID: <59e3fe9f-e81a-3236-43e4-110a2730cd02@gmail.com> Date: Sun, 2 Jun 2019 17:13:11 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 2AD786B0D0 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=M9RXFEyA; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of andreykosachenko@gmail.com designates 2a00:1450:4864:20::242 as permitted sender) smtp.mailfrom=andreykosachenko@gmail.com X-Spamd-Result: default: False [-4.03 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; NEURAL_HAM_SHORT(-0.69)[-0.686,0]; RECEIVED_SPAMHAUS_PBL(0.00)[227.95.149.46.zen.spamhaus.org : 127.0.0.11]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2.4.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; IP_SCORE(-0.34)[ip: (2.86), ipnet: 2a00:1450::/32(-2.19), asn: 15169(-2.28), country: US(-0.06)] X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jun 2019 14:12:37 -0000 Hi Vladimir, sorry for a delay (was not able to catch up on email for several days) first of all thanks for your time/efforts! Regarding the patch: 1) the kernel compiles OK, no side-effects/regressions were observed (in the course of brief manual testing of clickpad/trackpoint) 2) the behavior of trackpoint has changed. In particular it is the following: - no pointer "flickering" is observed anymore and it stands still once one just touches it (previously it used to flicker for a few fractions of seconds after one touches it and then pointer was moved exactly to the left upper screen corner and it was not possible to move it anymore by means of a trackpoint. I.e. one could manipulate pointer only via either externally connected mouse or via swiping touchpad (or it seems the proper term for it clickpad since it's bottom area "clicks" when one presses it). - pointer can be manipulated via a trackpoint. However it's behavior is quite weird. In particlular: * pointer can be moved up/down and right left; * pointer can be moved north-east (up-right) and south-west(down-left) * on attempts to move pointer either north-west (up-left) or south-east (down-right) it remains motionless. not sure if I have to blame hardware. Because a month ago when I received a device (it was supplied with Win10 system) worked as expected. Right now I can't prove that again because Win10 was erased unused OS to leave more space on disk. just in case mentioning relevant sysctl settings: === [silent@beastie][/home/silent]sysctl hw.psm hw.psm.elantech.softbutton3_x: 1709 hw.psm.elantech.softbutton2_x: 1342 hw.psm.elantech.softbuttons_y: 472 hw.psm.elantech.touchpad_off: 0 hw.psm.elantech.vscroll_div_max: 50 hw.psm.elantech.vscroll_div_min: 30 hw.psm.elantech.vscroll_min_delta: 15 hw.psm.elantech.vscroll_ver_area: 0 hw.psm.elantech.vscroll_hor_area: 0 hw.psm.elantech.taphold_timeout: 125000 hw.psm.elantech.tap_min_queue: 1 hw.psm.elantech.tap_max_delta: 25 hw.psm.elantech.div_len: 30 hw.psm.elantech.div_max_na: 10 hw.psm.elantech.div_max: 6 hw.psm.elantech.div_min: 3 hw.psm.elantech.weight_len_squared: 200 hw.psm.elantech.weight_previous_na: 20 hw.psm.elantech.weight_previous: 6 hw.psm.elantech.weight_current: 3 hw.psm.elantech.multiplicator: 10000 hw.psm.elantech.window_max: 10 hw.psm.elantech.window_min: 4 hw.psm.elantech.na_left: 0 hw.psm.elantech.na_bottom: 0 hw.psm.elantech.na_right: 0 hw.psm.elantech.na_top: 0 hw.psm.elantech.margin_left: 0 hw.psm.elantech.margin_bottom: 0 hw.psm.elantech.margin_right: 0 hw.psm.elantech.margin_top: 0 hw.psm.elantech.max_width: 7 hw.psm.elantech.max_pressure: 220 hw.psm.elantech.min_pressure: 1 hw.psm.elantech.two_finger_scroll: 1 hw.psm.elantech.max_y: 1888 hw.psm.elantech.max_x: 3052 hw.psm.elantech.directional_scrolls: 0 hw.psm.elantech_support: 1 hw.psm.trackpoint_support: 1 hw.psm.synaptics_support: 0 hw.psm.tap_timeout: 125000 hw.psm.tap_threshold: 25 hw.psm.tap_enabled: -1 === 3) this one has probably nothing to do with the clickpad driver: those errors in Xorg.log still persist when one puts the palm on a touchpad. I.e.: === [ 1561.372] (EE) event3 - ETPS/2 Elantech Touchpad: kernel bug: Touch jump detected and discarded. See https://wayland.freedesktop.org/libinput/doc/1.12.6/touchpad-jumping-cursors.html for details [ 1561.372] (EE) event3 - ETPS/2 Elantech Touchpad: kernel bug: Touch jump detected and discarded. See https://wayland.freedesktop.org/libinput/doc/1.12.6/touchpad-jumping-cursors.html for details === Vladimir Kondratyev wrote: > On 30.05.2019 01:17, Vladimir Kondratyev wrote: >> I.e. after that simple modification system started to recognize fw >>>> version: >>>> >>>> === >>>> [silent@beastie][/usr/src]dmesg | egrep psm >>>> psm0: irq 12 on atkbdc0 >>>> psm0: [GIANT-LOCKED] >>>> psm0: model Elantech Touchpad, device ID 0 >>>> === >>>> >>>> and all expected touchpad features (multi-tap gestures and scrolling, >>>> whatsoever) started to function properly under xorg+evdev. I'm happy >>>> with a touchpad now however trackpoint stopped to work. In particular >>>> attempt to use trackpoint causes strange flickering of the mice >>>> cursor (which lasts few fractions of the second) after which cursor >>>> jumps to the left-upper corner of the screen and it's impossible to >>>> move it (via trackpoint) anymore (though swiping touchpad surface >>>> moves cursor as expected). Also I found in Xorg.log messages emerging >>>> when a palm touches the surface of a touchpad: >> Andrey, please fill bugzilla PR and send me link to it. I believe >> Elantech's trackpoint support has never been tested yet. >> > Hi Andrey, > > Could you try attached patch? It is only compile-tested. > >