public inbox for dmaengine@vger.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: correctmost <cmlists@sent.com>
Cc: dmaengine@vger.kernel.org, regressions@lists.linux.dev,
	vkoul@kernel.org, linux-i2c@vger.kernel.org,
	mika.westerberg@linux.intel.com
Subject: Re: [REGRESSION][BISECTED] Lenovo IdeaPad touchpad does not work when idma64 is present in initramfs
Date: Fri, 16 Jan 2026 12:35:31 +0200	[thread overview]
Message-ID: <aWoUc_GJuZ8SuYCM@smile.fi.intel.com> (raw)
In-Reply-To: <aWoM3JibLSBdGHeH@smile.fi.intel.com>

On Fri, Jan 16, 2026 at 12:03:12PM +0200, Andy Shevchenko wrote:
> On Thu, Jan 15, 2026 at 05:50:36PM -0500, correctmost wrote:
> > On Mon, Jan 12, 2026, at 9:35 AM, Andy Shevchenko wrote:
> > > On Tue, Dec 16, 2025 at 12:57:10PM -0500, correctmost wrote:
> > >
> > >> The following commit
> > >
> > > No, it's false positive. The reality is that something else is going on
> > > there on this and other similar laptops.
> > >
> > >> causes my Lenovo IdeaPad touchpad not to work when
> > >> kernel/drivers/dma/idma64.ko.zst is present in the initramfs image:
> > >> 
> > >> #regzbot introduced: 9140ce47872bfd89fca888c2f992faa51d20c2bc
> > >> 
> > >> "idma64: Don't try to serve interrupts when device is powered off"
> > >
> > > So, the touchpad is an I²C device, which is connected to an Intel SoC.
> > > The I²C host controller is Synopsys DesignWare. On Intel SoCs the above
> > > mentioned IP is generated with private DMA engine, that's called Intel
> > > iDMA 64-bit. Basically it's two devices under a single PCI hood.
> > > The problem here is that when PCI device is in D3, both devices are
> > > powered off, but something sends an interrupt and it's not recognized
> > > being the one, send by a device (touchpad).
> > >
> > > There is one of the following potential issues (or their combinations):
> > >
> > > - the I²C host controller hardware got off too early
> > > - the line is shared with something else that generates interrupt storm
> > > - the BIOS does weird (wrong) things at a boot time, like not properly
> > >   shutting down and disabling interrupt sources; also may have wrong
> > >   pin control settings
> > > - the touchpad is operating on higher frequency like 400kHz (because
> > >   BIOS told to use that one instead of 100kHz) than the HW is designed
> > >   for and hence unreliable with all possible side effects
> > > - the touchpad firmware behaves wrongly on some sequences (see also
> > >   note about the bus speed above), try to upgrade touchpad FW
> > >
> > > With my experience with the case of the above mentioned commit that it
> > > may be BIOS thingy. Also consider the bus speed, there are quirks in
> > > the kernel for that.
> > 
> > Thank you for the detailed notes.  I will see if I can update my BIOS and
> > experiment with different quirks values, though I won't be able to do that
> > until late next week.
> 
> You're welcome!
> 
> > >> Here are the related logs:
> > >> 
> > >> ---
> > >> 
> > >> irq 27: nobody cared (try booting with the "irqpoll" option)
> > >
> > > Almost all below is not so interesting.
> > >
> > > ...
> > >
> > >> handlers:
> > >> [<00000000104a7621>] idma64_irq [idma64]
> > >> [<00000000bd8d08e9>] i2c_dw_isr
> > >> Disabling IRQ #27
> > >
> > > Yes, this line at least shared between those two and might be more.
> > >
> > > ...
> > >
> > >> i2c_designware i2c_designware.0: controller timed out
> > >> hid (null): reading report descriptor failed
> > >> i2c_hid_acpi i2c-ELAN06FA:00: can't add hid device: -110
> > >> i2c_hid_acpi i2c-ELAN06FA:00: probe with driver i2c_hid_acpi failed with error -110
> > >
> > > Yes, sounds familiar with the speed settings. Try to down it to 100kHz in case
> > > it's confirmed to be 400kHz.
> > >
> > >> ---
> > >
> > > Any pointers to that thread, please?
> > 
> > The following threads have users who were able to restore touchpad
> > functionality by undoing the idma64 change in initramfs:
> 
> Yes, = "they have hidden the existing problem". No value in that, sorry.
> What is the exact link that refer to the thread you previously mentioned?
> 
> ...
> 
> > Lastly, I saw another bug report that mentions the "probe with driver
> > i2c_hid_acpi failed with error -110" error.  It seems to state that the error
> > only occurs when a power cable is connected during boot:
> > 
> > - https://bugzilla.altlinux.org/57094
> >   - Huawei Matebook D15 BOD-WXX9-PCB-B4
> >   - i2c-GXTP7863:00
> > 
> > >> so I don't think this is a hardware issue with my individual laptop.
> > >
> > > I don't know how this conclusion is came here. You mean HW as laptop model?
> > > But are the involved components the same (I²C host controller + touchpad)?
> > 
> > Sorry for the confusion.  I meant the individual machine in my possession and
> > not the laptop model as a whole.
> 
> Yeah, something here is common and I can't say for sure this all about Synaptic
> touchpads...

So, what I think I need to understand this more is the following
(all information should be gathered under root user) for working
and non-working cases:

- `cat /proc/interrupts`
- `dmesg`
   # with `initcall_debug ignore_loglevel` added to the kernel command line
- `cat /sys/kernel/debug/pinctrl/.../pins`
   # ... should be something like INTC1234:00

And just once these:
- `acpidump -o tables.dat` # the tables.dat file
- `grep -H 15 /sys/bus/acpi/devices/*/status`
- `lspci -nk -vv`

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2026-01-16 10:35 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-16 17:57 [REGRESSION][BISECTED] Lenovo IdeaPad touchpad does not work when idma64 is present in initramfs correctmost
2026-01-12 14:35 ` Andy Shevchenko
2026-01-12 16:52   ` Andy Shevchenko
2026-01-15 22:50   ` correctmost
2026-01-16 10:03     ` Andy Shevchenko
2026-01-16 10:35       ` Andy Shevchenko [this message]
2026-01-17  0:25         ` correctmost
2026-01-19 10:39           ` Andy Shevchenko
2026-01-19 10:49             ` Andy Shevchenko
2026-01-20  9:33               ` Andy Shevchenko
2026-01-21  4:56                 ` correctmost
2026-01-21  9:13                   ` Andy Shevchenko
2026-01-21 13:58                     ` Mika Westerberg
2026-01-21 14:54                       ` Andy Shevchenko
2026-01-21 15:02                         ` Mika Westerberg
2026-01-21 15:19                           ` Andy Shevchenko
2026-01-22 11:00                             ` Mika Westerberg
2026-01-22 22:29                               ` correctmost
2026-01-23  6:36                                 ` Mika Westerberg
2026-01-25  3:38                                   ` correctmost
2026-01-26 13:53                                     ` Mika Westerberg
2026-01-27  6:52                                       ` correctmost
2026-01-27  8:42                                         ` Mika Westerberg
2026-01-27 10:11                                           ` correctmost
2026-01-27 10:19                                             ` Mika Westerberg
2026-01-27 10:56                                               ` correctmost
2026-01-27 14:43                                                 ` Mika Westerberg
2026-01-27 15:09                                                   ` Andy Shevchenko
2026-01-28  3:06                                                   ` correctmost
2026-01-23  6:53                                 ` Andy Shevchenko
2026-01-28  9:34                   ` Andy Shevchenko
2026-01-28 10:21                     ` correctmost
2026-01-28 12:31                       ` Mika Westerberg
2026-01-29  4:54                         ` correctmost
2026-01-29  6:58                           ` Mika Westerberg
2026-01-29  7:20                             ` correctmost
2026-01-29 11:56                               ` Mika Westerberg
2026-01-29 13:06                                 ` correctmost
2026-01-30  7:26                                   ` Mika Westerberg
2026-01-30  8:18                                     ` correctmost
2026-02-02  7:51                                       ` Mika Westerberg
2026-02-02  8:38                                         ` correctmost
2026-02-02 10:22                                           ` Mika Westerberg
2026-02-02 11:16                                             ` correctmost
2026-02-03 10:04                                               ` Mika Westerberg
2026-02-03 12:39                                                 ` correctmost
2026-02-04 12:31                                                   ` Mika Westerberg
2026-02-04 13:11                                                     ` correctmost
2026-02-04 13:19                                                       ` Andy Shevchenko
2026-02-04 14:01                                                         ` correctmost
2026-02-04 15:12                                                           ` correctmost
2026-02-04 15:34                                                             ` Mika Westerberg
2026-02-04 15:53                                                               ` correctmost
2026-02-05 10:31                                                                 ` Mika Westerberg
2026-02-14 20:17                                                                   ` correctmost

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=aWoUc_GJuZ8SuYCM@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=cmlists@sent.com \
    --cc=dmaengine@vger.kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=mika.westerberg@linux.intel.com \
    --cc=regressions@lists.linux.dev \
    --cc=vkoul@kernel.org \
    /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