projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[ALSA] intel8x0 - Fix irq handler registration
[powerpc.git]
/
sound
/
drivers
/
mtpav.c
diff --git
a/sound/drivers/mtpav.c
b/sound/drivers/mtpav.c
index
1280a57
..
e9d52c6
100644
(file)
--- a/
sound/drivers/mtpav.c
+++ b/
sound/drivers/mtpav.c
@@
-688,7
+688,7
@@
static int snd_mtpav_get_RAWMIDI(mtpav_t * mcard)
static mtpav_t *new_mtpav(void)
{
static mtpav_t *new_mtpav(void)
{
- mtpav_t *ncrd = k
calloc(1,
sizeof(*ncrd), GFP_KERNEL);
+ mtpav_t *ncrd = k
zalloc(
sizeof(*ncrd), GFP_KERNEL);
if (ncrd != NULL) {
spin_lock_init(&ncrd->spinlock);
if (ncrd != NULL) {
spin_lock_init(&ncrd->spinlock);
@@
-717,10
+717,7
@@
static void free_mtpav(mtpav_t * crd)
spin_unlock_irqrestore(&crd->spinlock, flags);
if (crd->irq >= 0)
free_irq(crd->irq, (void *)crd);
spin_unlock_irqrestore(&crd->spinlock, flags);
if (crd->irq >= 0)
free_irq(crd->irq, (void *)crd);
- if (crd->res_port) {
- release_resource(crd->res_port);
- kfree_nocheck(crd->res_port);
- }
+ release_and_free_resource(crd->res_port);
kfree(crd);
}
kfree(crd);
}
@@
-757,6
+754,9
@@
static int __init alsa_card_mtpav_init(void)
if (err < 0)
goto __error;
if (err < 0)
goto __error;
+ if ((err = snd_card_set_generic_dev(mtp_card->card)) < 0)
+ goto __error;
+
err = snd_card_register(mtp_card->card); // don't snd_card_register until AFTER all cards reources done!
//printk("snd_card_register returned %d\n", err);
err = snd_card_register(mtp_card->card); // don't snd_card_register until AFTER all cards reources done!
//printk("snd_card_register returned %d\n", err);