linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: naib@xn--bimann-cta.de
Cc: linux-input@vger.kernel.org, linux-i2c@vger.kernel.org
Subject: Re: I2C MSFT0001 (04F3:3072) touchpad is not recognized / registered
Date: Fri, 15 Oct 2021 14:32:13 -0700	[thread overview]
Message-ID: <YWnzXWAhqYuJCE2Z@google.com> (raw)
In-Reply-To: <20211015144714.lvp7vz7lmeku2jpj@kallisto.localdomain>

Hi,

On Fri, Oct 15, 2021 at 04:47:14PM +0200, naib@bißmann.de wrote:
> Hello,
> 
> since I've upgraded my BIOS to a recent version, the touchpad on my laptop isn't recognized anymore. I suspect that Lenovo did change some id or specifier, that causes the touchpad to be thrown in the wrong driver category.
> 
> I am using kernel 5.15.0-rc4 on Archlinux. My hardware is Lenovo Ideapad Flex 3 11ADA05. The touchpad is from ELAN/MSFT00001? (04F3:3072). Before the mentioned BIOS upgrade, the touchpad was working with the default Archlinux kernel. Also it is currently functional while running a Windows OS. I have an old log output from dmesg [1]. I tried the following things to troubleshoot this issue:
> - Boot without hid_multitouch, hid_elants, i2c_hid, i2c_hid_acpi
> - Boot with CONFIG_MOUSE_ELAN_I2C & co.
> - Boot with blacklisting init calls and modules (see links below)
> - Tinker with i2cdetect (nothing valuable)
> 
> The touchscreen is at AMDI0010:00, the touchpad is at AMDI0010:01. While collecting i2c debug messages, I've found out that the client on the adapter does not register. The touchscreen is registering successfully, even when the corresponding multitouch drivers are missing (hid-multitouch, hid-elants). (Bare with me, since I'm just guessing things)
> # The touchscreen (ok):
> i2c_designware AMDI0010:00: using lookup tables for GPIO lookup
> i2c_designware AMDI0010:00: No GPIO consumer scl found
> i2c i2c-0: adapter [Synopsys DesignWare I2C adapter] registered
> i2c i2c-0: client [ELAN238E:00] registered with bus id i2c-ELAN238E:00
> # The touchpad (not ok):
> i2c_designware AMDI0010:01: using lookup tables for GPIO lookup
> i2c_designware AMDI0010:01: No GPIO consumer scl found
> i2c i2c-1: adapter [Synopsys DesignWare I2C adapter] registered

Since we do not see I2C client being registered in the case of touchpad
I'd start tracing drivers/i2c/i2c-core-acpi.c, functions
i2c_acpi_add_device() and i2c_acpi_get_info() to see where the failure
is. I guess the changes made ACPI descriptions not match with what Linux
expects.

Thanks.

-- 
Dmitry

  reply	other threads:[~2021-10-15 21:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-15 14:47 I2C MSFT0001 (04F3:3072) touchpad is not recognized / registered naib
2021-10-15 21:32 ` Dmitry Torokhov [this message]
2021-10-17 20:34   ` naib

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YWnzXWAhqYuJCE2Z@google.com \
    --to=dmitry.torokhov@gmail.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=naib@xn--bimann-cta.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).