aboutsummaryrefslogtreecommitdiff
path: root/sound/pci/pcxhr/pcxhr_mixer.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-03-24 00:36:19 +0100
committerTakashi Iwai <tiwai@suse.de>2009-03-24 00:36:19 +0100
commit7df4f694356a125e4553ca35b215fd9e88e858c5 (patch)
treeb153e8aeb6439c3f7bc150ad9e6e3ff9d57849a0 /sound/pci/pcxhr/pcxhr_mixer.c
parentb54fc8dd2c43888f2754505cca2b6e88604a8ffa (diff)
parentd563ffa6b319a4e401d096db9014a947590ca081 (diff)
Merge branch 'topic/pcxhr' into for-linus
Diffstat (limited to 'sound/pci/pcxhr/pcxhr_mixer.c')
-rw-r--r--sound/pci/pcxhr/pcxhr_mixer.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/pci/pcxhr/pcxhr_mixer.c b/sound/pci/pcxhr/pcxhr_mixer.c
index 2436e374586..fec04934462 100644
--- a/sound/pci/pcxhr/pcxhr_mixer.c
+++ b/sound/pci/pcxhr/pcxhr_mixer.c
@@ -789,11 +789,15 @@ static int pcxhr_clock_type_put(struct snd_kcontrol *kcontrol,
if (mgr->use_clock_type != ucontrol->value.enumerated.item[0]) {
mutex_lock(&mgr->setup_mutex);
mgr->use_clock_type = ucontrol->value.enumerated.item[0];
- if (mgr->use_clock_type)
+ rate = 0;
+ if (mgr->use_clock_type != PCXHR_CLOCK_TYPE_INTERNAL) {
pcxhr_get_external_clock(mgr, mgr->use_clock_type,
&rate);
- else
+ } else {
rate = mgr->sample_rate;
+ if (!rate)
+ rate = 48000;
+ }
if (rate) {
pcxhr_set_clock(mgr, rate);
if (mgr->sample_rate)