summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
diff options
context:
space:
mode:
authorLiam Girdwood <liam.girdwood@wolfsonmicro.com>2006-10-13 12:33:56 +0200
committerJaroslav Kysela <perex@suse.cz>2007-02-09 09:00:52 +0100
commit527541f9a8a83eedb4d732657dbfdcd2c4ca8bb4 (patch)
treeedb8c0b4ea6bbef82a557736720e78981feeb4e4 /sound/soc/codecs
parent[ALSA] hda-codec - Add support for Medion laptops (diff)
downloadlinux-527541f9a8a83eedb4d732657dbfdcd2c4ca8bb4.tar.xz
linux-527541f9a8a83eedb4d732657dbfdcd2c4ca8bb4.zip
[ALSA] ASoC DAI capabilities labelling
This patch suggested by Takashi changes the DAI capabilities definitions in pxa-i2s.c, at91rm9200-i2s.c, wm8731.c, wm8750.c and wm9712.c to use a label = value style. Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/soc/codecs')
-rw-r--r--sound/soc/codecs/wm8731.c184
-rw-r--r--sound/soc/codecs/wm8750.c316
-rw-r--r--sound/soc/codecs/wm9712.c7
3 files changed, 374 insertions, 133 deletions
diff --git a/sound/soc/codecs/wm8731.c b/sound/soc/codecs/wm8731.c
index cd0ece650f31..03a6bb9b8773 100644
--- a/sound/soc/codecs/wm8731.c
+++ b/sound/soc/codecs/wm8731.c
@@ -85,74 +85,160 @@ static const u16 wm8731_reg[WM8731_CACHEREGNUM] = {
static struct snd_soc_dai_mode wm8731_modes[] = {
/* codec frame and clock master modes */
/* 8k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_8000, WM8731_DIR, 0,
- 1536, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_8000, WM8731_DIR, 0,
- 2304, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_8000, WM8731_DIR, 0,
- 1408, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_8000, WM8731_DIR, 0,
- 2112, SND_SOC_FSB(64)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8731_DIR,
+ .fs = 1536,
+ .bfs = SND_SOC_FSB(64),
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8731_DIR,
+ .fs = 2304,
+ .bfs = SND_SOC_FSB(64),
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8731_DIR,
+ .fs = 1408,
+ .bfs = SND_SOC_FSB(64),
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8731_DIR,
+ .fs = 2112,
+ .bfs = SND_SOC_FSB(64),
+ },
/* 32k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_32000, WM8731_DIR, 0,
- 384, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_32000, WM8731_DIR, 0,
- 576, SND_SOC_FSB(64)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmdir = WM8731_DIR,
+ .fs = 384,
+ .bfs = SND_SOC_FSB(64),
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmdir = WM8731_DIR,
+ .fs = 576,
+ .bfs = SND_SOC_FSB(64),
+ },
/* 44.1k & 48k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
- WM8731_DIR, 0, 256, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
- WM8731_DIR, 0, 384, SND_SOC_FSB(64)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8731_DIR,
+ .fs = 256,
+ .bfs = SND_SOC_FSB(64),
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8731_DIR,
+ .fs = 384,
+ .bfs = SND_SOC_FSB(64),
+ },
/* 88.2 & 96k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
- WM8731_DIR, 0, 128, SND_SOC_FSB(64)},
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
- WM8731_DIR, 0, 192, SND_SOC_FSB(64)},
-
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8731_DIR,
+ .fs = 128,
+ .bfs = SND_SOC_FSB(64),
+
+ },
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8731_DIR,
+ .fs = 192,
+ .bfs = SND_SOC_FSB(64),
+ },
/* USB codec frame and clock master modes */
/* 8k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_8000, WM8731_DIR,
- SND_SOC_DAI_BFS_DIV, 1500, SND_SOC_FSBD(1)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1500,
+ .bfs = SND_SOC_FSBD(1),
+ },
/* 44.1k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_44100, WM8731_DIR,
- SND_SOC_DAI_BFS_DIV, 272, SND_SOC_FSBD(1)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 272,
+ .bfs = SND_SOC_FSBD(1),
+ },
/* 48k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_48000, WM8731_DIR,
- SND_SOC_DAI_BFS_DIV, 250, SND_SOC_FSBD(1)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 250,
+ .bfs = SND_SOC_FSBD(1),
+ },
/* 88.2k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_88200, WM8731_DIR,
- SND_SOC_DAI_BFS_DIV, 136, SND_SOC_FSBD(1)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 136,
+ .bfs = SND_SOC_FSBD(1),
+ },
/* 96k */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, SNDRV_PCM_RATE_96000, WM8731_DIR,
- SND_SOC_DAI_BFS_DIV, 125, SND_SOC_FSBD(1)},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 125,
+ .bfs = SND_SOC_FSBD(1),
+ },
/* codec frame and clock slave modes */
- {WM8731_DAIFMT | SND_SOC_DAIFMT_CBS_CFS, SND_SOC_DAITDM_LRDW(0,0),
- WM8731_HIFI_BITS, WM8731_RATES, WM8731_DIR, SND_SOC_DAI_BFS_DIV,
- SND_SOC_FS_ALL, SND_SOC_FSBD_ALL},
+ {
+ .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBS_CFS,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = WM8731_RATES,
+ .pcmdir = WM8731_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = SND_SOC_FS_ALL,
+ .bfs = SND_SOC_FSBD_ALL,
+ },
};
/*
diff --git a/sound/soc/codecs/wm8750.c b/sound/soc/codecs/wm8750.c
index 6a8b2799b3b1..b07a6ed6aa66 100644
--- a/sound/soc/codecs/wm8750.c
+++ b/sound/soc/codecs/wm8750.c
@@ -97,102 +97,254 @@ static const u16 wm8750_reg[] = {
static struct snd_soc_dai_mode wm8750_modes[] = {
/* common codec frame and clock master modes */
/* 8k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_8000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1536, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_8000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1408, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_8000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 2304, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_8000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 2112, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_8000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1500, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1536,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1408,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 2304,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 2112,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1500,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 11.025k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_11025,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1024, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_11025,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1536, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_11025,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1088, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_11025,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1024,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_11025,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1536,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_11025,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1088,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 16k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 768, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 1152, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 750, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_16000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 768,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_16000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1152,
+ .bfs = WM8750_HIFI_FSB
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_16000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 750,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 22.05k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_22050,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 512, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_22050,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 768, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_22050,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 544, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_22050,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 512,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_22050,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 768,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_22050,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 544,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 32k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 384, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 576, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_16000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 375, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 384,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 576,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 375,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 44.1k & 48k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_44100 |
- SNDRV_PCM_RATE_48000, WM8750_DIR, SND_SOC_DAI_BFS_DIV, 256,
- WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_44100 |
- SNDRV_PCM_RATE_48000, WM8750_DIR, SND_SOC_DAI_BFS_DIV, 384,
- WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_44100,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 272, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_48000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 250, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 256,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 384,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 272,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_48000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 250,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* 88.2k & 96k */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_88200 |
- SNDRV_PCM_RATE_96000, WM8750_DIR, SND_SOC_DAI_BFS_DIV, 128,
- WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_88200 |
- SNDRV_PCM_RATE_96000, WM8750_DIR, SND_SOC_DAI_BFS_DIV, 192,
- WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_88200,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 136, WM8750_HIFI_FSB},
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- SND_SOC_DAITDM_LRDW(0,0), WM8750_HIFI_BITS, SNDRV_PCM_RATE_96000,
- WM8750_DIR, SND_SOC_DAI_BFS_DIV, 125, WM8750_HIFI_FSB},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 128,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 192,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_88200,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 136,
+ .bfs = WM8750_HIFI_FSB,
+ },
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_96000,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 125,
+ .bfs = WM8750_HIFI_FSB,
+ },
/* codec frame and clock slave modes */
- {WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBS_CFS, SND_SOC_DAITDM_LRDW(0,0),
- WM8750_HIFI_BITS, WM8750_HIFI_RATES, WM8750_DIR,
- SND_SOC_DAI_BFS_DIV, SND_SOC_FS_ALL, SND_SOC_FSBD_ALL},
+ {
+ .fmt = WM8750_HIFI_DAIFMT | SND_SOC_DAIFMT_CBS_CFS,
+ .pcmfmt = WM8750_HIFI_BITS,
+ .pcmrate = WM8750_HIFI_RATES,
+ .pcmdir = WM8750_DIR,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = SND_SOC_FS_ALL,
+ .bfs = SND_SOC_FSBD_ALL,
+ },
};
/*
diff --git a/sound/soc/codecs/wm9712.c b/sound/soc/codecs/wm9712.c
index 4850550e2e31..c6b7de426460 100644
--- a/sound/soc/codecs/wm9712.c
+++ b/sound/soc/codecs/wm9712.c
@@ -44,8 +44,11 @@ static int ac97_write(struct snd_soc_codec *codec,
/* may need to expand this */
static struct snd_soc_dai_mode ac97_modes[] = {
- {0, 0, SNDRV_PCM_FMTBIT_S16_LE, AC97_RATES},
- {0, 0, SNDRV_PCM_FMTBIT_S18_3LE, AC97_RATES},
+ {
+ .pcmfmt = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S18_3LE,
+ .pcmrate = AC97_RATES,
+ .pcmdir = AC97_DIR,
+ },
};
/*