diff options
Diffstat (limited to 'sound/pci/mixart/mixart.c')
-rw-r--r-- | sound/pci/mixart/mixart.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sound/pci/mixart/mixart.c b/sound/pci/mixart/mixart.c index f23a73577c22..c1eb84a14c42 100644 --- a/sound/pci/mixart/mixart.c +++ b/sound/pci/mixart/mixart.c | |||
@@ -607,6 +607,7 @@ static int snd_mixart_hw_params(struct snd_pcm_substream *subs, | |||
607 | /* set the format to the board */ | 607 | /* set the format to the board */ |
608 | err = mixart_set_format(stream, format); | 608 | err = mixart_set_format(stream, format); |
609 | if(err < 0) { | 609 | if(err < 0) { |
610 | mutex_unlock(&mgr->setup_mutex); | ||
610 | return err; | 611 | return err; |
611 | } | 612 | } |
612 | 613 | ||
@@ -1365,12 +1366,12 @@ static int __devinit snd_mixart_probe(struct pci_dev *pci, | |||
1365 | else | 1366 | else |
1366 | idx = index[dev] + i; | 1367 | idx = index[dev] + i; |
1367 | snprintf(tmpid, sizeof(tmpid), "%s-%d", id[dev] ? id[dev] : "MIXART", i); | 1368 | snprintf(tmpid, sizeof(tmpid), "%s-%d", id[dev] ? id[dev] : "MIXART", i); |
1368 | card = snd_card_new(idx, tmpid, THIS_MODULE, 0); | 1369 | err = snd_card_create(idx, tmpid, THIS_MODULE, 0, &card); |
1369 | 1370 | ||
1370 | if (! card) { | 1371 | if (err < 0) { |
1371 | snd_printk(KERN_ERR "cannot allocate the card %d\n", i); | 1372 | snd_printk(KERN_ERR "cannot allocate the card %d\n", i); |
1372 | snd_mixart_free(mgr); | 1373 | snd_mixart_free(mgr); |
1373 | return -ENOMEM; | 1374 | return err; |
1374 | } | 1375 | } |
1375 | 1376 | ||
1376 | strcpy(card->driver, CARD_NAME); | 1377 | strcpy(card->driver, CARD_NAME); |