Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 33ef7651 authored by Nicolas Graziano's avatar Nicolas Graziano Committed by Jaroslav Kysela
Browse files

[ALSA] hda_intel prefer 24bit instead of 20bit



If I understand the hda_intel code, for format > 20bit it only advertise
the SNDRV_PCM_FMTBIT_S32_LE format and play it at 32 bit, 20 bit or 24 bit.
But if the 20bit and 24bit are available, actually it prefer the 20bit
format. This path is to prefer the 24bit format instead of 20bit.

Signed-off-by: default avatarNicolas Graziano <nicolas.graziano@wanadoo.fr>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@suse.cz>
parent a9226251
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -1505,10 +1505,10 @@ int snd_hda_query_supported_pcm(struct hda_codec *codec, hda_nid_t nid,
				formats |= SNDRV_PCM_FMTBIT_S32_LE;
				formats |= SNDRV_PCM_FMTBIT_S32_LE;
				if (val & AC_SUPPCM_BITS_32)
				if (val & AC_SUPPCM_BITS_32)
					bps = 32;
					bps = 32;
				else if (val & AC_SUPPCM_BITS_20)
					bps = 20;
				else if (val & AC_SUPPCM_BITS_24)
				else if (val & AC_SUPPCM_BITS_24)
					bps = 24;
					bps = 24;
				else if (val & AC_SUPPCM_BITS_20)
					bps = 20;
			}
			}
		}
		}
		else if (streams == AC_SUPFMT_FLOAT32) { /* should be exclusive */
		else if (streams == AC_SUPFMT_FLOAT32) { /* should be exclusive */