[ALSA] Remove superfluous pcm_free callbacks
Remove superflous pcm_free callbacks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
f31a31b902
Коммит
c3e6f7d876
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче