Re: [PATCH] remoteproc: qcom: q6v5: Make handover IRQ one-shot

Shawn Guo <[email protected]> Fri, 31 Jul 2026 14:34:46 +0800
Newsgroups org.kernel.vger.linux-remoteproc,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-kernel
Message-ID <amxCBj1HKOesLjYL@QCOM-aGQu4IUr3Y>
On Fri, Jul 31, 2026 at 09:35:47AM +0800, Shawn Guo wrote:
> On Fri, Jun 12, 2026 at 02:09:08PM +0300, Abel Vesa wrote:
> > The handover interrupt is expected to be consumed once during each prepare
> > cycle. If the remote processor keeps signalling handover after the first
> > event, qcom_q6v5 currently logs the duplicate interrupt repeatedly while
> > leaving the IRQ enabled.
> > 
> > Track the handover IRQ enable state explicitly and route all handover IRQ
> > enable/disable operations through idempotent helpers. Request the handover
> > IRQ with IRQF_NO_AUTOEN so it is only enabled through the helper during
> > prepare. The handover handler disables it after marking handover as issued,
> > while unprepare disables and synchronizes it before checking whether
> > handover was issued.
> > 
> > Signed-off-by: Abel Vesa <[email protected]>
> > ---
> >  drivers/remoteproc/qcom_q6v5.c | 54 ++++++++++++++++++++++++++++++++++--------
> >  drivers/remoteproc/qcom_q6v5.h |  4 ++++
> >  2 files changed, 48 insertions(+), 10 deletions(-)
> 
> I seem to see a "regression" on Nord ADSP (probed as attached) with this change.

I proposed the fixes here:

https://lore.kernel.org/all/[email protected]/

Shawn