OpenCloudOS-Kernel/drivers/media
Tomi Valkeinen b39b4d207d media: rkisp1: Fix IRQ handling due to shared interrupts
[ Upstream commit ffb635bb398fc07cb38f8a7b4a82cbe5f412f08e ]

The driver requests the interrupts as IRQF_SHARED, so the interrupt
handlers can be called at any time. If such a call happens while the ISP
is powered down, the SoC will hang as the driver tries to access the
ISP registers.

This can be reproduced even without the platform sharing the IRQ line:
Enable CONFIG_DEBUG_SHIRQ and unload the driver, and the board will
hang.

Fix this by adding a new field, 'irqs_enabled', which is used to bail
out from the interrupt handler when the ISP is not operational.

Link: https://lore.kernel.org/r/20231218-rkisp-shirq-fix-v1-2-173007628248@ideasonboard.com

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:19:09 -04:00
..
cec media: cec: meson: always include meson sub-directory in Makefile 2023-11-20 11:59:33 +01:00
common media: videobuf2-dma-sg: fix vmap callback 2024-01-31 16:18:55 -08:00
dvb-core media: dvbdev: drop refcount on error path in dvb_device_open() 2024-01-25 15:35:35 -08:00
dvb-frontends media: dvb-frontends: m88ds3103: Fix a memory leak in an error handling path of m88ds3103_probe() 2024-01-25 15:35:35 -08:00
firewire media: firewire: firedtv-avc.c: replace BUG with proper, error return 2023-08-10 07:58:37 +02:00
i2c media: i2c: imx335: Fix hblank min/max values 2024-02-05 20:14:28 +00:00
mc media: mc: Make media_get_pad_index() use pad type flag 2023-05-25 16:21:22 +02:00
mmc media: media/*/Kconfig: sort entries 2022-03-18 05:58:35 +01:00
pci media: solo6x10: replace max(a, min(b, c)) by clamp(b, a, c) 2024-02-16 19:10:56 +01:00
platform media: rkisp1: Fix IRQ handling due to shared interrupts 2024-03-26 18:19:09 -04:00
radio media: wl128x: Fix spelling mistake "Transfered" -> "Transferred" 2023-07-19 12:57:48 +02:00
rc media: rc: bpf attach/detach requires write permission 2024-02-23 09:25:07 +01:00
spi media updates for v5.18-rc1 2022-03-23 14:51:35 -07:00
test-drivers media: visl: Hook the (TRY_)DECODER_CMD stateless ioctls 2024-01-25 15:35:32 -08:00
tuners media: dvb: symbol fixup for dvb_attach() 2023-09-09 08:15:11 +01:00
usb media: uvcvideo: Fix power line control for SunplusIT camera 2024-02-05 20:14:27 +00:00
v4l2-core media: v4l2-cci: Add support for little-endian encoded registers 2024-01-31 16:19:10 -08:00
Kconfig media: Kconfig: Make DVB_CORE=m possible when MEDIA_SUPPORT=y 2022-12-07 17:58:46 +01:00
Makefile media: Makefiles: remove extra spaces 2022-03-12 16:59:52 +01:00