]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
media: verisilicon: Fix CPU stalls on G2 bus error
authorNicolas Dufresne <nicolas.dufresne@collabora.com>
Mon, 22 Sep 2025 18:43:38 +0000 (14:43 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jan 2026 09:16:59 +0000 (10:16 +0100)
commite768a9d22d38f5eaee245692455bc7764b251408
tree9f1c07c79392db187363281d10a32363962322ec
parente9918c6a0044b9e224bc8b1ceb6d7d956b3f4cab
media: verisilicon: Fix CPU stalls on G2 bus error

commit 19c286b755072a22a063052f530a6b1fac8a1f63 upstream.

In some seek stress tests, we are getting IRQ from the G2 decoder where
the dec_bus_int and the dec_e bits are high, meaning the decoder is
still running despite the error.

Fix this by reworking the IRQ handler to only finish the job once we
have reached completion and move the software reset to when our software
watchdog triggers.

This way, we let the hardware continue on errors when it did not self
reset and in worse case scenario the hardware timeout will
automatically stop it. The actual error will be fixed in a follow up
patch.

Fixes: 3385c514ecc5a ("media: hantro: Convert imx8m_vpu_g2_irq to helper")
Cc: stable@vger.kernel.org
Reviewed-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/platform/verisilicon/hantro_g2.c
drivers/media/platform/verisilicon/hantro_g2_hevc_dec.c
drivers/media/platform/verisilicon/hantro_g2_regs.h
drivers/media/platform/verisilicon/hantro_g2_vp9_dec.c
drivers/media/platform/verisilicon/hantro_hw.h
drivers/media/platform/verisilicon/imx8m_vpu_hw.c