int aoa_snd_device_new(snd_device_type_t type, void * device_data, struct snd_device_ops * ops) { struct snd_card *card = aoa_get_card(); int err; if (!card) return -ENOMEM; err = snd_device_new(card, type, device_data, ops); if (err) { printk(KERN_ERR "snd-aoa: failed to create snd device (%d)\n", err); return err; } err = snd_device_register(card, device_data); if (err) { printk(KERN_ERR "snd-aoa: failed to register " "snd device (%d)\n", err); printk(KERN_ERR "snd-aoa: have you forgotten the " "dev_register callback?\n"); snd_device_free(card, device_data); } return err; }
int aoa_snd_device_new(snd_device_type_t type, void * device_data, struct snd_device_ops * ops) { struct snd_card *card = aoa_get_card(); int err; if (!card) return -ENOMEM; err = snd_device_new(card, type, device_data, ops); if (err) { ; return err; } err = snd_device_register(card, device_data); if (err) { // printk(KERN_ERR "snd-aoa: failed to register " ; // printk(KERN_ERR "snd-aoa: have you forgotten the " ; snd_device_free(card, device_data); } return err; }