From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: correctmost <cmlists@sent.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
dmaengine@vger.kernel.org, regressions@lists.linux.dev,
vkoul@kernel.org, linux-i2c@vger.kernel.org
Subject: Re: [REGRESSION][BISECTED] Lenovo IdeaPad touchpad does not work when idma64 is present in initramfs
Date: Wed, 28 Jan 2026 13:31:35 +0100 [thread overview]
Message-ID: <20260128123135.GM2275908@black.igk.intel.com> (raw)
In-Reply-To: <0d93a56c-e452-4cd0-abb4-09c9f916274a@app.fastmail.com>
On Wed, Jan 28, 2026 at 05:21:20AM -0500, correctmost wrote:
> On Wed, Jan 28, 2026, at 4:34 AM, Andy Shevchenko wrote:
> > On Tue, Jan 20, 2026 at 11:56:15PM -0500, correctmost wrote:
> >> On Tue, Jan 20, 2026, at 4:33 AM, Andy Shevchenko wrote:
> >> > On Mon, Jan 19, 2026 at 12:49:59PM +0200, Andy Shevchenko wrote:
> >> >> On Mon, Jan 19, 2026 at 12:39:41PM +0200, Andy Shevchenko wrote:
> >> >> > On Fri, Jan 16, 2026 at 07:25:54PM -0500, correctmost wrote:
> >
> > ...
> >
> >> >> > My understanding that the pin 3 on GPIO might be wrongly configured
> >> >> > by BIOS. The difference with the original case is that your GPIO device
> >> >> > is locked against modifications and until you unlock it (usually
> >> >> > it's done in BIOS in some debug menu) it may not be fixable without OEM
> >> >> > fixing the issue themselves. In any case you can try the workaround
> >> >> > (see https://lore.kernel.org/all/ZftTcSA5dn13eAmr@smile.fi.intel.com/).
> >> >> > But I am skeptical about it.
> >>
> >> I tested commit c03e9c42ae8 with the following patch and still saw the "probe
> >> with driver i2c_hid_acpi failed" error:
> >
> >> + {
> >> + void __iomem *padcfg0;
> >> + u32 value;
> >
> >> + padcfg0 = intel_get_padcfg(pctrl, 3, PADCFG0);
> >
> > I'm sorry to get you back to this one, but can you replace 3 with 82 and try
> > again (keep the kernel command options with HID debug enabled, etc, but no
> > other patches applied).
>
> I tested the pin 82 patch by itself (no other patches and no config changes). I received the IRQ message and the touchpad didn't work (full log attached):
Okay let's add some debug to the drivers involved and try to figure out
what is happening.
Can you next apply the below patch (only that one) and try? Any test case
where it reproduces is good. The provide again full dmesg. While at it can
you enable CONFIG_PRINTK_TIME=y so we can also get timestamps to the dmesg.
diff --git a/drivers/dma/idma64.c b/drivers/dma/idma64.c
index d147353d47ab..9c06b137ed0b 100644
--- a/drivers/dma/idma64.c
+++ b/drivers/dma/idma64.c
@@ -6,6 +6,7 @@
* Author: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
*/
+#define DEBUG
#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/dmaengine.h>
@@ -171,6 +172,8 @@ static irqreturn_t idma64_irq(int irq, void *dev)
u32 status_err;
unsigned short i;
+ dev_dbg_ratelimited(idma64->dma.dev, "status=%#x\n", status);
+
/* Since IRQ may be shared, check if DMA controller is powered on */
if (status == GENMASK(31, 0))
return IRQ_NONE;
diff --git a/drivers/i2c/busses/i2c-designware-master.c b/drivers/i2c/busses/i2c-designware-master.c
index 45bfca05bb30..7461254ec863 100644
--- a/drivers/i2c/busses/i2c-designware-master.c
+++ b/drivers/i2c/busses/i2c-designware-master.c
@@ -10,6 +10,7 @@
*/
#define DEFAULT_SYMBOL_NAMESPACE "I2C_DW"
+#define DEBUG
#include <linux/delay.h>
#include <linux/err.h>
@@ -756,6 +757,7 @@ static irqreturn_t i2c_dw_isr(int this_irq, void *dev_id)
regmap_read(dev->map, DW_IC_ENABLE, &enabled);
regmap_read(dev->map, DW_IC_RAW_INTR_STAT, &stat);
+ dev_dbg_ratelimited(dev->dev, "enabled=%#x stat=%#x\n", enabled, stat);
if (!enabled || !(stat & ~DW_IC_INTR_ACTIVITY))
return IRQ_NONE;
if (pm_runtime_suspended(dev->dev) || stat == GENMASK(31, 0))
diff --git a/drivers/mfd/intel-lpss.c b/drivers/mfd/intel-lpss.c
index 63d6694f7145..b82a22e5977f 100644
--- a/drivers/mfd/intel-lpss.c
+++ b/drivers/mfd/intel-lpss.c
@@ -501,6 +501,8 @@ static int intel_lpss_suspend(struct device *dev)
struct intel_lpss *lpss = dev_get_drvdata(dev);
unsigned int i;
+ dev_info(dev, "supend started\n");
+
/* Save device context */
for (i = 0; i < LPSS_PRIV_REG_COUNT; i++)
lpss->priv_ctx[i] = readl(lpss->priv + i * 4);
@@ -513,6 +515,8 @@ static int intel_lpss_suspend(struct device *dev)
if (lpss->type != LPSS_DEV_UART)
writel(0, lpss->priv + LPSS_PRIV_RESETS);
+ dev_info(dev, "supend finished\n");
+
return 0;
}
@@ -521,12 +525,16 @@ static int intel_lpss_resume(struct device *dev)
struct intel_lpss *lpss = dev_get_drvdata(dev);
unsigned int i;
+ dev_info(dev, "resume started\n");
+
intel_lpss_deassert_reset(lpss);
/* Restore device context */
for (i = 0; i < LPSS_PRIV_REG_COUNT; i++)
writel(lpss->priv_ctx[i], lpss->priv + i * 4);
+ dev_info(dev, "resume finished\n");
+
return 0;
}
next prev parent reply other threads:[~2026-01-28 12:31 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
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 [this message]
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=20260128123135.GM2275908@black.igk.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=cmlists@sent.com \
--cc=dmaengine@vger.kernel.org \
--cc=linux-i2c@vger.kernel.org \
--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