ALSA: bebob: use managed-resource to maintain data specific to M-Audio FW-1814/ProjectMix I/O
ALSA bebob driver allocates memory object for data specific to M-Audio FW-1884/ProjectMix I/O. The object is to maintain format of isochronous packet payload for packet streaming by components for ALSA rawMIDI/PCM interfaces. The object can be released as managed-resource of 'struct snd_card.card_dev'. This commit uses managed-resource of the sound card device for this purpose. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
366a20d7a7
commit
a3aaf7d2bd
|
@ -130,8 +130,6 @@ static void bebob_free(struct snd_bebob *bebob)
|
|||
{
|
||||
snd_bebob_stream_destroy_duplex(bebob);
|
||||
|
||||
kfree(bebob->maudio_special_quirk);
|
||||
|
||||
mutex_destroy(&bebob->mutex);
|
||||
fw_unit_put(bebob->unit);
|
||||
}
|
||||
|
@ -262,8 +260,6 @@ do_registration(struct work_struct *work)
|
|||
error:
|
||||
mutex_unlock(&devices_mutex);
|
||||
snd_bebob_stream_destroy_duplex(bebob);
|
||||
kfree(bebob->maudio_special_quirk);
|
||||
bebob->maudio_special_quirk = NULL;
|
||||
snd_card_free(bebob->card);
|
||||
dev_info(&bebob->unit->device,
|
||||
"Sound card registration failed: %d\n", err);
|
||||
|
|
|
@ -261,8 +261,9 @@ snd_bebob_maudio_special_discover(struct snd_bebob *bebob, bool is1814)
|
|||
struct special_params *params;
|
||||
int err;
|
||||
|
||||
params = kzalloc(sizeof(struct special_params), GFP_KERNEL);
|
||||
if (params == NULL)
|
||||
params = devm_kzalloc(&bebob->card->card_dev,
|
||||
sizeof(struct special_params), GFP_KERNEL);
|
||||
if (!params)
|
||||
return -ENOMEM;
|
||||
|
||||
mutex_lock(&bebob->mutex);
|
||||
|
|
Loading…
Reference in New Issue