Commit 72192366 authored by Fabio Estevam's avatar Fabio Estevam Committed by Mark Brown

ASoC: fsl: imx-audmux: Check the return value from clk_prepare_enable()

clk_prepare_enable() may fail, so let's check its return value and propagate it
in the case of error.
Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent f3142807
...@@ -73,8 +73,11 @@ static ssize_t audmux_read_file(struct file *file, char __user *user_buf, ...@@ -73,8 +73,11 @@ static ssize_t audmux_read_file(struct file *file, char __user *user_buf,
if (!buf) if (!buf)
return -ENOMEM; return -ENOMEM;
if (audmux_clk) if (audmux_clk) {
clk_prepare_enable(audmux_clk); ret = clk_prepare_enable(audmux_clk);
if (ret)
return ret;
}
ptcr = readl(audmux_base + IMX_AUDMUX_V2_PTCR(port)); ptcr = readl(audmux_base + IMX_AUDMUX_V2_PTCR(port));
pdcr = readl(audmux_base + IMX_AUDMUX_V2_PDCR(port)); pdcr = readl(audmux_base + IMX_AUDMUX_V2_PDCR(port));
...@@ -224,14 +227,19 @@ EXPORT_SYMBOL_GPL(imx_audmux_v1_configure_port); ...@@ -224,14 +227,19 @@ EXPORT_SYMBOL_GPL(imx_audmux_v1_configure_port);
int imx_audmux_v2_configure_port(unsigned int port, unsigned int ptcr, int imx_audmux_v2_configure_port(unsigned int port, unsigned int ptcr,
unsigned int pdcr) unsigned int pdcr)
{ {
int ret;
if (audmux_type != IMX31_AUDMUX) if (audmux_type != IMX31_AUDMUX)
return -EINVAL; return -EINVAL;
if (!audmux_base) if (!audmux_base)
return -ENOSYS; return -ENOSYS;
if (audmux_clk) if (audmux_clk) {
clk_prepare_enable(audmux_clk); ret = clk_prepare_enable(audmux_clk);
if (ret)
return ret;
}
writel(ptcr, audmux_base + IMX_AUDMUX_V2_PTCR(port)); writel(ptcr, audmux_base + IMX_AUDMUX_V2_PTCR(port));
writel(pdcr, audmux_base + IMX_AUDMUX_V2_PDCR(port)); writel(pdcr, audmux_base + IMX_AUDMUX_V2_PDCR(port));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment