diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2013-01-25 01:43:43 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2013-01-26 02:37:09 -0500 |
commit | 0099d24c6bb584d3bac76ca81bb55f3fd8ddfb21 (patch) | |
tree | f0dfd12af9facc41567fdad2bedefd4a28c5d037 /sound/soc/dwc/designware_i2s.c | |
parent | 949db153b6466c6f7cad5a427ecea94985927311 (diff) |
ASoC: dwc: fix support for more than two channels
There were missing break statements so everything used
TWO_CHANNEL_SUPPORT.
Also I added a return statement to silence a GCC warning:
sound/soc/dwc/designware_i2s.c: In function ‘dw_i2s_hw_params’:
sound/soc/dwc/designware_i2s.c:236:32: warning: ‘ch_reg’ may be
used uninitialized in this function
[-Wmaybe-uninitialized]
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Rajeev Kumar <rajeev-dlh.kumar@st.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/dwc/designware_i2s.c')
-rw-r--r-- | sound/soc/dwc/designware_i2s.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/dwc/designware_i2s.c b/sound/soc/dwc/designware_i2s.c index 1aa51300c564..deb30d59965e 100644 --- a/sound/soc/dwc/designware_i2s.c +++ b/sound/soc/dwc/designware_i2s.c | |||
@@ -210,15 +210,19 @@ static int dw_i2s_hw_params(struct snd_pcm_substream *substream, | |||
210 | switch (config->chan_nr) { | 210 | switch (config->chan_nr) { |
211 | case EIGHT_CHANNEL_SUPPORT: | 211 | case EIGHT_CHANNEL_SUPPORT: |
212 | ch_reg = 3; | 212 | ch_reg = 3; |
213 | break; | ||
213 | case SIX_CHANNEL_SUPPORT: | 214 | case SIX_CHANNEL_SUPPORT: |
214 | ch_reg = 2; | 215 | ch_reg = 2; |
216 | break; | ||
215 | case FOUR_CHANNEL_SUPPORT: | 217 | case FOUR_CHANNEL_SUPPORT: |
216 | ch_reg = 1; | 218 | ch_reg = 1; |
219 | break; | ||
217 | case TWO_CHANNEL_SUPPORT: | 220 | case TWO_CHANNEL_SUPPORT: |
218 | ch_reg = 0; | 221 | ch_reg = 0; |
219 | break; | 222 | break; |
220 | default: | 223 | default: |
221 | dev_err(dev->dev, "channel not supported\n"); | 224 | dev_err(dev->dev, "channel not supported\n"); |
225 | return -EINVAL; | ||
222 | } | 226 | } |
223 | 227 | ||
224 | i2s_disable_channels(dev, substream->stream); | 228 | i2s_disable_channels(dev, substream->stream); |