Skip to content

Commit 5ad4530

Browse files
mbggckhu-mediatek
authored andcommitted
drm/mediatek: fix null pointer dereference
The probe function requests the interrupt before initializing the ddp component. Which leads to a null pointer dereference at boot. Fix this by requesting the interrput after all components got initialized properly. Fixes: 119f517 ("drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.") Signed-off-by: Matthias Brugger <[email protected]> Change-Id: I57193a7ab554dfb37c35a455900689333adf511c
1 parent f6c8723 commit 5ad4530

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

drivers/gpu/drm/mediatek/mtk_disp_ovl.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -251,13 +251,6 @@ static int mtk_disp_ovl_probe(struct platform_device *pdev)
251251
if (irq < 0)
252252
return irq;
253253

254-
ret = devm_request_irq(dev, irq, mtk_disp_ovl_irq_handler,
255-
IRQF_TRIGGER_NONE, dev_name(dev), priv);
256-
if (ret < 0) {
257-
dev_err(dev, "Failed to request irq %d: %d\n", irq, ret);
258-
return ret;
259-
}
260-
261254
comp_id = mtk_ddp_comp_get_id(dev->of_node, MTK_DISP_OVL);
262255
if (comp_id < 0) {
263256
dev_err(dev, "Failed to identify by alias: %d\n", comp_id);
@@ -273,6 +266,13 @@ static int mtk_disp_ovl_probe(struct platform_device *pdev)
273266

274267
platform_set_drvdata(pdev, priv);
275268

269+
ret = devm_request_irq(dev, irq, mtk_disp_ovl_irq_handler,
270+
IRQF_TRIGGER_NONE, dev_name(dev), priv);
271+
if (ret < 0) {
272+
dev_err(dev, "Failed to request irq %d: %d\n", irq, ret);
273+
return ret;
274+
}
275+
276276
ret = component_add(dev, &mtk_disp_ovl_component_ops);
277277
if (ret)
278278
dev_err(dev, "Failed to add component: %d\n", ret);

0 commit comments

Comments
 (0)