summaryrefslogtreecommitdiffstats
path: root/sound/pci/cmipci.c
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2007-09-07 10:44:13 +0200
committerJaroslav Kysela <perex@perex.cz>2007-10-16 16:49:14 +0200
commit57bd68b8b18608cf2729f97fcb984b8521d19551 (patch)
tree862412951440b072bda37fda9dca095d06440770 /sound/pci/cmipci.c
parent8e7f00f9248c2dc6b36f3c4d1932aa975b454c48 (diff)
downloadlinux-57bd68b8b18608cf2729f97fcb984b8521d19551.tar.bz2
[ALSA] cmipci: add msbits constraint for 24-bit format
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>
Diffstat (limited to 'sound/pci/cmipci.c')
-rw-r--r--sound/pci/cmipci.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/pci/cmipci.c b/sound/pci/cmipci.c
index a8d6b54143fa..78a23984eac7 100644
--- a/sound/pci/cmipci.c
+++ b/sound/pci/cmipci.c
@@ -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;