Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a3aaf7d2 authored by Takashi Sakamoto's avatar Takashi Sakamoto Committed by Takashi Iwai
Browse files

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: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 366a20d7
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -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);
+3 −2
Original line number Diff line number Diff line
@@ -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);