ALSA: hdspm - Fix MADI channel format in the status ioctl
authorAdrian Knoth <adi@drcomp.erfurt.thur.de>
Thu, 27 Oct 2011 19:57:52 +0000 (21:57 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 31 Oct 2011 08:53:25 +0000 (09:53 +0100)
SNDRV_HDSPM_IOCTL_GET_STATUS is supposed to query the current card
status, so we have to return what we receive on the MADI wire (RX), not
what we transmit (TX) to others. The latter is a config item to be
queried via SNDRV_HDSPM_IOCTL_GET_CONFIG.

Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/rme9652/hdspm.c

index 6e2f7ef7ddb155189fc4800f1c67adc0d8405854..60a0b7de8e572dcf59500c7bd1e03276d903ed9c 100644 (file)
@@ -6253,7 +6253,7 @@ static int snd_hdspm_hwdep_ioctl(struct snd_hwdep *hw, struct file *file,
                        status.card_specific.madi.madi_input =
                                (statusregister & HDSPM_AB_int) ? 1 : 0;
                        status.card_specific.madi.channel_format =
-                               (statusregister & HDSPM_TX_64ch) ? 1 : 0;
+                               (statusregister & HDSPM_RX_64ch) ? 1 : 0;
                        /* TODO: Mac driver sets it when f_s>48kHz */
                        status.card_specific.madi.frame_format = 0;