Lines Matching +full:3 +full:- +full:line
1 // SPDX-License-Identifier: GPL-2.0-only
3 * wm8750.c -- WM8750 ALSA SoC audio driver
39 { 3, 0x0079 },
100 static const char *wm8750_line_mux[] = {"Line 1", "Line 2", "Line 3", "PGA",
102 static const char *wm8750_pga_sel[] = {"Line 1", "Line 2", "Line 3",
106 static const char *wm8750_diff_sel[] = {"Line 1", "Line 2"};
145 SOC_ENUM("Playback De-emphasis", wm8750_enum[15]),
158 SOC_ENUM("Treble Cut-off", wm8750_enum[2]),
160 SOC_SINGLE("3D Switch", WM8750_3D, 0, 1, 0),
161 SOC_SINGLE("3D Volume", WM8750_3D, 1, 15, 0),
162 SOC_ENUM("3D Lower Cut-off", wm8750_enum[3]),
163 SOC_ENUM("3D Upper Cut-off", wm8750_enum[4]),
164 SOC_ENUM("3D Mode", wm8750_enum[5]),
173 SOC_SINGLE("ALC Capture NG Threshold", WM8750_NGATE, 3, 31, 0),
186 /* ADCDAC Bit 0 - ADCHPD */
187 /* ADCDAC Bit 4 - HPOR */
188 /* ADCTL1 Bit 2,3 - DATSEL */
189 /* ADCTL1 Bit 4,5 - DMONOMIX */
190 /* ADCTL1 Bit 6,7 - VSEL */
191 /* ADCTL2 Bit 2 - LRCM */
192 /* ADCTL2 Bit 3 - TRI */
193 /* ADCTL3 Bit 5 - HPFLREN */
194 /* ADCTL3 Bit 6 - VROI */
195 /* ADCTL3 Bit 7,8 - ADCLRM */
196 /* ADCIN Bit 4 - LDCM */
197 /* ADCIN Bit 5 - RDCM */
199 SOC_DOUBLE_R("Mic Boost", WM8750_LADCIN, WM8750_RADCIN, 4, 3, 0),
247 /* Left Line Mux */
251 /* Right Line Mux */
263 /* Out 3 Mux */
286 SND_SOC_DAPM_PGA("Right Out 2", WM8750_PWR2, 3, 0, NULL, 0),
295 SND_SOC_DAPM_ADC("Left ADC", "Left Capture", WM8750_PWR1, 3, 0),
301 SND_SOC_DAPM_MUX("Left Line Mux", SND_SOC_NOPM, 0, 0,
303 SND_SOC_DAPM_MUX("Right Line Mux", SND_SOC_NOPM, 0, 0,
307 SND_SOC_DAPM_PGA("Out 3", WM8750_PWR2, 1, 0, NULL, 0),
336 {"Left Mixer", "Left Bypass Switch", "Left Line Mux"},
338 {"Left Mixer", "Right Bypass Switch", "Right Line Mux"},
342 {"Right Mixer", "Left Bypass Switch", "Left Line Mux"},
344 {"Right Mixer", "Right Bypass Switch", "Right Line Mux"},
364 {"Mono Mixer", "Left Bypass Switch", "Left Line Mux"},
366 {"Mono Mixer", "Right Bypass Switch", "Right Line Mux"},
372 /* out 3 */
377 {"Out 3", NULL, "Out3 Mux"},
378 {"OUT3", NULL, "Out 3"},
380 /* Left Line Mux */
381 {"Left Line Mux", "Line 1", "LINPUT1"},
382 {"Left Line Mux", "Line 2", "LINPUT2"},
383 {"Left Line Mux", "Line 3", "LINPUT3"},
384 {"Left Line Mux", "PGA", "Left PGA Mux"},
385 {"Left Line Mux", "Differential", "Differential Mux"},
387 /* Right Line Mux */
388 {"Right Line Mux", "Line 1", "RINPUT1"},
389 {"Right Line Mux", "Line 2", "RINPUT2"},
390 {"Right Line Mux", "Line 3", "RINPUT3"},
391 {"Right Line Mux", "PGA", "Right PGA Mux"},
392 {"Right Line Mux", "Differential", "Differential Mux"},
395 {"Left PGA Mux", "Line 1", "LINPUT1"},
396 {"Left PGA Mux", "Line 2", "LINPUT2"},
397 {"Left PGA Mux", "Line 3", "LINPUT3"},
401 {"Right PGA Mux", "Line 1", "RINPUT1"},
402 {"Right PGA Mux", "Line 2", "RINPUT2"},
403 {"Right PGA Mux", "Line 3", "RINPUT3"},
407 {"Differential Mux", "Line 1", "LINPUT1"},
408 {"Differential Mux", "Line 1", "RINPUT1"},
409 {"Differential Mux", "Line 2", "LINPUT2"},
410 {"Differential Mux", "Line 2", "RINPUT2"},
496 return -EINVAL; in get_coeff()
502 struct snd_soc_component *component = codec_dai->component; in wm8750_set_dai_sysclk()
511 wm8750->sysclk = freq; in wm8750_set_dai_sysclk()
514 return -EINVAL; in wm8750_set_dai_sysclk()
520 struct snd_soc_component *component = codec_dai->component; in wm8750_set_dai_fmt()
531 return -EINVAL; in wm8750_set_dai_fmt()
551 return -EINVAL; in wm8750_set_dai_fmt()
568 return -EINVAL; in wm8750_set_dai_fmt()
579 struct snd_soc_component *component = dai->component; in wm8750_pcm_hw_params()
583 int coeff = get_coeff(wm8750->sysclk, params_rate(params)); in wm8750_pcm_hw_params()
611 struct snd_soc_component *component = dai->component; in wm8750_mute()
670 .name = "wm8750-hifi",
748 wm8750 = devm_kzalloc(&spi->dev, sizeof(struct wm8750_priv), in wm8750_spi_probe()
751 return -ENOMEM; in wm8750_spi_probe()
759 ret = devm_snd_soc_register_component(&spi->dev, in wm8750_spi_probe()
788 wm8750 = devm_kzalloc(&i2c->dev, sizeof(struct wm8750_priv), in wm8750_i2c_probe()
791 return -ENOMEM; in wm8750_i2c_probe()
799 ret = devm_snd_soc_register_component(&i2c->dev, in wm8750_i2c_probe()