/* 8k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
.pcmdir = WM8731_DIR,
- .fs = 1536,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 1536,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
.pcmdir = WM8731_DIR,
- .fs = 2304,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 2304,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
.pcmdir = WM8731_DIR,
- .fs = 1408,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 1408,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
.pcmdir = WM8731_DIR,
- .fs = 2112,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 2112,
+ .bfs = 64,
},
/* 32k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
+ .pcmfmt = WM8731_HIFI_BITS,
.pcmrate = SNDRV_PCM_RATE_32000,
.pcmdir = WM8731_DIR,
- .fs = 384,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 384,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_32000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_32000,
.pcmdir = WM8731_DIR,
- .fs = 576,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 576,
+ .bfs = 64,
},
/* 44.1k & 48k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
+ .pcmfmt = WM8731_HIFI_BITS,
.pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
.pcmdir = WM8731_DIR,
- .fs = 256,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 256,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
+ .pcmfmt = WM8731_HIFI_BITS,
.pcmrate = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
.pcmdir = WM8731_DIR,
- .fs = 384,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 384,
+ .bfs = 64,
},
/* 88.2 & 96k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
+ .pcmfmt = WM8731_HIFI_BITS,
.pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
.pcmdir = WM8731_DIR,
- .fs = 128,
- .bfs = SND_SOC_FSB(64),
-
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 128,
+ .bfs = 64,
},
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
+ .pcmfmt = WM8731_HIFI_BITS,
.pcmrate = SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000,
.pcmdir = WM8731_DIR,
- .fs = 192,
- .bfs = SND_SOC_FSB(64),
+ .flags = SND_SOC_DAI_BFS_RATE,
+ .fs = 192,
+ .bfs = 64,
},
/* USB codec frame and clock master modes */
/* 8k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_8000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_8000,
.pcmdir = WM8731_DIR,
- .flags = SND_SOC_DAI_BFS_DIV,
- .fs = 1500,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 1500,
.bfs = SND_SOC_FSBD(1),
},
/* 44.1k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_44100,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_44100,
.pcmdir = WM8731_DIR,
.flags = SND_SOC_DAI_BFS_DIV,
- .fs = 272,
+ .fs = 272,
.bfs = SND_SOC_FSBD(1),
},
/* 48k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_48000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_48000,
.pcmdir = WM8731_DIR,
- .flags = SND_SOC_DAI_BFS_DIV,
- .fs = 250,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 250,
.bfs = SND_SOC_FSBD(1),
},
/* 88.2k */
{
- .fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_88200,
+ .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,
+ .fs = 136,
.bfs = SND_SOC_FSBD(1),
},
/* 96k */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBM_CFM,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = SNDRV_PCM_RATE_96000,
+ .pcmfmt = WM8731_HIFI_BITS,
+ .pcmrate = SNDRV_PCM_RATE_96000,
.pcmdir = WM8731_DIR,
- .flags = SND_SOC_DAI_BFS_DIV,
- .fs = 125,
+ .flags = SND_SOC_DAI_BFS_DIV,
+ .fs = 125,
.bfs = SND_SOC_FSBD(1),
},
/* codec frame and clock slave modes */
{
.fmt = WM8731_DAIFMT | SND_SOC_DAIFMT_CBS_CFS,
- .pcmfmt = WM8731_HIFI_BITS,
- .pcmrate = WM8731_RATES,
+ .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,
+ .fs = SND_SOC_FS_ALL,
+ .bfs = SND_SOC_FSB_ALL,
},
};
static const struct snd_kcontrol_new wm8731_snd_controls[] = {
-SOC_DOUBLE_R("Playback Volume", WM8731_LOUT1V, WM8731_ROUT1V, 0, 127, 0),
-SOC_DOUBLE_R("Playback ZC Switch", WM8731_LOUT1V, WM8731_ROUT1V, 7, 1, 0),
+SOC_DOUBLE_R("Master Playback Volume", WM8731_LOUT1V, WM8731_ROUT1V,
+ 0, 127, 0),
+SOC_DOUBLE_R("Master Playback ZC Switch", WM8731_LOUT1V, WM8731_ROUT1V,
+ 7, 1, 0),
SOC_DOUBLE_R("Capture Volume", WM8731_LINVOL, WM8731_RINVOL, 0, 31, 0),
SOC_DOUBLE_R("Line Capture Switch", WM8731_LINVOL, WM8731_RINVOL, 7, 1, 1),