diff options
author | Sandor Yu <R01008@freescale.com> | 2012-05-29 16:54:13 +0800 |
---|---|---|
committer | Jason Liu <r64343@freescale.com> | 2012-07-20 13:38:15 +0800 |
commit | 25033dc50af0c6171dc5e71d694781520ddb771a (patch) | |
tree | f87c0b3995e540f57474dc1512a258f8e00e0616 /sound | |
parent | da8e618a6636365f60d7a062e3ae9100521f9fe7 (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); |