cpcm              452 include/sound/hda_codec.h 			      struct hda_pcm *cpcm);
cpcm              868 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm * cpcm = runtime->private_data;
cpcm              869 sound/pci/cs46xx/cs46xx_lib.c 	memcpy(cpcm->hw_buf.area + rec->hw_data, runtime->dma_area + rec->sw_data, bytes);
cpcm              875 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm * cpcm = runtime->private_data;
cpcm              876 sound/pci/cs46xx/cs46xx_lib.c 	return snd_pcm_indirect_playback_transfer(substream, &cpcm->pcm_rec,
cpcm              900 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm = substream->runtime->private_data;
cpcm              902 sound/pci/cs46xx/cs46xx_lib.c 	if (snd_BUG_ON(!cpcm->pcm_channel))
cpcm              906 sound/pci/cs46xx/cs46xx_lib.c 	ptr = snd_cs46xx_peek(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 2) << 2);
cpcm              910 sound/pci/cs46xx/cs46xx_lib.c 	ptr -= cpcm->hw_buf.addr;
cpcm              911 sound/pci/cs46xx/cs46xx_lib.c 	return ptr >> cpcm->shift;
cpcm              918 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm = substream->runtime->private_data;
cpcm              921 sound/pci/cs46xx/cs46xx_lib.c 	if (snd_BUG_ON(!cpcm->pcm_channel))
cpcm              923 sound/pci/cs46xx/cs46xx_lib.c 	ptr = snd_cs46xx_peek(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 2) << 2);
cpcm              927 sound/pci/cs46xx/cs46xx_lib.c 	ptr -= cpcm->hw_buf.addr;
cpcm              928 sound/pci/cs46xx/cs46xx_lib.c 	return snd_pcm_indirect_playback_pointer(substream, &cpcm->pcm_rec, ptr);
cpcm              953 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm = substream->runtime->private_data;
cpcm              954 sound/pci/cs46xx/cs46xx_lib.c 	if (! cpcm->pcm_channel) {
cpcm              963 sound/pci/cs46xx/cs46xx_lib.c 		snd_cs46xx_poke(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 
cpcm              966 sound/pci/cs46xx/cs46xx_lib.c 		if (cpcm->pcm_channel->unlinked)
cpcm              967 sound/pci/cs46xx/cs46xx_lib.c 			cs46xx_dsp_pcm_link(chip,cpcm->pcm_channel);
cpcm              987 sound/pci/cs46xx/cs46xx_lib.c 		snd_cs46xx_poke(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 
cpcm              990 sound/pci/cs46xx/cs46xx_lib.c 		if (!cpcm->pcm_channel->unlinked)
cpcm              991 sound/pci/cs46xx/cs46xx_lib.c 			cs46xx_dsp_pcm_unlink(chip,cpcm->pcm_channel);
cpcm             1041 sound/pci/cs46xx/cs46xx_lib.c static int _cs46xx_adjust_sample_rate (struct snd_cs46xx *chip, struct snd_cs46xx_pcm *cpcm,
cpcm             1046 sound/pci/cs46xx/cs46xx_lib.c 	if ( cpcm->pcm_channel == NULL) {
cpcm             1047 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->pcm_channel = cs46xx_dsp_create_pcm_channel (chip, sample_rate, 
cpcm             1048 sound/pci/cs46xx/cs46xx_lib.c 								   cpcm, cpcm->hw_buf.addr,cpcm->pcm_channel_id);
cpcm             1049 sound/pci/cs46xx/cs46xx_lib.c 		if (cpcm->pcm_channel == NULL) {
cpcm             1054 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->pcm_channel->sample_rate = sample_rate;
cpcm             1057 sound/pci/cs46xx/cs46xx_lib.c 	if ((int)cpcm->pcm_channel->sample_rate != sample_rate) {
cpcm             1058 sound/pci/cs46xx/cs46xx_lib.c 		int unlinked = cpcm->pcm_channel->unlinked;
cpcm             1059 sound/pci/cs46xx/cs46xx_lib.c 		cs46xx_dsp_destroy_pcm_channel (chip,cpcm->pcm_channel);
cpcm             1061 sound/pci/cs46xx/cs46xx_lib.c 		if ( (cpcm->pcm_channel = cs46xx_dsp_create_pcm_channel (chip, sample_rate, cpcm, 
cpcm             1062 sound/pci/cs46xx/cs46xx_lib.c 									 cpcm->hw_buf.addr,
cpcm             1063 sound/pci/cs46xx/cs46xx_lib.c 									 cpcm->pcm_channel_id)) == NULL) {
cpcm             1069 sound/pci/cs46xx/cs46xx_lib.c 		if (!unlinked) cs46xx_dsp_pcm_link (chip,cpcm->pcm_channel);
cpcm             1070 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->pcm_channel->sample_rate = sample_rate;
cpcm             1082 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm;
cpcm             1089 sound/pci/cs46xx/cs46xx_lib.c 	cpcm = runtime->private_data;
cpcm             1097 sound/pci/cs46xx/cs46xx_lib.c 	if (_cs46xx_adjust_sample_rate (chip,cpcm,sample_rate)) {
cpcm             1102 sound/pci/cs46xx/cs46xx_lib.c 	snd_BUG_ON(!cpcm->pcm_channel);
cpcm             1103 sound/pci/cs46xx/cs46xx_lib.c 	if (!cpcm->pcm_channel) {
cpcm             1109 sound/pci/cs46xx/cs46xx_lib.c 	if (cs46xx_dsp_pcm_channel_set_period (chip,cpcm->pcm_channel,period_size)) {
cpcm             1121 sound/pci/cs46xx/cs46xx_lib.c 		if (runtime->dma_area != cpcm->hw_buf.area)
cpcm             1123 sound/pci/cs46xx/cs46xx_lib.c 		runtime->dma_area = cpcm->hw_buf.area;
cpcm             1124 sound/pci/cs46xx/cs46xx_lib.c 		runtime->dma_addr = cpcm->hw_buf.addr;
cpcm             1125 sound/pci/cs46xx/cs46xx_lib.c 		runtime->dma_bytes = cpcm->hw_buf.bytes;
cpcm             1129 sound/pci/cs46xx/cs46xx_lib.c 		if (cpcm->pcm_channel_id == DSP_PCM_MAIN_CHANNEL) {
cpcm             1131 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_PCM_REAR_CHANNEL) {
cpcm             1133 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_PCM_CENTER_LFE_CHANNEL) {
cpcm             1135 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_IEC958_CHANNEL) {
cpcm             1145 sound/pci/cs46xx/cs46xx_lib.c 		if (runtime->dma_area == cpcm->hw_buf.area) {
cpcm             1158 sound/pci/cs46xx/cs46xx_lib.c 		if (cpcm->pcm_channel_id == DSP_PCM_MAIN_CHANNEL) {
cpcm             1160 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_PCM_REAR_CHANNEL) {
cpcm             1162 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_PCM_CENTER_LFE_CHANNEL) {
cpcm             1164 sound/pci/cs46xx/cs46xx_lib.c 		} else if (cpcm->pcm_channel_id == DSP_IEC958_CHANNEL) {
cpcm             1186 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm;
cpcm             1188 sound/pci/cs46xx/cs46xx_lib.c 	cpcm = runtime->private_data;
cpcm             1192 sound/pci/cs46xx/cs46xx_lib.c 	if (!cpcm) return -ENXIO;
cpcm             1194 sound/pci/cs46xx/cs46xx_lib.c 	if (runtime->dma_area != cpcm->hw_buf.area)
cpcm             1210 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm;
cpcm             1212 sound/pci/cs46xx/cs46xx_lib.c 	cpcm = runtime->private_data;
cpcm             1215 sound/pci/cs46xx/cs46xx_lib.c 	if (snd_BUG_ON(!cpcm->pcm_channel))
cpcm             1218 sound/pci/cs46xx/cs46xx_lib.c 	pfie = snd_cs46xx_peek(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 1) << 2 );
cpcm             1226 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->shift = 2;
cpcm             1229 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->shift--;
cpcm             1234 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->shift--;
cpcm             1248 sound/pci/cs46xx/cs46xx_lib.c 	memset(&cpcm->pcm_rec, 0, sizeof(cpcm->pcm_rec));
cpcm             1249 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->pcm_rec.sw_buffer_size = snd_pcm_lib_buffer_bytes(substream);
cpcm             1250 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->pcm_rec.hw_buffer_size = runtime->period_size * CS46XX_FRAGS << cpcm->shift;
cpcm             1254 sound/pci/cs46xx/cs46xx_lib.c 	tmp = snd_cs46xx_peek(chip, (cpcm->pcm_channel->pcm_reader_scb->address) << 2);
cpcm             1256 sound/pci/cs46xx/cs46xx_lib.c 	tmp |= (4 << cpcm->shift) - 1;
cpcm             1258 sound/pci/cs46xx/cs46xx_lib.c 	snd_cs46xx_poke(chip, (cpcm->pcm_channel->pcm_reader_scb->address) << 2, tmp);
cpcm             1261 sound/pci/cs46xx/cs46xx_lib.c 	snd_cs46xx_poke(chip, (cpcm->pcm_channel->pcm_reader_scb->address + 1) << 2, pfie | cpcm->pcm_channel->pcm_slot);
cpcm             1263 sound/pci/cs46xx/cs46xx_lib.c 	snd_cs46xx_poke(chip, BA1_PBA, cpcm->hw_buf.addr);
cpcm             1266 sound/pci/cs46xx/cs46xx_lib.c 	tmp |= (4 << cpcm->shift) - 1;
cpcm             1343 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm *cpcm = NULL;
cpcm             1368 sound/pci/cs46xx/cs46xx_lib.c 						cpcm = ins->pcm_channels[i].private_data;
cpcm             1369 sound/pci/cs46xx/cs46xx_lib.c 						snd_pcm_period_elapsed(cpcm->substream);
cpcm             1378 sound/pci/cs46xx/cs46xx_lib.c 					cpcm = ins->pcm_channels[i].private_data;
cpcm             1379 sound/pci/cs46xx/cs46xx_lib.c 					snd_pcm_period_elapsed(cpcm->substream);
cpcm             1491 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm * cpcm;
cpcm             1494 sound/pci/cs46xx/cs46xx_lib.c 	cpcm = kzalloc(sizeof(*cpcm), GFP_KERNEL);
cpcm             1495 sound/pci/cs46xx/cs46xx_lib.c 	if (cpcm == NULL)
cpcm             1498 sound/pci/cs46xx/cs46xx_lib.c 				PAGE_SIZE, &cpcm->hw_buf) < 0) {
cpcm             1499 sound/pci/cs46xx/cs46xx_lib.c 		kfree(cpcm);
cpcm             1504 sound/pci/cs46xx/cs46xx_lib.c 	runtime->private_data = cpcm;
cpcm             1507 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->substream = substream;
cpcm             1510 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->pcm_channel = NULL; 
cpcm             1511 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->pcm_channel_id = pcm_channel_id;
cpcm             1520 sound/pci/cs46xx/cs46xx_lib.c 	chip->playback_pcm = cpcm; /* HACK */
cpcm             1608 sound/pci/cs46xx/cs46xx_lib.c 	struct snd_cs46xx_pcm * cpcm;
cpcm             1610 sound/pci/cs46xx/cs46xx_lib.c 	cpcm = runtime->private_data;
cpcm             1613 sound/pci/cs46xx/cs46xx_lib.c 	if (!cpcm) return -ENXIO;
cpcm             1617 sound/pci/cs46xx/cs46xx_lib.c 	if (cpcm->pcm_channel) {
cpcm             1618 sound/pci/cs46xx/cs46xx_lib.c 		cs46xx_dsp_destroy_pcm_channel(chip,cpcm->pcm_channel);
cpcm             1619 sound/pci/cs46xx/cs46xx_lib.c 		cpcm->pcm_channel = NULL;
cpcm             1626 sound/pci/cs46xx/cs46xx_lib.c 	cpcm->substream = NULL;
cpcm             1627 sound/pci/cs46xx/cs46xx_lib.c 	snd_dma_free_pages(&cpcm->hw_buf);
cpcm             1739 sound/pci/hda/hda_codec.c 		struct hda_pcm *cpcm;
cpcm             1740 sound/pci/hda/hda_codec.c 		list_for_each_entry(cpcm, &codec->pcm_list_head, list) {
cpcm             1741 sound/pci/hda/hda_codec.c 			if (!cpcm->pcm)
cpcm             1743 sound/pci/hda/hda_codec.c 			if (cpcm->pcm->streams[0].substream_opened ||
cpcm             1744 sound/pci/hda/hda_codec.c 			    cpcm->pcm->streams[1].substream_opened)
cpcm             3248 sound/pci/hda/hda_codec.c 	struct hda_pcm *cpcm;
cpcm             3264 sound/pci/hda/hda_codec.c 	list_for_each_entry(cpcm, &codec->pcm_list_head, list) {
cpcm             3268 sound/pci/hda/hda_codec.c 			struct hda_pcm_stream *info = &cpcm->stream[stream];
cpcm             3276 sound/pci/hda/hda_codec.c 					   cpcm->name);
cpcm             3290 sound/pci/hda/hda_codec.c 	struct hda_pcm *cpcm;
cpcm             3298 sound/pci/hda/hda_codec.c 	list_for_each_entry(cpcm, &codec->pcm_list_head, list) {
cpcm             3299 sound/pci/hda/hda_codec.c 		if (cpcm->pcm)
cpcm             3301 sound/pci/hda/hda_codec.c 		if (!cpcm->stream[0].substreams && !cpcm->stream[1].substreams)
cpcm             3304 sound/pci/hda/hda_codec.c 		dev = get_empty_pcm_device(bus, cpcm->pcm_type);
cpcm             3306 sound/pci/hda/hda_codec.c 			cpcm->device = SNDRV_PCM_INVALID_DEVICE;
cpcm             3309 sound/pci/hda/hda_codec.c 		cpcm->device = dev;
cpcm             3310 sound/pci/hda/hda_codec.c 		err =  snd_hda_attach_pcm_stream(bus, codec, cpcm);
cpcm              720 sound/pci/hda/hda_controller.c 			      struct hda_pcm *cpcm)
cpcm              726 sound/pci/hda/hda_controller.c 	int pcm_dev = cpcm->device;
cpcm              738 sound/pci/hda/hda_controller.c 	err = snd_pcm_new(chip->card, cpcm->name, pcm_dev,
cpcm              739 sound/pci/hda/hda_controller.c 			  cpcm->stream[SNDRV_PCM_STREAM_PLAYBACK].substreams,
cpcm              740 sound/pci/hda/hda_controller.c 			  cpcm->stream[SNDRV_PCM_STREAM_CAPTURE].substreams,
cpcm              744 sound/pci/hda/hda_controller.c 	strlcpy(pcm->name, cpcm->name, sizeof(pcm->name));
cpcm              753 sound/pci/hda/hda_controller.c 	apcm->info = cpcm;
cpcm              756 sound/pci/hda/hda_controller.c 	if (cpcm->pcm_type == HDA_PCM_TYPE_MODEM)
cpcm              759 sound/pci/hda/hda_controller.c 	cpcm->pcm = pcm;
cpcm              761 sound/pci/hda/hda_controller.c 		if (cpcm->stream[s].substreams)
cpcm               78 sound/pci/hda/hda_proc.c 	struct hda_pcm *cpcm;
cpcm               80 sound/pci/hda/hda_proc.c 	list_for_each_entry(cpcm, &codec->pcm_list_head, list) {
cpcm               82 sound/pci/hda/hda_proc.c 			if (cpcm->stream[type].nid != nid || cpcm->pcm == NULL)
cpcm               86 sound/pci/hda/hda_proc.c 				    cpcm->name,
cpcm               87 sound/pci/hda/hda_proc.c 				    snd_hda_pcm_type_name[cpcm->pcm_type],
cpcm               88 sound/pci/hda/hda_proc.c 				    cpcm->pcm->device);
cpcm              278 sound/soc/codecs/hdac_hda.c 	struct hda_pcm *cpcm;
cpcm              296 sound/soc/codecs/hdac_hda.c 	list_for_each_entry(cpcm, &hcodec->pcm_list_head, list) {
cpcm              297 sound/soc/codecs/hdac_hda.c 		if (strpbrk(cpcm->name, pcm_name))
cpcm              298 sound/soc/codecs/hdac_hda.c 			return cpcm;