• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/drivers/media/video/saa7134/

Lines Matching refs:dmasound

111 	dev->dmasound.dma_blk     = -1;
112 dev->dmasound.dma_running = 0;
127 dev->dmasound.dma_blk = 0;
128 dev->dmasound.dma_running = 1;
149 if (UNSET == dev->dmasound.dma_blk) {
157 if (0 == (dev->dmasound.dma_blk & 0x01))
161 if (1 == (dev->dmasound.dma_blk & 0x01))
170 if (dev->dmasound.read_count >= dev->dmasound.blksize * (dev->dmasound.blocks-2)) {
171 dprintk("irq: overrun [full=%d/%d] - Blocks in %d\n",dev->dmasound.read_count,
172 dev->dmasound.bufsize, dev->dmasound.blocks);
174 snd_pcm_stop(dev->dmasound.substream,SNDRV_PCM_STATE_XRUN);
179 next_blk = (dev->dmasound.dma_blk + 2) % dev->dmasound.blocks;
180 saa_writel(reg,next_blk * dev->dmasound.blksize);
184 next_blk * dev->dmasound.blksize, dev->dmasound.blocks, dev->dmasound.blksize, dev->dmasound.read_count);
187 dev->dmasound.dma_blk = (dev->dmasound.dma_blk + 1) % dev->dmasound.blocks;
188 dev->dmasound.read_count += dev->dmasound.blksize;
190 dev->dmasound.recording_on = reg;
192 if (dev->dmasound.read_count >= snd_pcm_lib_period_bytes(dev->dmasound.substream)) {
194 snd_pcm_period_elapsed(dev->dmasound.substream);
213 struct saa7134_dmasound *dmasound = dev_id;
214 struct saa7134_dev *dev = dmasound->priv_data;
288 BUG_ON(!dev->dmasound.bufsize);
290 videobuf_dma_init(&dev->dmasound.dma);
291 err = videobuf_dma_init_kernel(&dev->dmasound.dma, PCI_DMA_FROMDEVICE,
292 (dev->dmasound.bufsize + PAGE_SIZE) >> PAGE_SHIFT);
307 BUG_ON(!dev->dmasound.blksize);
309 videobuf_dma_free(&dev->dmasound.dma);
311 dev->dmasound.blocks = 0;
312 dev->dmasound.blksize = 0;
313 dev->dmasound.bufsize = 0;
340 pcm->dev->dmasound.substream = substream;
368 fmt |= (MIXER_ADDR_TVTUNER == dev->dmasound.input) ? 0xc0 : 0x80;
369 saa_writeb(SAA7134_NUM_SAMPLES0, ((dev->dmasound.blksize - 1) & 0x0000ff));
370 saa_writeb(SAA7134_NUM_SAMPLES1, ((dev->dmasound.blksize - 1) & 0x00ff00) >> 8);
371 saa_writeb(SAA7134_NUM_SAMPLES2, ((dev->dmasound.blksize - 1) & 0xff0000) >> 16);
383 saa_writel(SAA7133_NUM_SAMPLES, dev->dmasound.blksize -1);
394 (dev->dmasound.pt.dma >> 12);
399 saa_writel(SAA7134_RS_BA2(6),dev->dmasound.blksize);
403 dev->dmasound.rate = runtime->rate;
427 if (dev->dmasound.read_count) {
428 dev->dmasound.read_count -= snd_pcm_lib_period_bytes(substream);
429 dev->dmasound.read_offset += snd_pcm_lib_period_bytes(substream);
430 if (dev->dmasound.read_offset == dev->dmasound.bufsize)
431 dev->dmasound.read_offset = 0;
434 return bytes_to_frames(runtime, dev->dmasound.read_offset);
499 if (dev->dmasound.blocks == periods &&
500 dev->dmasound.blksize == period_size)
505 saa7134_pgtable_free(dev->pci, &dev->dmasound.pt);
506 videobuf_pci_dma_unmap(dev->pci, &dev->dmasound.dma);
510 dev->dmasound.blocks = periods;
511 dev->dmasound.blksize = period_size;
512 dev->dmasound.bufsize = period_size * periods;
516 dev->dmasound.blocks = 0;
517 dev->dmasound.blksize = 0;
518 dev->dmasound.bufsize = 0;
522 if (0 != (err = videobuf_pci_dma_map(dev->pci, &dev->dmasound.dma))) {
526 if (0 != (err = saa7134_pgtable_alloc(dev->pci,&dev->dmasound.pt))) {
527 videobuf_pci_dma_unmap(dev->pci, &dev->dmasound.dma);
531 if (0 != (err = saa7134_pgtable_build(dev->pci,&dev->dmasound.pt,
532 dev->dmasound.dma.sglist,
533 dev->dmasound.dma.sglen,
535 saa7134_pgtable_free(dev->pci, &dev->dmasound.pt);
536 videobuf_pci_dma_unmap(dev->pci, &dev->dmasound.dma);
545 substream->runtime->dma_area = dev->dmasound.dma.vmalloc;
569 saa7134_pgtable_free(dev->pci, &dev->dmasound.pt);
570 videobuf_pci_dma_unmap(dev->pci, &dev->dmasound.dma);
615 mutex_lock(&dev->dmasound.lock);
617 dev->dmasound.read_count = 0;
618 dev->dmasound.read_offset = 0;
623 dev->dmasound.input = amux - 1;
625 mutex_unlock(&dev->dmasound.lock);
833 dev->dmasound.input=addr;
849 rate = (32000 == dev->dmasound.rate) ? 0x01 : 0x03;
928 if (chip->dev->dmasound.priv_data == NULL)
933 free_irq(chip->irq, &chip->dev->dmasound);
936 chip->dev->dmasound.priv_data = NULL;
986 (void*) &dev->dmasound);
996 mutex_init(&dev->dmasound.lock);
1027 dev->dmasound.priv_data = dev;
1065 if (dev->dmasound.priv_data == NULL) {