diff options
author | Sandor Yu <R01008@freescale.com> | 2012-05-29 16:54:13 +0800 |
---|---|---|
committer | Sandor Yu <R01008@freescale.com> | 2012-05-30 17:20:03 +0800 |
commit | 13bc4e600891f77c47a7eb2487a3f9daea0b5593 (patch) | |
tree | 703a0ef666ec3f9b1fdc8b1ec124210f81432167 /sound | |
parent | 97eb3590f12aa7f3e1d708dee190f3da52b77cfc (diff) |
ENGR00178461-02 HDMI1080p: hotplug cause kernel panic. 10%
It is a warning cause by HDMI driver irq enable count mismatch.
The purpose of maintain HDMI irq count is to disable hdmi_iahb_clk
when HDMI cable plugout.
But hdmi_iahb_clk parent ahb clock is always enabled when system run,
so hdmi_iabh_clk power consumption is very low.
The function clk_get_usecount introduce by irq count maintain
is not safety in SMP.
Remove HDMI irq count in HDMI driver, keep hdmi_iahb_clk always run.
and disable hdmi_iahb_clk and hdmi_isfr_clk when FB Blank.
Signed-off-by: Sandor Yu <R01008@freescale.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/imx/imx-hdmi-dma.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/sound/soc/imx/imx-hdmi-dma.c b/sound/soc/imx/imx-hdmi-dma.c index d391267c108b..f0545f6b6ef2 100644 --- a/sound/soc/imx/imx-hdmi-dma.c +++ b/sound/soc/imx/imx-hdmi-dma.c @@ -946,7 +946,6 @@ static void hdmi_dma_irq_enable(struct imx_hdmi_dma_runtime_data *rtd) spin_lock_irqsave(&hdmi_dma_priv->irq_lock, flags); hdmi_dma_clear_irq_status(0xff); - hdmi_irq_enable(hdmi_dma_priv->irq); hdmi_dma_irq_mute(0); hdmi_dma_irq_mask(0); @@ -964,7 +963,6 @@ static void hdmi_dma_irq_disable(struct imx_hdmi_dma_runtime_data *rtd) hdmi_dma_irq_mask(1); hdmi_dma_irq_mute(1); - hdmi_irq_disable(rtd->irq); hdmi_dma_clear_irq_status(0xff); hdmi_mask(1); @@ -1131,9 +1129,6 @@ static int __devinit imx_soc_platform_probe(struct platform_device *pdev) hdmi_dma_init_iec_header(); - /* Initialize IRQ at HDMI core level */ - hdmi_irq_init(); - hdmi_dma_priv->isfr_clk = clk_get(&pdev->dev, "hdmi_isfr_clk"); if (IS_ERR(hdmi_dma_priv->isfr_clk)) { ret = PTR_ERR(hdmi_dma_priv->isfr_clk); |