ALSA: ctxfi - Fix incorrect SPDIF status bit mask
authorPrzemyslaw Bruski <pbruskispam@op.pl>
Sun, 13 Mar 2011 15:18:56 +0000 (16:18 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 14 Mar 2011 10:19:30 +0000 (11:19 +0100)
SPDIF status mask creation was incorrect.

Signed-off-by: Przemyslaw Bruski <pbruskispam@op.pl>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/ctxfi/ctatc.c

index 1bff80c..b932154 100644 (file)
@@ -869,7 +869,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);