[ALSA] cmipci: add msbits constraint for 24-bit format
authorClemens Ladisch <clemens@ladisch.de>
Fri, 7 Sep 2007 08:44:13 +0000 (10:44 +0200)
committerJaroslav Kysela <perex@perex.cz>
Tue, 16 Oct 2007 14:49:14 +0000 (16:49 +0200)
Add a msbits constraint to the SPDIF output device to indicate that
S32_LE samples use only 24 bits for data.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
sound/pci/cmipci.c

index a8d6b54143fa3a0bec4cfa98a063c1cd92cde562..78a23984eac7d21239dfe0584c89058b9535110b 100644 (file)
@@ -1599,8 +1599,10 @@ static int snd_cmipci_playback_spdif_open(struct snd_pcm_substream *substream)
                return err;
        if (cm->can_ac3_hw) {
                runtime->hw = snd_cmipci_playback_spdif;
-               if (cm->chip_version >= 37)
+               if (cm->chip_version >= 37) {
                        runtime->hw.formats |= SNDRV_PCM_FMTBIT_S32_LE;
+                       snd_pcm_hw_constraint_msbits(runtime, 0, 32, 24);
+               }
                if (cm->chip_version == 68) {
                        runtime->hw.rates |= SNDRV_PCM_RATE_88200 |
                                             SNDRV_PCM_RATE_96000;