From: Philipp Zabel Date: Wed, 7 Jan 2015 12:43:50 +0000 (+0100) Subject: drm: bridge/dw_hdmi: request interrupt only after initializing the mutes X-Git-Tag: firefly_0821_release~176^2~2312^2~39^2~9 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=639a202cc66716195b73aef1b749a4b50b6abca1;p=firefly-linux-kernel-4.4.55.git drm: bridge/dw_hdmi: request interrupt only after initializing the mutes Otherwise a spurious interrupt might trigger (and crash) the interrupt handler before probing finished. Signed-off-by: Philipp Zabel --- diff --git a/drivers/gpu/drm/bridge/dw_hdmi.c b/drivers/gpu/drm/bridge/dw_hdmi.c index 80bb512a869f..4cc456945c8b 100644 --- a/drivers/gpu/drm/bridge/dw_hdmi.c +++ b/drivers/gpu/drm/bridge/dw_hdmi.c @@ -1605,12 +1605,6 @@ int dw_hdmi_bind(struct device *dev, struct device *master, dev_dbg(hdmi->dev, "no ddc property found\n"); } - ret = devm_request_threaded_irq(dev, irq, dw_hdmi_hardirq, - dw_hdmi_irq, IRQF_SHARED, - dev_name(dev), hdmi); - if (ret) - return ret; - hdmi->regs = devm_ioremap_resource(dev, iores); if (IS_ERR(hdmi->regs)) return PTR_ERR(hdmi->regs); @@ -1651,6 +1645,12 @@ int dw_hdmi_bind(struct device *dev, struct device *master, initialize_hdmi_ih_mutes(hdmi); + ret = devm_request_threaded_irq(dev, irq, dw_hdmi_hardirq, + dw_hdmi_irq, IRQF_SHARED, + dev_name(dev), hdmi); + if (ret) + return ret; + /* * To prevent overflows in HDMI_IH_FC_STAT2, set the clk regenerator * N and cts values before enabling phy