ASoC: Return early with -EINVAL if invalid dai format is detected

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Axel Lin 2011-10-06 07:29:56 +08:00 committed by Mark Brown
parent 3c08600144
commit ac60155f7a
2 changed files with 8 additions and 9 deletions

View File

@ -261,7 +261,6 @@ static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
{ {
struct snd_soc_codec *codec = codec_dai->codec; struct snd_soc_codec *codec = codec_dai->codec;
struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec); struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
int ret = 0;
/* set DAI format */ /* set DAI format */
switch (format & SND_SOC_DAIFMT_FORMAT_MASK) { switch (format & SND_SOC_DAIFMT_FORMAT_MASK) {
@ -271,7 +270,7 @@ static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
break; break;
default: default:
dev_err(codec->dev, "invalid dai format\n"); dev_err(codec->dev, "invalid dai format\n");
ret = -EINVAL; return -EINVAL;
} }
/* set master/slave audio interface */ /* set master/slave audio interface */
@ -284,10 +283,11 @@ static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
break; break;
default: default:
/* all other modes are unsupported by the hardware */ /* all other modes are unsupported by the hardware */
ret = -EINVAL; dev_err(codec->dev, "Unknown master/slave configuration\n");
return -EINVAL;
} }
return ret; return 0;
} }
/** /**

View File

@ -288,7 +288,6 @@ static int cs42l51_set_dai_fmt(struct snd_soc_dai *codec_dai,
{ {
struct snd_soc_codec *codec = codec_dai->codec; struct snd_soc_codec *codec = codec_dai->codec;
struct cs42l51_private *cs42l51 = snd_soc_codec_get_drvdata(codec); struct cs42l51_private *cs42l51 = snd_soc_codec_get_drvdata(codec);
int ret = 0;
switch (format & SND_SOC_DAIFMT_FORMAT_MASK) { switch (format & SND_SOC_DAIFMT_FORMAT_MASK) {
case SND_SOC_DAIFMT_I2S: case SND_SOC_DAIFMT_I2S:
@ -298,7 +297,7 @@ static int cs42l51_set_dai_fmt(struct snd_soc_dai *codec_dai,
break; break;
default: default:
dev_err(codec->dev, "invalid DAI format\n"); dev_err(codec->dev, "invalid DAI format\n");
ret = -EINVAL; return -EINVAL;
} }
switch (format & SND_SOC_DAIFMT_MASTER_MASK) { switch (format & SND_SOC_DAIFMT_MASTER_MASK) {
@ -309,11 +308,11 @@ static int cs42l51_set_dai_fmt(struct snd_soc_dai *codec_dai,
cs42l51->func = MODE_SLAVE_AUTO; cs42l51->func = MODE_SLAVE_AUTO;
break; break;
default: default:
ret = -EINVAL; dev_err(codec->dev, "Unknown master/slave configuration\n");
break; return -EINVAL;
} }
return ret; return 0;
} }
struct cs42l51_ratios { struct cs42l51_ratios {