Loading sound/pcmcia/pdaudiocf/pdaudiocf.c +4 −3 Original line number Diff line number Diff line Loading @@ -121,13 +121,14 @@ static int snd_pdacf_probe(struct pcmcia_device *link) pdacf = snd_pdacf_create(card); if (!pdacf) { snd_card_free(card); return -EIO; return -ENOMEM; } if (snd_device_new(card, SNDRV_DEV_LOWLEVEL, pdacf, &ops) < 0) { err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, pdacf, &ops); if (err < 0) { kfree(pdacf); snd_card_free(card); return -ENODEV; return err; } snd_card_set_dev(card, &handle_to_dev(link)); Loading sound/pcmcia/vx/vxpocket.c +14 −10 Original line number Diff line number Diff line Loading @@ -130,23 +130,26 @@ static struct snd_vx_hardware vxp440_hw = { /* * create vxpocket instance */ static struct snd_vxpocket *snd_vxpocket_new(struct snd_card *card, int ibl, struct pcmcia_device *link) static int snd_vxpocket_new(struct snd_card *card, int ibl, struct pcmcia_device *link, struct snd_vxpocket **chip_ret) { struct vx_core *chip; struct snd_vxpocket *vxp; static struct snd_device_ops ops = { .dev_free = snd_vxpocket_dev_free, }; int err; chip = snd_vx_create(card, &vxpocket_hw, &snd_vxpocket_ops, sizeof(struct snd_vxpocket) - sizeof(struct vx_core)); if (!chip) return NULL; return -ENOMEM; if (snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops) < 0) { err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); if (err < 0) { kfree(chip); return NULL; return err; } chip->ibl.size = ibl; Loading @@ -169,7 +172,8 @@ static struct snd_vxpocket *snd_vxpocket_new(struct snd_card *card, int ibl, link->conf.ConfigIndex = 1; link->conf.Present = PRESENT_OPTION; return vxp; *chip_ret = vxp; return 0; } Loading Loading @@ -313,10 +317,10 @@ static int vxpocket_probe(struct pcmcia_device *p_dev) return err; } vxp = snd_vxpocket_new(card, ibl[i], p_dev); if (! vxp) { err = snd_vxpocket_new(card, ibl[i], p_dev, &vxp); if (err < 0) { snd_card_free(card); return -ENODEV; return err; } card->private_data = vxp; Loading Loading
sound/pcmcia/pdaudiocf/pdaudiocf.c +4 −3 Original line number Diff line number Diff line Loading @@ -121,13 +121,14 @@ static int snd_pdacf_probe(struct pcmcia_device *link) pdacf = snd_pdacf_create(card); if (!pdacf) { snd_card_free(card); return -EIO; return -ENOMEM; } if (snd_device_new(card, SNDRV_DEV_LOWLEVEL, pdacf, &ops) < 0) { err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, pdacf, &ops); if (err < 0) { kfree(pdacf); snd_card_free(card); return -ENODEV; return err; } snd_card_set_dev(card, &handle_to_dev(link)); Loading
sound/pcmcia/vx/vxpocket.c +14 −10 Original line number Diff line number Diff line Loading @@ -130,23 +130,26 @@ static struct snd_vx_hardware vxp440_hw = { /* * create vxpocket instance */ static struct snd_vxpocket *snd_vxpocket_new(struct snd_card *card, int ibl, struct pcmcia_device *link) static int snd_vxpocket_new(struct snd_card *card, int ibl, struct pcmcia_device *link, struct snd_vxpocket **chip_ret) { struct vx_core *chip; struct snd_vxpocket *vxp; static struct snd_device_ops ops = { .dev_free = snd_vxpocket_dev_free, }; int err; chip = snd_vx_create(card, &vxpocket_hw, &snd_vxpocket_ops, sizeof(struct snd_vxpocket) - sizeof(struct vx_core)); if (!chip) return NULL; return -ENOMEM; if (snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops) < 0) { err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); if (err < 0) { kfree(chip); return NULL; return err; } chip->ibl.size = ibl; Loading @@ -169,7 +172,8 @@ static struct snd_vxpocket *snd_vxpocket_new(struct snd_card *card, int ibl, link->conf.ConfigIndex = 1; link->conf.Present = PRESENT_OPTION; return vxp; *chip_ret = vxp; return 0; } Loading Loading @@ -313,10 +317,10 @@ static int vxpocket_probe(struct pcmcia_device *p_dev) return err; } vxp = snd_vxpocket_new(card, ibl[i], p_dev); if (! vxp) { err = snd_vxpocket_new(card, ibl[i], p_dev, &vxp); if (err < 0) { snd_card_free(card); return -ENODEV; return err; } card->private_data = vxp; Loading