blob: c707f61cd47623b388215cf019dbf8cd5f2bd76a [file] [log] [blame]
From 3f4032861cfbff0b9134bf94c5c92e2146d1f068 Mon Sep 17 00:00:00 2001
From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Date: Fri, 10 Oct 2014 23:32:49 +0900
Subject: ALSA: bebob: Fix failure to detect source of clock for Terratec Phase 88
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
commit 3f4032861cfbff0b9134bf94c5c92e2146d1f068 upstream.
This patch fixes a failure to open PCM device with -ENOSYS in
Terratec Phase 88.
Terratec Phase 88 has two Selector Function Blocks of AVC Audio subunit
to switch source of clock. One is to switch internal/external for the
source and another is to switch word/spdif for the external clock.
The IDs for these Selector Function Blocks are 9 and 8. But in current
implementation they're 0 and 0.
Reported-by: András Murányi <muranyia@gmail.com>
Tested-by: András Murányi <muranyia@gmail.com>
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
sound/firewire/bebob/bebob_terratec.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/sound/firewire/bebob/bebob_terratec.c
+++ b/sound/firewire/bebob/bebob_terratec.c
@@ -17,10 +17,10 @@ phase88_rack_clk_src_get(struct snd_bebo
unsigned int enable_ext, enable_word;
int err;
- err = avc_audio_get_selector(bebob->unit, 0, 0, &enable_ext);
+ err = avc_audio_get_selector(bebob->unit, 0, 9, &enable_ext);
if (err < 0)
goto end;
- err = avc_audio_get_selector(bebob->unit, 0, 0, &enable_word);
+ err = avc_audio_get_selector(bebob->unit, 0, 8, &enable_word);
if (err < 0)
goto end;