diff options
-rw-r--r-- | sound/soc/imx/imx-hdmi-dma.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/soc/imx/imx-hdmi-dma.c b/sound/soc/imx/imx-hdmi-dma.c index f0afcf1ac52b..70c8cb13d3de 100644 --- a/sound/soc/imx/imx-hdmi-dma.c +++ b/sound/soc/imx/imx-hdmi-dma.c @@ -1195,6 +1195,12 @@ static int hdmi_dma_open(struct snd_pcm_substream *substream) (int)clk_get_rate(hdmi_dma_priv->isfr_clk), (int)clk_get_rate(hdmi_dma_priv->iahb_clk)); + ret = mxc_hdmi_register_audio(substream); + if (ret < 0) { + pr_err("ERROR: HDMI is not ready!\n"); + return ret; + } + hdmi_fifo_reset(); ret = snd_pcm_hw_constraint_integer(substream->runtime, @@ -1215,6 +1221,7 @@ static int hdmi_dma_close(struct snd_pcm_substream *substream) struct imx_hdmi_dma_runtime_data *rtd = runtime->private_data; hdmi_dma_irq_disable(rtd); + mxc_hdmi_unregister_audio(substream); clk_disable(rtd->iahb_clk); clk_disable(rtd->isfr_clk); |