ALSA: ctxfi - Fix incorrect SPDIF status bit mask
authorPrzemyslaw Bruski <pbruskispam@op.pl>
Sun, 13 Mar 2011 15:18:56 +0000 (16:18 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 23 Mar 2011 20:16:50 +0000 (13:16 -0700)
commit 4c1847e884efddcc3ede371f7839e5e65b25c34d upstream.

SPDIF status mask creation was incorrect.

Signed-off-by: Przemyslaw Bruski <pbruskispam@op.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
sound/pci/ctxfi/ctatc.c

index cb1f5337365341df98ad241310eab189264b9424..9969a262079a234d3eaf1ec4c746df6b0b48372c 100644 (file)
@@ -868,7 +868,7 @@ spdif_passthru_playback_setup(struct ct_atc *atc, struct ct_atc_pcm *apcm)
        mutex_lock(&atc->atc_mutex);
        dao->ops->get_spos(dao, &status);
        if (((status >> 24) & IEC958_AES3_CON_FS) != iec958_con_fs) {
-               status &= ((~IEC958_AES3_CON_FS) << 24);
+               status &= ~(IEC958_AES3_CON_FS << 24);
                status |= (iec958_con_fs << 24);
                dao->ops->set_spos(dao, status);
                dao->ops->commit_write(dao);