All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jarkko Nikula <jarkko.nikula@linux.intel.com>
To: Heiner Kallweit <hkallweit1@gmail.com>
Cc: "linux-i2c@vger.kernel.org" <linux-i2c@vger.kernel.org>,
	Andi Shyti <andi.shyti@kernel.org>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Subject: Re: i2c: designware: unhandled interrupt on N100 lpss channel 0
Date: Wed, 20 Mar 2024 15:37:34 +0200	[thread overview]
Message-ID: <af547aab-e957-4dbf-922d-e2ad13e19877@linux.intel.com> (raw)
In-Reply-To: <af839910-2c3d-4559-b8b3-1c6f2372144e@gmail.com>

Hi

+ Andy

On 3/20/24 2:27 PM, Heiner Kallweit wrote:
> On 19.03.2024 22:11, Heiner Kallweit wrote:
>> On a N100-based mini pc I see the following. I found older reports with the same symptom,
>> but root cause seems to be different.
>>
>> - Interrupt 27 is not shared in my case
>> - I checked register values on entering the ISR. Interrupt mask and DW_IC_RAW_INTR_STAT
>>    are both 0.
>> - After an interrupt storm of 100,000 interrupts the interrupt gets disabled
>> - The issue affects channel 0 only
>>
>> If not the I2C IP, then who else can touch the interrupt line?
> 
> I noticed that after including INTEL_IDMA64 in my config the problem no longer occurs.
> So there seems to be a dependency. Should it be reflected in Kconfig, e.g.
> make MFD_INTEL_LPSS dependent on INTEL_IDMA64, or let it imply INTEL_IDMA64?
> 
Hmm.. interesting. I'd say BIOS perhaps has left the IDMA active and is 
generating interrupts until the idma64 driver acknowledges it.

There should not be generic dependency since the i2c_designware is not 
using the DMA and a quick test on one platform where idma64 and 
i2c_designware are sharing the same interrupt without 
CONFIG_INTEL_IDMA64 not set didn't show similar behavior.

Andy: Do you have any additional ideas or debug hints to this?

  reply	other threads:[~2024-03-20 13:37 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-19 21:11 i2c: designware: unhandled interrupt on N100 lpss channel 0 Heiner Kallweit
2024-03-20 12:27 ` Heiner Kallweit
2024-03-20 13:37   ` Jarkko Nikula [this message]
2024-03-20 14:15     ` Andy Shevchenko
2024-03-20 14:56       ` Heiner Kallweit
2024-03-20 15:59         ` Andy Shevchenko
2024-03-20 20:21           ` Heiner Kallweit
2024-03-20 21:07             ` Andy Shevchenko
2024-03-20 21:21               ` Andy Shevchenko
2024-03-20 21:26               ` Heiner Kallweit
2024-03-20 21:28                 ` Heiner Kallweit
2024-03-21 11:20                 ` Andy Shevchenko
2024-03-21 11:59                   ` Heiner Kallweit
2024-03-21 17:33                     ` Andy Shevchenko
2024-03-21 21:00                       ` Heiner Kallweit
2024-03-22 16:18                         ` Andy Shevchenko
2024-03-22 19:28                           ` Heiner Kallweit
2024-04-02 20:46                             ` Andy Shevchenko
2024-04-05 16:01                               ` Andy Shevchenko
2024-04-05 19:21                                 ` Heiner Kallweit

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=af547aab-e957-4dbf-922d-e2ad13e19877@linux.intel.com \
    --to=jarkko.nikula@linux.intel.com \
    --cc=andi.shyti@kernel.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=hkallweit1@gmail.com \
    --cc=linux-i2c@vger.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.