Lines Matching +full:spdif +full:- +full:2

1 // SPDX-License-Identifier: GPL-2.0-or-later
52 struct hdmi_spec *spec = codec->spec;
54 if (spec->multiout.max_channels == 2)
65 int chan = channels ? (channels - 1) : 1;
70 case 2:
92 (0x71 - chan - chanmask));
99 struct hdmi_spec *spec = codec->spec;
118 return snd_hda_multi_out_dig_close(codec, &spec->multiout);
130 struct hdmi_spec *spec = codec->spec;
131 struct hda_spdif_out *spdif;
134 guard(mutex)(&codec->spdif_mutex);
136 spdif = snd_hda_spdif_out_of_nid(codec, per_cvt->cvt_nid);
138 chs = substream->runtime->channels;
142 /* turn off SPDIF once; otherwise the IEC958 bits won't be updated */
143 if (codec->spdif_status_reset && (spdif->ctls & AC_DIG1_ENABLE))
148 spdif->ctls & ~AC_DIG1_ENABLE & 0xff);
160 if (codec->spdif_status_reset && (spdif->ctls & AC_DIG1_ENABLE)) {
165 spdif->ctls & 0xff);
173 if (chs == 2)
176 channel_id = i * 2;
178 /* turn off SPDIF once;
181 if (codec->spdif_status_reset &&
182 (spdif->ctls & AC_DIG1_ENABLE))
187 spdif->ctls & ~AC_DIG1_ENABLE & 0xff);
202 if (codec->spdif_status_reset &&
203 (spdif->ctls & AC_DIG1_ENABLE)) {
208 spdif->ctls & 0xff);
223 .channels_min = 2,
238 struct hdmi_spec *spec = codec->spec;
242 if (!err && spec->multiout.max_channels == 8) {
245 info->own_chmap = true;
252 struct hdmi_spec *spec = codec->spec;
261 if (spec->multiout.max_channels != 8)
266 err = snd_pcm_add_chmap_ctls(info->pcm,
271 switch (codec->preset->vendor_id) {
276 chmap->channel_mask = (1U << 2) | (1U << 8);
279 chmap->channel_mask = (1U << 2) | (1U << 6) | (1U << 8);
285 2, 6, 8
289 2, 8
316 spec = codec->spec;
317 spec->pcm_playback.rates = SUPPORTED_RATES;
318 spec->pcm_playback.maxbps = SUPPORTED_MAXBPS;
319 spec->pcm_playback.formats = SUPPORTED_FORMATS;
320 spec->nv_dp_workaround = true;
322 if (id->driver_data == MODEL_2CH)
325 spec->multiout.max_channels = 8;
326 spec->pcm_playback = nvhdmi_pcm_playback_8ch_7x;
328 switch (codec->preset->vendor_id) {
333 spec->hw_constraints_channels = &hw_constraints_2_8_channels;
336 spec->hw_constraints_channels = &hw_constraints_2_6_8_channels;
375 MODULE_DESCRIPTION("Legacy Nvidia HDMI HD-audio codec");