提交 c3e6f7d8 编写于 作者: T Takashi Iwai 提交者: Jaroslav Kysela

[ALSA] Remove superfluous pcm_free callbacks

Remove superflous pcm_free callbacks.
Signed-off-by: NTakashi Iwai <tiwai@suse.de>
上级 f31a31b9
......@@ -662,13 +662,6 @@ static snd_pcm_ops_t snd_ad1816a_capture_ops = {
.pointer = snd_ad1816a_capture_pointer,
};
static void snd_ad1816a_pcm_free(snd_pcm_t *pcm)
{
ad1816a_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_ad1816a_pcm(ad1816a_t *chip, int device, snd_pcm_t **rpcm)
{
int error;
......@@ -681,7 +674,6 @@ int snd_ad1816a_pcm(ad1816a_t *chip, int device, snd_pcm_t **rpcm)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ad1816a_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_ad1816a_pcm_free;
pcm->info_flags = (chip->dma1 == chip->dma2 ) ? SNDRV_PCM_INFO_JOINT_DUPLEX : 0;
strcpy(pcm->name, snd_ad1816a_chip_id(chip));
......
......@@ -959,13 +959,6 @@ static snd_pcm_ops_t snd_ad1848_capture_ops = {
.pointer = snd_ad1848_capture_pointer,
};
static void snd_ad1848_pcm_free(snd_pcm_t *pcm)
{
ad1848_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_ad1848_pcm(ad1848_t *chip, int device, snd_pcm_t **rpcm)
{
snd_pcm_t *pcm;
......@@ -977,7 +970,6 @@ int snd_ad1848_pcm(ad1848_t *chip, int device, snd_pcm_t **rpcm)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ad1848_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ad1848_capture_ops);
pcm->private_free = snd_ad1848_pcm_free;
pcm->private_data = chip;
pcm->info_flags = SNDRV_PCM_INFO_HALF_DUPLEX;
strcpy(pcm->name, snd_ad1848_chip_id(chip));
......
......@@ -388,11 +388,6 @@ static int snd_cmi8330_capture_open(snd_pcm_substream_t * substream)
return chip->streams[SNDRV_PCM_STREAM_CAPTURE].open(substream);
}
static void snd_cmi8330_pcm_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_cmi8330_pcm(snd_card_t *card, struct snd_cmi8330 *chip)
{
snd_pcm_t *pcm;
......@@ -407,7 +402,6 @@ static int __devinit snd_cmi8330_pcm(snd_card_t *card, struct snd_cmi8330 *chip)
return err;
strcpy(pcm->name, "CMI8330");
pcm->private_data = chip;
pcm->private_free = snd_cmi8330_pcm_free;
/* SB16 */
ops = snd_sb16dsp_get_pcm_ops(CMI_SB_STREAM);
......
......@@ -1605,13 +1605,6 @@ static snd_pcm_ops_t snd_cs4231_capture_ops = {
.pointer = snd_cs4231_capture_pointer,
};
static void snd_cs4231_pcm_free(snd_pcm_t *pcm)
{
cs4231_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_cs4231_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm)
{
snd_pcm_t *pcm;
......@@ -1629,7 +1622,6 @@ int snd_cs4231_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm)
/* global setup */
pcm->private_data = chip;
pcm->private_free = snd_cs4231_pcm_free;
pcm->info_flags = 0;
if (chip->single_dma)
pcm->info_flags |= SNDRV_PCM_INFO_HALF_DUPLEX;
......
......@@ -724,13 +724,6 @@ static snd_pcm_ops_t snd_es1688_capture_ops = {
.pointer = snd_es1688_capture_pointer,
};
static void snd_es1688_pcm_free(snd_pcm_t *pcm)
{
es1688_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_es1688_pcm(es1688_t * chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -743,7 +736,6 @@ int snd_es1688_pcm(es1688_t * chip, int device, snd_pcm_t ** rpcm)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_es1688_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_es1688_pcm_free;
pcm->info_flags = SNDRV_PCM_INFO_HALF_DUPLEX;
sprintf(pcm->name, snd_es1688_chip_id(chip));
chip->pcm = pcm;
......
......@@ -1566,13 +1566,6 @@ static snd_pcm_ops_t snd_es18xx_capture_ops = {
.pointer = snd_es18xx_capture_pointer,
};
static void snd_es18xx_pcm_free(snd_pcm_t *pcm)
{
es18xx_t *codec = pcm->private_data;
codec->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_es18xx_pcm(es18xx_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1595,7 +1588,6 @@ static int __devinit snd_es18xx_pcm(es18xx_t *chip, int device, snd_pcm_t ** rpc
/* global setup */
pcm->private_data = chip;
pcm->private_free = snd_es18xx_pcm_free;
pcm->info_flags = 0;
if (chip->caps & ES18XX_DUPLEX_SAME)
pcm->info_flags |= SNDRV_PCM_INFO_JOINT_DUPLEX;
......
......@@ -727,13 +727,6 @@ static int snd_gf1_pcm_capture_close(snd_pcm_substream_t * substream)
return 0;
}
static void snd_gf1_pcm_free(snd_pcm_t *pcm)
{
snd_gus_card_t *gus = pcm->private_data;
gus->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int snd_gf1_pcm_volume_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo)
{
uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
......@@ -860,7 +853,6 @@ int snd_gf1_pcm_new(snd_gus_card_t * gus, int pcm_dev, int control_index, snd_pc
if (err < 0)
return err;
pcm->private_data = gus;
pcm->private_free = snd_gf1_pcm_free;
/* playback setup */
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_gf1_pcm_playback_ops);
......
......@@ -1346,13 +1346,6 @@ static snd_pcm_ops_t snd_opti93x_capture_ops = {
.pointer = snd_opti93x_capture_pointer,
};
static void snd_opti93x_pcm_free(snd_pcm_t *pcm)
{
opti93x_t *codec = pcm->private_data;
codec->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int snd_opti93x_pcm(opti93x_t *codec, int device, snd_pcm_t **rpcm)
{
int error;
......@@ -1365,7 +1358,6 @@ static int snd_opti93x_pcm(opti93x_t *codec, int device, snd_pcm_t **rpcm)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_opti93x_capture_ops);
pcm->private_data = codec;
pcm->private_free = snd_opti93x_pcm_free;
pcm->info_flags = SNDRV_PCM_INFO_JOINT_DUPLEX;
strcpy(pcm->name, snd_opti93x_chip_id(codec));
......
......@@ -851,11 +851,6 @@ static snd_pcm_ops_t snd_sb16_capture_ops = {
.pointer = snd_sb16_capture_pointer,
};
static void snd_sb16dsp_pcm_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_sb16dsp_pcm(sb_t * chip, int device, snd_pcm_t ** rpcm)
{
snd_card_t *card = chip->card;
......@@ -869,7 +864,6 @@ int snd_sb16dsp_pcm(sb_t * chip, int device, snd_pcm_t ** rpcm)
sprintf(pcm->name, "DSP v%i.%i", chip->version >> 8, chip->version & 0xff);
pcm->info_flags = SNDRV_PCM_INFO_JOINT_DUPLEX;
pcm->private_data = chip;
pcm->private_free = snd_sb16dsp_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_sb16_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_sb16_capture_ops);
......
......@@ -507,11 +507,6 @@ static snd_pcm_ops_t snd_sb8_capture_ops = {
.pointer = snd_sb8_capture_pointer,
};
static void snd_sb8dsp_pcm_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_sb8dsp_pcm(sb_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_card_t *card = chip->card;
......@@ -525,7 +520,6 @@ int snd_sb8dsp_pcm(sb_t *chip, int device, snd_pcm_t ** rpcm)
sprintf(pcm->name, "DSP v%i.%i", chip->version >> 8, chip->version & 0xff);
pcm->info_flags = SNDRV_PCM_INFO_HALF_DUPLEX;
pcm->private_data = chip;
pcm->private_free = snd_sb8dsp_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_sb8_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_sb8_capture_ops);
......
......@@ -623,14 +623,6 @@ snd_ad1889_interrupt(int irq,
return IRQ_HANDLED;
}
static void
snd_ad1889_pcm_free(snd_pcm_t *pcm)
{
struct snd_ad1889 *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit
snd_ad1889_pcm_init(struct snd_ad1889 *chip, int device, snd_pcm_t **rpcm)
{
......@@ -650,7 +642,6 @@ snd_ad1889_pcm_init(struct snd_ad1889 *chip, int device, snd_pcm_t **rpcm)
&snd_ad1889_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_ad1889_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, chip->card->shortname);
......
......@@ -490,13 +490,6 @@ static snd_pcm_ops_t snd_als4000_capture_ops = {
.pointer = snd_als4000_capture_pointer
};
static void snd_als4000_pcm_free(snd_pcm_t *pcm)
{
sb_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_als4000_pcm(sb_t *chip, int device)
{
snd_pcm_t *pcm;
......@@ -504,7 +497,6 @@ static int __devinit snd_als4000_pcm(sb_t *chip, int device)
if ((err = snd_pcm_new(chip->card, "ALS4000 DSP", device, 1, 1, &pcm)) < 0)
return err;
pcm->private_free = snd_als4000_pcm_free;
pcm->private_data = chip;
pcm->info_flags = SNDRV_PCM_INFO_JOINT_DUPLEX;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_als4000_playback_ops);
......
......@@ -1365,14 +1365,6 @@ static snd_pcm_ops_t snd_azf3328_capture_ops = {
.pointer = snd_azf3328_capture_pointer
};
static void
snd_azf3328_pcm_free(snd_pcm_t *pcm)
{
azf3328_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit
snd_azf3328_pcm(azf3328_t *chip, int device)
{
......@@ -1386,7 +1378,6 @@ snd_azf3328_pcm(azf3328_t *chip, int device)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_azf3328_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_azf3328_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, chip->card->shortname);
chip->pcm = pcm;
......
......@@ -1069,13 +1069,6 @@ static irqreturn_t snd_ca0106_interrupt(int irq, void *dev_id,
return IRQ_HANDLED;
}
static void snd_ca0106_pcm_free(snd_pcm_t *pcm)
{
ca0106_t *emu = pcm->private_data;
emu->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_ca0106_pcm(ca0106_t *emu, int device, snd_pcm_t **rpcm)
{
snd_pcm_t *pcm;
......@@ -1088,7 +1081,6 @@ static int __devinit snd_ca0106_pcm(ca0106_t *emu, int device, snd_pcm_t **rpcm)
return err;
pcm->private_data = emu;
pcm->private_free = snd_ca0106_pcm_free;
switch (device) {
case 0:
......
......@@ -1693,11 +1693,6 @@ static snd_pcm_ops_t snd_cmipci_capture_spdif_ops = {
/*
*/
static void snd_cmipci_pcm_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_cmipci_pcm_new(cmipci_t *cm, int device)
{
snd_pcm_t *pcm;
......@@ -1711,7 +1706,6 @@ static int __devinit snd_cmipci_pcm_new(cmipci_t *cm, int device)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_cmipci_capture_ops);
pcm->private_data = cm;
pcm->private_free = snd_cmipci_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "C-Media PCI DAC/ADC");
cm->pcm = pcm;
......@@ -1734,7 +1728,6 @@ static int __devinit snd_cmipci_pcm2_new(cmipci_t *cm, int device)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_cmipci_playback2_ops);
pcm->private_data = cm;
pcm->private_free = snd_cmipci_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "C-Media PCI 2nd DAC");
cm->pcm2 = pcm;
......@@ -1758,7 +1751,6 @@ static int __devinit snd_cmipci_pcm_spdif_new(cmipci_t *cm, int device)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_cmipci_capture_spdif_ops);
pcm->private_data = cm;
pcm->private_free = snd_cmipci_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "C-Media PCI IEC958");
cm->pcm_spdif = pcm;
......
......@@ -990,13 +990,6 @@ static snd_pcm_ops_t snd_cs4281_capture_ops = {
.pointer = snd_cs4281_pointer,
};
static void snd_cs4281_pcm_free(snd_pcm_t *pcm)
{
cs4281_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_cs4281_pcm(cs4281_t * chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1012,7 +1005,6 @@ static int __devinit snd_cs4281_pcm(cs4281_t * chip, int device, snd_pcm_t ** rp
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_cs4281_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_cs4281_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "CS4281");
chip->pcm = pcm;
......
......@@ -1574,35 +1574,7 @@ static snd_pcm_ops_t snd_cs46xx_capture_indirect_ops = {
.ack = snd_cs46xx_capture_transfer,
};
static void snd_cs46xx_pcm_free(snd_pcm_t *pcm)
{
cs46xx_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
#ifdef CONFIG_SND_CS46XX_NEW_DSP
static void snd_cs46xx_pcm_rear_free(snd_pcm_t *pcm)
{
cs46xx_t *chip = pcm->private_data;
chip->pcm_rear = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static void snd_cs46xx_pcm_center_lfe_free(snd_pcm_t *pcm)
{
cs46xx_t *chip = pcm->private_data;
chip->pcm_center_lfe = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static void snd_cs46xx_pcm_iec958_free(snd_pcm_t *pcm)
{
cs46xx_t *chip = pcm->private_data;
chip->pcm_iec958 = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
#define MAX_PLAYBACK_CHANNELS (DSP_MAX_PCM_CHANNELS - 1)
#else
#define MAX_PLAYBACK_CHANNELS 1
......@@ -1619,7 +1591,6 @@ int __devinit snd_cs46xx_pcm(cs46xx_t *chip, int device, snd_pcm_t ** rpcm)
return err;
pcm->private_data = chip;
pcm->private_free = snd_cs46xx_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_cs46xx_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_cs46xx_capture_ops);
......@@ -1652,7 +1623,6 @@ int __devinit snd_cs46xx_pcm_rear(cs46xx_t *chip, int device, snd_pcm_t ** rpcm)
return err;
pcm->private_data = chip;
pcm->private_free = snd_cs46xx_pcm_rear_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_cs46xx_playback_rear_ops);
......@@ -1682,7 +1652,6 @@ int __devinit snd_cs46xx_pcm_center_lfe(cs46xx_t *chip, int device, snd_pcm_t **
return err;
pcm->private_data = chip;
pcm->private_free = snd_cs46xx_pcm_center_lfe_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_cs46xx_playback_clfe_ops);
......@@ -1712,7 +1681,6 @@ int __devinit snd_cs46xx_pcm_iec958(cs46xx_t *chip, int device, snd_pcm_t ** rpc
return err;
pcm->private_data = chip;
pcm->private_free = snd_cs46xx_pcm_iec958_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_cs46xx_playback_iec958_ops);
......
......@@ -836,13 +836,6 @@ static irqreturn_t snd_emu10k1x_interrupt(int irq, void *dev_id,
return IRQ_HANDLED;
}
static void snd_emu10k1x_pcm_free(snd_pcm_t *pcm)
{
emu10k1x_t *emu = pcm->private_data;
emu->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_emu10k1x_pcm(emu10k1x_t *emu, int device, snd_pcm_t **rpcm)
{
snd_pcm_t *pcm;
......@@ -858,7 +851,6 @@ static int __devinit snd_emu10k1x_pcm(emu10k1x_t *emu, int device, snd_pcm_t **r
return err;
pcm->private_data = emu;
pcm->private_free = snd_emu10k1x_pcm_free;
switch(device) {
case 0:
......
......@@ -1249,13 +1249,6 @@ static snd_pcm_ops_t snd_emu10k1_efx_playback_ops = {
.page = snd_pcm_sgbuf_ops_page,
};
static void snd_emu10k1_pcm_free(snd_pcm_t *pcm)
{
emu10k1_t *emu = pcm->private_data;
emu->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_emu10k1_pcm(emu10k1_t * emu, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1269,7 +1262,6 @@ int __devinit snd_emu10k1_pcm(emu10k1_t * emu, int device, snd_pcm_t ** rpcm)
return err;
pcm->private_data = emu;
pcm->private_free = snd_emu10k1_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_ops);
......@@ -1305,7 +1297,6 @@ int __devinit snd_emu10k1_pcm_multi(emu10k1_t * emu, int device, snd_pcm_t ** rp
return err;
pcm->private_data = emu;
pcm->private_free = snd_emu10k1_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_efx_playback_ops);
......@@ -1336,13 +1327,6 @@ static snd_pcm_ops_t snd_emu10k1_capture_mic_ops = {
.pointer = snd_emu10k1_capture_pointer,
};
static void snd_emu10k1_pcm_mic_free(snd_pcm_t *pcm)
{
emu10k1_t *emu = pcm->private_data;
emu->pcm_mic = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_emu10k1_pcm_mic(emu10k1_t * emu, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1355,7 +1339,6 @@ int __devinit snd_emu10k1_pcm_mic(emu10k1_t * emu, int device, snd_pcm_t ** rpcm
return err;
pcm->private_data = emu;
pcm->private_free = snd_emu10k1_pcm_mic_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_mic_ops);
......@@ -1673,13 +1656,6 @@ static snd_pcm_ops_t snd_emu10k1_fx8010_playback_ops = {
.ack = snd_emu10k1_fx8010_playback_transfer,
};
static void snd_emu10k1_pcm_efx_free(snd_pcm_t *pcm)
{
emu10k1_t *emu = pcm->private_data;
emu->pcm_efx = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_emu10k1_pcm_efx(emu10k1_t * emu, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1693,7 +1669,6 @@ int __devinit snd_emu10k1_pcm_efx(emu10k1_t * emu, int device, snd_pcm_t ** rpcm
return err;
pcm->private_data = emu;
pcm->private_free = snd_emu10k1_pcm_efx_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_emu10k1_fx8010_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_emu10k1_capture_efx_ops);
......
......@@ -587,14 +587,6 @@ int snd_p16v_free(emu10k1_t *chip)
return 0;
}
static void snd_p16v_pcm_free(snd_pcm_t *pcm)
{
emu10k1_t *emu = pcm->private_data;
//snd_printk("snd_p16v_pcm_free pcm: called\n");
snd_pcm_lib_preallocate_free_for_all(pcm);
emu->pcm = NULL;
}
int snd_p16v_pcm(emu10k1_t *emu, int device, snd_pcm_t **rpcm)
{
snd_pcm_t *pcm;
......@@ -611,7 +603,6 @@ int snd_p16v_pcm(emu10k1_t *emu, int device, snd_pcm_t **rpcm)
return err;
pcm->private_data = emu;
pcm->private_free = snd_p16v_pcm_free;
// Single playback 8 channel device.
// Single capture 2 channel device.
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_p16v_playback_front_ops);
......
......@@ -1214,13 +1214,6 @@ static snd_pcm_ops_t snd_ensoniq_capture_ops = {
.pointer = snd_ensoniq_capture_pointer,
};
static void snd_ensoniq_pcm_free(snd_pcm_t *pcm)
{
ensoniq_t *ensoniq = pcm->private_data;
ensoniq->pcm1 = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_ensoniq_pcm(ensoniq_t * ensoniq, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1244,7 +1237,6 @@ static int __devinit snd_ensoniq_pcm(ensoniq_t * ensoniq, int device, snd_pcm_t
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ensoniq_capture_ops);
pcm->private_data = ensoniq;
pcm->private_free = snd_ensoniq_pcm_free;
pcm->info_flags = 0;
#ifdef CHIP1370
strcpy(pcm->name, "ES1370 DAC2/ADC");
......@@ -1261,13 +1253,6 @@ static int __devinit snd_ensoniq_pcm(ensoniq_t * ensoniq, int device, snd_pcm_t
return 0;
}
static void snd_ensoniq_pcm_free2(snd_pcm_t *pcm)
{
ensoniq_t *ensoniq = pcm->private_data;
ensoniq->pcm2 = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_ensoniq_pcm2(ensoniq_t * ensoniq, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1289,7 +1274,6 @@ static int __devinit snd_ensoniq_pcm2(ensoniq_t * ensoniq, int device, snd_pcm_t
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ensoniq_playback2_ops);
#endif
pcm->private_data = ensoniq;
pcm->private_free = snd_ensoniq_pcm_free2;
pcm->info_flags = 0;
#ifdef CHIP1370
strcpy(pcm->name, "ES1370 DAC1");
......
......@@ -1000,11 +1000,6 @@ static snd_pcm_ops_t snd_es1938_capture_ops = {
.copy = snd_es1938_capture_copy,
};
static void snd_es1938_free_pcm(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_es1938_new_pcm(es1938_t *chip, int device)
{
snd_pcm_t *pcm;
......@@ -1016,7 +1011,6 @@ static int __devinit snd_es1938_new_pcm(es1938_t *chip, int device)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_es1938_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_es1938_free_pcm;
pcm->info_flags = 0;
strcpy(pcm->name, "ESS Solo-1");
......
......@@ -665,13 +665,6 @@ static snd_pcm_ops_t snd_fm801_capture_ops = {
.pointer = snd_fm801_capture_pointer,
};
static void snd_fm801_pcm_free(snd_pcm_t *pcm)
{
fm801_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_fm801_pcm(fm801_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -686,7 +679,6 @@ static int __devinit snd_fm801_pcm(fm801_t *chip, int device, snd_pcm_t ** rpcm)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_fm801_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_fm801_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "FM801");
chip->pcm = pcm;
......
......@@ -859,13 +859,6 @@ static snd_pcm_ops_t snd_ice1712_capture_ops = {
.pointer = snd_ice1712_capture_pointer,
};
static void snd_ice1712_pcm_free(snd_pcm_t *pcm)
{
ice1712_t *ice = pcm->private_data;
ice->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_ice1712_pcm(ice1712_t * ice, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -881,7 +874,6 @@ static int __devinit snd_ice1712_pcm(ice1712_t * ice, int device, snd_pcm_t ** r
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ice1712_capture_ops);
pcm->private_data = ice;
pcm->private_free = snd_ice1712_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "ICE1712 consumer");
ice->pcm = pcm;
......@@ -897,13 +889,6 @@ static int __devinit snd_ice1712_pcm(ice1712_t * ice, int device, snd_pcm_t ** r
return 0;
}
static void snd_ice1712_pcm_free_ds(snd_pcm_t *pcm)
{
ice1712_t *ice = pcm->private_data;
ice->pcm_ds = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_ice1712_pcm_ds(ice1712_t * ice, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -918,7 +903,6 @@ static int __devinit snd_ice1712_pcm_ds(ice1712_t * ice, int device, snd_pcm_t *
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ice1712_playback_ds_ops);
pcm->private_data = ice;
pcm->private_free = snd_ice1712_pcm_free_ds;
pcm->info_flags = 0;
strcpy(pcm->name, "ICE1712 consumer (DS)");
ice->pcm_ds = pcm;
......@@ -1223,13 +1207,6 @@ static int snd_ice1712_capture_pro_close(snd_pcm_substream_t * substream)
return 0;
}
static void snd_ice1712_pcm_profi_free(snd_pcm_t *pcm)
{
ice1712_t *ice = pcm->private_data;
ice->pcm_pro = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static snd_pcm_ops_t snd_ice1712_playback_pro_ops = {
.open = snd_ice1712_playback_pro_open,
.close = snd_ice1712_playback_pro_close,
......@@ -1267,7 +1244,6 @@ static int __devinit snd_ice1712_pcm_profi(ice1712_t * ice, int device, snd_pcm_
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ice1712_capture_pro_ops);
pcm->private_data = ice;
pcm->private_free = snd_ice1712_pcm_profi_free;
pcm->info_flags = 0;
strcpy(pcm->name, "ICE1712 multi");
......
......@@ -3336,15 +3336,6 @@ static int __devinit snd_hdspm_preallocate_memory(hdspm_t * hdspm)
return 0;
}
static int snd_hdspm_memory_free(hdspm_t * hdspm)
{
snd_printdd("memory_free_for_all %p\n", hdspm->pcm);
snd_pcm_lib_preallocate_free_for_all(hdspm->pcm);
return 0;
}
static void hdspm_set_sgbuf(hdspm_t * hdspm, struct snd_sg_buf *sgbuf,
unsigned int reg, int channels)
{
......@@ -3568,8 +3559,6 @@ static int snd_hdspm_free(hdspm_t * hdspm)
if (hdspm->iobase)
iounmap(hdspm->iobase);
snd_hdspm_memory_free(hdspm);
if (hdspm->port)
pci_release_regions(hdspm->pci);
......
......@@ -844,13 +844,6 @@ static snd_pcm_ops_t snd_sonicvibes_capture_ops = {
.pointer = snd_sonicvibes_capture_pointer,
};
static void snd_sonicvibes_pcm_free(snd_pcm_t *pcm)
{
sonicvibes_t *sonic = pcm->private_data;
sonic->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __devinit snd_sonicvibes_pcm(sonicvibes_t * sonic, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -864,7 +857,6 @@ static int __devinit snd_sonicvibes_pcm(sonicvibes_t * sonic, int device, snd_pc
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_sonicvibes_capture_ops);
pcm->private_data = sonic;
pcm->private_free = snd_sonicvibes_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, "S3 SonicVibes");
sonic->pcm = pcm;
......
......@@ -2117,37 +2117,6 @@ static snd_pcm_ops_t snd_trident_spdif_7018_ops = {
.pointer = snd_trident_playback_pointer,
};
/*---------------------------------------------------------------------------
snd_trident_pcm_free
Description: This routine release the 4DWave private data.
Paramters: private_data - pointer to 4DWave device info.
Returns: None
---------------------------------------------------------------------------*/
static void snd_trident_pcm_free(snd_pcm_t *pcm)
{
trident_t *trident = pcm->private_data;
trident->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static void snd_trident_foldback_pcm_free(snd_pcm_t *pcm)
{
trident_t *trident = pcm->private_data;
trident->foldback = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static void snd_trident_spdif_pcm_free(snd_pcm_t *pcm)
{
trident_t *trident = pcm->private_data;
trident->spdif = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
/*---------------------------------------------------------------------------
snd_trident_pcm
......@@ -2170,7 +2139,6 @@ int __devinit snd_trident_pcm(trident_t * trident, int device, snd_pcm_t ** rpcm
return err;
pcm->private_data = trident;
pcm->private_free = snd_trident_pcm_free;
if (trident->tlb.entries) {
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_trident_nx_playback_ops);
......@@ -2232,7 +2200,6 @@ int __devinit snd_trident_foldback_pcm(trident_t * trident, int device, snd_pcm_
return err;
foldback->private_data = trident;
foldback->private_free = snd_trident_foldback_pcm_free;
if (trident->tlb.entries)
snd_pcm_set_ops(foldback, SNDRV_PCM_STREAM_CAPTURE, &snd_trident_nx_foldback_ops);
else
......@@ -2285,7 +2252,6 @@ int __devinit snd_trident_spdif_pcm(trident_t * trident, int device, snd_pcm_t *
return err;
spdif->private_data = trident;
spdif->private_free = snd_trident_spdif_pcm_free;
if (trident->device != TRIDENT_DEVICE_ID_SI7018) {
snd_pcm_set_ops(spdif, SNDRV_PCM_STREAM_PLAYBACK, &snd_trident_spdif_ops);
} else {
......
......@@ -1071,13 +1071,6 @@ static snd_pcm_ops_t snd_ymfpci_capture_rec_ops = {
.pointer = snd_ymfpci_capture_pointer,
};
static void snd_ymfpci_pcm_free(snd_pcm_t *pcm)
{
ymfpci_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_ymfpci_pcm(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1088,7 +1081,6 @@ int __devinit snd_ymfpci_pcm(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
if ((err = snd_pcm_new(chip->card, "YMFPCI", device, 32, 1, &pcm)) < 0)
return err;
pcm->private_data = chip;
pcm->private_free = snd_ymfpci_pcm_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ymfpci_playback_ops);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ymfpci_capture_rec_ops);
......@@ -1117,13 +1109,6 @@ static snd_pcm_ops_t snd_ymfpci_capture_ac97_ops = {
.pointer = snd_ymfpci_capture_pointer,
};
static void snd_ymfpci_pcm2_free(snd_pcm_t *pcm)
{
ymfpci_t *chip = pcm->private_data;
chip->pcm2 = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_ymfpci_pcm2(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1134,7 +1119,6 @@ int __devinit snd_ymfpci_pcm2(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
if ((err = snd_pcm_new(chip->card, "YMFPCI - PCM2", device, 0, 1, &pcm)) < 0)
return err;
pcm->private_data = chip;
pcm->private_free = snd_ymfpci_pcm2_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_ymfpci_capture_ac97_ops);
......@@ -1163,13 +1147,6 @@ static snd_pcm_ops_t snd_ymfpci_playback_spdif_ops = {
.pointer = snd_ymfpci_playback_pointer,
};
static void snd_ymfpci_pcm_spdif_free(snd_pcm_t *pcm)
{
ymfpci_t *chip = pcm->private_data;
chip->pcm_spdif = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_ymfpci_pcm_spdif(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1180,7 +1157,6 @@ int __devinit snd_ymfpci_pcm_spdif(ymfpci_t *chip, int device, snd_pcm_t ** rpcm
if ((err = snd_pcm_new(chip->card, "YMFPCI - IEC958", device, 1, 0, &pcm)) < 0)
return err;
pcm->private_data = chip;
pcm->private_free = snd_ymfpci_pcm_spdif_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ymfpci_playback_spdif_ops);
......@@ -1208,13 +1184,6 @@ static snd_pcm_ops_t snd_ymfpci_playback_4ch_ops = {
.pointer = snd_ymfpci_playback_pointer,
};
static void snd_ymfpci_pcm_4ch_free(snd_pcm_t *pcm)
{
ymfpci_t *chip = pcm->private_data;
chip->pcm_4ch = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __devinit snd_ymfpci_pcm_4ch(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
{
snd_pcm_t *pcm;
......@@ -1225,7 +1194,6 @@ int __devinit snd_ymfpci_pcm_4ch(ymfpci_t *chip, int device, snd_pcm_t ** rpcm)
if ((err = snd_pcm_new(chip->card, "YMFPCI - Rear", device, 1, 0, &pcm)) < 0)
return err;
pcm->private_data = chip;
pcm->private_free = snd_ymfpci_pcm_4ch_free;
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_ymfpci_playback_4ch_ops);
......
......@@ -324,15 +324,6 @@ static snd_pcm_ops_t pdacf_pcm_capture_ops = {
};
/*
* free callback for pcm
*/
static void snd_pdacf_pcm_free(snd_pcm_t *pcm)
{
pdacf_t *chip = pcm->private_data;
chip->pcm = NULL;
}
/*
* snd_pdacf_pcm_new - create and initialize a pcm
*/
......@@ -348,7 +339,6 @@ int snd_pdacf_pcm_new(pdacf_t *chip)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &pdacf_pcm_capture_ops);
pcm->private_data = chip;
pcm->private_free = snd_pdacf_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, chip->card->shortname);
chip->pcm = pcm;
......
......@@ -637,11 +637,6 @@ static snd_pcm_ops_t snd_pmac_capture_ops = {
.pointer = snd_pmac_capture_pointer,
};
static void pmac_pcm_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int __init snd_pmac_pcm_new(pmac_t *chip)
{
snd_pcm_t *pcm;
......@@ -659,7 +654,6 @@ int __init snd_pmac_pcm_new(pmac_t *chip)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_pmac_capture_ops);
pcm->private_data = chip;
pcm->private_free = pmac_pcm_free;
pcm->info_flags = SNDRV_PCM_INFO_JOINT_DUPLEX;
strcpy(pcm->name, chip->card->shortname);
chip->pcm = pcm;
......
......@@ -755,14 +755,6 @@ static snd_pcm_ops_t snd_amd7930_capture_ops = {
.pointer = snd_amd7930_capture_pointer,
};
static void snd_amd7930_pcm_free(snd_pcm_t *pcm)
{
amd7930_t *amd = pcm->private_data;
amd->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
static int __init snd_amd7930_pcm(amd7930_t *amd)
{
snd_pcm_t *pcm;
......@@ -780,7 +772,6 @@ static int __init snd_amd7930_pcm(amd7930_t *amd)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_amd7930_capture_ops);
pcm->private_data = amd;
pcm->private_free = snd_amd7930_pcm_free;
pcm->info_flags = 0;
strcpy(pcm->name, amd->card->shortname);
amd->pcm = pcm;
......
......@@ -1385,13 +1385,6 @@ static snd_pcm_ops_t snd_cs4231_capture_ops = {
.pointer = snd_cs4231_capture_pointer,
};
static void snd_cs4231_pcm_free(snd_pcm_t *pcm)
{
cs4231_t *chip = pcm->private_data;
chip->pcm = NULL;
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int snd_cs4231_pcm(cs4231_t *chip)
{
snd_pcm_t *pcm;
......@@ -1405,7 +1398,6 @@ int snd_cs4231_pcm(cs4231_t *chip)
/* global setup */
pcm->private_data = chip;
pcm->private_free = snd_cs4231_pcm_free;
pcm->info_flags = SNDRV_PCM_INFO_JOINT_DUPLEX;
strcpy(pcm->name, "CS4231");
......
......@@ -941,10 +941,8 @@ static void usX2Y_audio_stream_free(snd_usX2Y_substream_t **usX2Y_substream)
static void snd_usX2Y_pcm_private_free(snd_pcm_t *pcm)
{
snd_usX2Y_substream_t **usX2Y_stream = pcm->private_data;
if (usX2Y_stream) {
snd_pcm_lib_preallocate_free_for_all(pcm);
if (usX2Y_stream)
usX2Y_audio_stream_free(usX2Y_stream);
}
}
static int usX2Y_audio_stream_new(snd_card_t *card, int playback_endpoint, int capture_endpoint)
......
......@@ -740,12 +740,6 @@ static void snd_usX2Y_hwdep_pcm_private_free(snd_hwdep_t *hwdep)
}
static void snd_usX2Y_usbpcm_private_free(snd_pcm_t *pcm)
{
snd_pcm_lib_preallocate_free_for_all(pcm);
}
int usX2Y_hwdep_pcm_new(snd_card_t* card)
{
int err;
......@@ -776,7 +770,6 @@ int usX2Y_hwdep_pcm_new(snd_card_t* card)
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_usX2Y_usbpcm_ops);
pcm->private_data = usX2Y(card)->subs;
pcm->private_free = snd_usX2Y_usbpcm_private_free;
pcm->info_flags = 0;
sprintf(pcm->name, NAME_ALLCAPS" hwdep Audio");
......@@ -788,7 +781,6 @@ int usX2Y_hwdep_pcm_new(snd_card_t* card)
SNDRV_DMA_TYPE_CONTINUOUS,
snd_dma_continuous_data(GFP_KERNEL),
64*1024, 128*1024))) {
snd_usX2Y_usbpcm_private_free(pcm);
return err;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册