Loading sound/drivers/vx/vx_core.c +10 −2 Original line number Diff line number Diff line Loading @@ -774,6 +774,11 @@ int snd_vx_resume(struct vx_core *chip) EXPORT_SYMBOL(snd_vx_resume); #endif static void snd_vx_release(struct device *dev, void *data) { snd_vx_free_firmware(data); } /** * snd_vx_create - constructor for struct vx_core * @card: card instance Loading @@ -784,6 +789,8 @@ EXPORT_SYMBOL(snd_vx_resume); * this function allocates the instance and prepare for the hardware * initialization. * * The object is managed via devres, and will be automatically released. * * return the instance pointer if successful, NULL in error. */ struct vx_core *snd_vx_create(struct snd_card *card, Loading @@ -796,7 +803,8 @@ struct vx_core *snd_vx_create(struct snd_card *card, if (snd_BUG_ON(!card || !hw || !ops)) return NULL; chip = kzalloc(sizeof(*chip) + extra_size, GFP_KERNEL); chip = devres_alloc(snd_vx_release, sizeof(*chip) + extra_size, GFP_KERNEL); if (!chip) return NULL; mutex_init(&chip->lock); Loading sound/pci/vx222/vx222.c +0 −1 Original line number Diff line number Diff line Loading @@ -109,7 +109,6 @@ static int snd_vx222_free(struct vx_core *chip) if (vx->port[0]) pci_release_regions(vx->pci); pci_disable_device(vx->pci); kfree(chip); return 0; } Loading sound/pcmcia/vx/vxpocket.c +0 −22 Original line number Diff line number Diff line Loading @@ -50,19 +50,6 @@ static void vxpocket_release(struct pcmcia_device *link) pcmcia_disable_device(link); } /* * destructor, called from snd_card_free_when_closed() */ static int snd_vxpocket_dev_free(struct snd_device *device) { struct vx_core *chip = device->device_data; snd_vx_free_firmware(chip); kfree(chip); return 0; } /* * Hardware information */ Loading Loading @@ -122,21 +109,12 @@ static int snd_vxpocket_new(struct snd_card *card, int ibl, { struct vx_core *chip; struct snd_vxpocket *vxp; static const 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 -ENOMEM; err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); if (err < 0) { kfree(chip); return err; } chip->ibl.size = ibl; vxp = to_vxpocket(chip); Loading Loading
sound/drivers/vx/vx_core.c +10 −2 Original line number Diff line number Diff line Loading @@ -774,6 +774,11 @@ int snd_vx_resume(struct vx_core *chip) EXPORT_SYMBOL(snd_vx_resume); #endif static void snd_vx_release(struct device *dev, void *data) { snd_vx_free_firmware(data); } /** * snd_vx_create - constructor for struct vx_core * @card: card instance Loading @@ -784,6 +789,8 @@ EXPORT_SYMBOL(snd_vx_resume); * this function allocates the instance and prepare for the hardware * initialization. * * The object is managed via devres, and will be automatically released. * * return the instance pointer if successful, NULL in error. */ struct vx_core *snd_vx_create(struct snd_card *card, Loading @@ -796,7 +803,8 @@ struct vx_core *snd_vx_create(struct snd_card *card, if (snd_BUG_ON(!card || !hw || !ops)) return NULL; chip = kzalloc(sizeof(*chip) + extra_size, GFP_KERNEL); chip = devres_alloc(snd_vx_release, sizeof(*chip) + extra_size, GFP_KERNEL); if (!chip) return NULL; mutex_init(&chip->lock); Loading
sound/pci/vx222/vx222.c +0 −1 Original line number Diff line number Diff line Loading @@ -109,7 +109,6 @@ static int snd_vx222_free(struct vx_core *chip) if (vx->port[0]) pci_release_regions(vx->pci); pci_disable_device(vx->pci); kfree(chip); return 0; } Loading
sound/pcmcia/vx/vxpocket.c +0 −22 Original line number Diff line number Diff line Loading @@ -50,19 +50,6 @@ static void vxpocket_release(struct pcmcia_device *link) pcmcia_disable_device(link); } /* * destructor, called from snd_card_free_when_closed() */ static int snd_vxpocket_dev_free(struct snd_device *device) { struct vx_core *chip = device->device_data; snd_vx_free_firmware(chip); kfree(chip); return 0; } /* * Hardware information */ Loading Loading @@ -122,21 +109,12 @@ static int snd_vxpocket_new(struct snd_card *card, int ibl, { struct vx_core *chip; struct snd_vxpocket *vxp; static const 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 -ENOMEM; err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); if (err < 0) { kfree(chip); return err; } chip->ibl.size = ibl; vxp = to_vxpocket(chip); Loading