diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-05-01 15:03:52 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-05-02 10:44:11 -0400 |
commit | 9b5231247c7aea3e56b6d28fa3e068e17ffc61da (patch) | |
tree | a232fbfeadb4908a03363aab8806603df97a80a0 /sound/soc/codecs/wm5100.c | |
parent | 623682941a11e6e09dcf88c4b2e3e88cf6a255a5 (diff) |
ASoC: wm5100: Set the DAI base address in the DAI drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc/codecs/wm5100.c')
-rw-r--r-- | sound/soc/codecs/wm5100.c | 26 |
1 files changed, 5 insertions, 21 deletions
diff --git a/sound/soc/codecs/wm5100.c b/sound/soc/codecs/wm5100.c index 0594636b9107..4f2e0f830589 100644 --- a/sound/soc/codecs/wm5100.c +++ b/sound/soc/codecs/wm5100.c | |||
@@ -1265,29 +1265,12 @@ static const __devinitdata struct reg_default wm5100_reva_patches[] = { | |||
1265 | { WM5100_AUDIO_IF_3_19, 1 }, | 1265 | { WM5100_AUDIO_IF_3_19, 1 }, |
1266 | }; | 1266 | }; |
1267 | 1267 | ||
1268 | static int wm5100_dai_to_base(struct snd_soc_dai *dai) | ||
1269 | { | ||
1270 | switch (dai->id) { | ||
1271 | case 0: | ||
1272 | return WM5100_AUDIO_IF_1_1 - 1; | ||
1273 | case 1: | ||
1274 | return WM5100_AUDIO_IF_2_1 - 1; | ||
1275 | case 2: | ||
1276 | return WM5100_AUDIO_IF_3_1 - 1; | ||
1277 | default: | ||
1278 | BUG(); | ||
1279 | return -EINVAL; | ||
1280 | } | ||
1281 | } | ||
1282 | |||
1283 | static int wm5100_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) | 1268 | static int wm5100_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) |
1284 | { | 1269 | { |
1285 | struct snd_soc_codec *codec = dai->codec; | 1270 | struct snd_soc_codec *codec = dai->codec; |
1286 | int lrclk, bclk, mask, base; | 1271 | int lrclk, bclk, mask, base; |
1287 | 1272 | ||
1288 | base = wm5100_dai_to_base(dai); | 1273 | base = dai->driver->base; |
1289 | if (base < 0) | ||
1290 | return base; | ||
1291 | 1274 | ||
1292 | lrclk = 0; | 1275 | lrclk = 0; |
1293 | bclk = 0; | 1276 | bclk = 0; |
@@ -1414,9 +1397,7 @@ static int wm5100_hw_params(struct snd_pcm_substream *substream, | |||
1414 | int i, base, bclk, aif_rate, lrclk, wl, fl, sr; | 1397 | int i, base, bclk, aif_rate, lrclk, wl, fl, sr; |
1415 | int *bclk_rates; | 1398 | int *bclk_rates; |
1416 | 1399 | ||
1417 | base = wm5100_dai_to_base(dai); | 1400 | base = dai->driver->base; |
1418 | if (base < 0) | ||
1419 | return base; | ||
1420 | 1401 | ||
1421 | /* Data sizes if not using TDM */ | 1402 | /* Data sizes if not using TDM */ |
1422 | wl = snd_pcm_format_width(params_format(params)); | 1403 | wl = snd_pcm_format_width(params_format(params)); |
@@ -1897,6 +1878,7 @@ static int wm5100_set_fll(struct snd_soc_codec *codec, int fll_id, int source, | |||
1897 | static struct snd_soc_dai_driver wm5100_dai[] = { | 1878 | static struct snd_soc_dai_driver wm5100_dai[] = { |
1898 | { | 1879 | { |
1899 | .name = "wm5100-aif1", | 1880 | .name = "wm5100-aif1", |
1881 | .base = WM5100_AUDIO_IF_1_1 - 1, | ||
1900 | .playback = { | 1882 | .playback = { |
1901 | .stream_name = "AIF1 Playback", | 1883 | .stream_name = "AIF1 Playback", |
1902 | .channels_min = 2, | 1884 | .channels_min = 2, |
@@ -1916,6 +1898,7 @@ static struct snd_soc_dai_driver wm5100_dai[] = { | |||
1916 | { | 1898 | { |
1917 | .name = "wm5100-aif2", | 1899 | .name = "wm5100-aif2", |
1918 | .id = 1, | 1900 | .id = 1, |
1901 | .base = WM5100_AUDIO_IF_2_1 - 1, | ||
1919 | .playback = { | 1902 | .playback = { |
1920 | .stream_name = "AIF2 Playback", | 1903 | .stream_name = "AIF2 Playback", |
1921 | .channels_min = 2, | 1904 | .channels_min = 2, |
@@ -1935,6 +1918,7 @@ static struct snd_soc_dai_driver wm5100_dai[] = { | |||
1935 | { | 1918 | { |
1936 | .name = "wm5100-aif3", | 1919 | .name = "wm5100-aif3", |
1937 | .id = 2, | 1920 | .id = 2, |
1921 | .base = WM5100_AUDIO_IF_3_1 - 1, | ||
1938 | .playback = { | 1922 | .playback = { |
1939 | .stream_name = "AIF3 Playback", | 1923 | .stream_name = "AIF3 Playback", |
1940 | .channels_min = 2, | 1924 | .channels_min = 2, |