[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260105194350.5a4c9138@gandalf.local.home>
Date: Mon, 5 Jan 2026 19:43:50 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Laurent Pinchart <laurent.pinchart@...asonboard.com>
Cc: Nicolas Dufresne <nicolas@...fresne.ca>, Stefan Klug
<stefan.klug@...asonboard.com>, Xavier Roumegue
<xavier.roumegue@....nxp.com>, Mauro Carvalho Chehab <mchehab@...nel.org>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>, Clark Williams
<clrkwllms@...nel.org>, linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-rt-devel@...ts.linux.dev
Subject: Re: [PATCH 4/4] media: dw100: Split interrupt handler to fix
timeout error
On Tue, 6 Jan 2026 01:44:52 +0200
Laurent Pinchart <laurent.pinchart@...asonboard.com> wrote:
> > Agreed. Because it doesn't seem to make sense to have a oneshot threaded
> > irq handler that doesn't have the two parts (non-threaded to acknowledge the
> > irq, and the threaded to handle it and re-enable it).
>
> Why is so ? Isn't oneshot meant exactly for this purpose ? It's
> documented as not reenabling the interrupt after the hardirq handler
> (which is absent after 3/4) returns, why would a hardirq handler be
> mandatory then ?
Because it's timing out. The error in the change log states:
In the previous commit, the interrupt handler was changed to threaded.
This sometimes leads to DW100_INTERRUPT_STATUS_INT_ERR_TIME_OUT being
set after changing the vertex map. This can be seen by repeated error
outputs in dmesg:
dw100 32e30000.dwe: Interrupt error: 0x1
It needs to be acknowledged in a timely manner. That is best done in the
hard irq context where no locks need to be taken. It looks like the handler
also disables the interrupt on the device and will be reenabled after the
handler has completed (in thread context).
-- Steve
Powered by blists - more mailing lists