linux/drivers/gpu/drm/bridge
Mads Bligaard Nielsen aeedaee5ef
drm/bridge: adv7511: fix crash on irq during probe
Moved IRQ registration down to end of adv7511_probe().

If an IRQ already is pending during adv7511_probe
(before adv7511_cec_init) then cec_received_msg_ts
could crash using uninitialized data:

    Unable to handle kernel read from unreadable memory at virtual address 00000000000003d5
    Internal error: Oops: 96000004 [#1] PREEMPT_RT SMP
    Call trace:
     cec_received_msg_ts+0x48/0x990 [cec]
     adv7511_cec_irq_process+0x1cc/0x308 [adv7511]
     adv7511_irq_process+0xd8/0x120 [adv7511]
     adv7511_irq_handler+0x1c/0x30 [adv7511]
     irq_thread_fn+0x30/0xa0
     irq_thread+0x14c/0x238
     kthread+0x190/0x1a8

Fixes: 3b1b975003 ("drm: adv7511/33: add HDMI CEC support")
Signed-off-by: Mads Bligaard Nielsen <bli@bang-olufsen.dk>
Signed-off-by: Alvin Šipraga <alsi@bang-olufsen.dk>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Signed-off-by: Robert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240219-adv7511-cec-irq-crash-fix-v2-1-245e53c4b96f@bang-olufsen.dk
2024-02-21 16:29:58 +01:00
..
adv7511 drm/bridge: adv7511: fix crash on irq during probe 2024-02-21 16:29:58 +01:00
analogix drm/bridge: anx7625: switch to ->edid_read callback 2024-02-09 10:15:18 +02:00
cadence drm/bridge: cdns-mhdp8546: clear the EDID property on failures 2024-02-09 10:15:27 +02:00
imx drm/bridge: imx8mp-hdmi-pvi: Fix build warnings 2024-02-07 10:23:31 +01:00
synopsys drm: bridge: dw_hdmi: Set DRM bridge type 2024-02-16 14:48:36 +01:00
aux-bridge.c drm/bridge: properly refcount DT nodes in aux bridge drivers 2023-12-19 02:06:16 +02:00
aux-hpd-bridge.c drm/bridge: properly refcount DT nodes in aux bridge drivers 2023-12-19 02:06:16 +02:00
chipone-icn6211.c
chrontel-ch7033.c drm/bridge: chrontel-ch7033: switch to drm_bridge_edid_read() 2024-02-08 17:11:04 +02:00
cros-ec-anx7688.c
display-connector.c drm/bridge: display-connector: switch to ->edid_read callback 2024-02-09 10:15:29 +02:00
fsl-ldb.c
ite-it6505.c drm/bridge: it6505: switch to ->edid_read callback 2024-02-09 10:15:32 +02:00
ite-it66121.c drm: bridge: it66121: switch to ->edid_read callback 2024-02-09 10:15:34 +02:00
Kconfig Linux 6.7-rc5 2023-12-12 11:32:33 +10:00
lontium-lt8912b.c drm/bridge: lt8912b: use ->edid_read callback 2024-02-08 17:11:22 +02:00
lontium-lt9211.c
lontium-lt9611.c drm/bridge: lt9611: switch to ->edid_read callback 2024-02-09 10:15:37 +02:00
lontium-lt9611uxc.c drm/bridge: lt9611uxc: switch to ->edid_read callback 2024-02-09 10:15:39 +02:00
lvds-codec.c
Makefile
megachips-stdpxxxx-ge-b850v3-fw.c drm/bridge: megachips: switch to ->edid_read callback 2024-02-09 10:15:41 +02:00
nwl-dsi.c
nwl-dsi.h
nxp-ptn3460.c drm/bridge: nxp-ptn3460: switch to ->edid_read callback 2024-02-09 10:15:43 +02:00
panel.c
parade-ps8622.c
parade-ps8640.c drm/bridge: parade-ps8640: Make sure we drop the AUX mutex in the error case 2024-01-17 12:08:02 -08:00
samsung-dsim.c Merge drm/drm-next into drm-misc-next 2024-02-07 13:02:20 +01:00
sii902x.c drm/bridge: sii902x: switch to ->edid_read callback 2024-02-09 10:15:48 +02:00
sii9234.c
sil-sii8620.c
sil-sii8620.h
simple-bridge.c drm: bridge: simple-bridge: clear the EDID property on failures 2024-02-08 17:12:21 +02:00
tc358762.c
tc358764.c
tc358767.c drm/bridge: tc358767: switch to ->edid_read callback 2024-02-09 10:16:16 +02:00
tc358768.c
tc358775.c
thc63lvd1024.c
ti-dlpc3433.c
ti-sn65dsi83.c
ti-sn65dsi86.c drm/bridge: ti-sn65dsi86: switch to ->edid_read callback 2024-02-09 10:16:18 +02:00
ti-tfp410.c drm/bridge: tfp410: clear the EDID property on failures 2024-02-08 17:12:26 +02:00
ti-tpd12s015.c