/linux-4.1.27/sound/core/ |
D | memalloc.c | 118 static void snd_malloc_dev_iram(struct snd_dma_buffer *dmab, size_t size) in snd_malloc_dev_iram() argument 120 struct device *dev = dmab->dev.dev; in snd_malloc_dev_iram() 123 dmab->area = NULL; in snd_malloc_dev_iram() 124 dmab->addr = 0; in snd_malloc_dev_iram() 133 dmab->private_data = pool; in snd_malloc_dev_iram() 135 dmab->area = gen_pool_dma_alloc(pool, size, &dmab->addr); in snd_malloc_dev_iram() 142 static void snd_free_dev_iram(struct snd_dma_buffer *dmab) in snd_free_dev_iram() argument 144 struct gen_pool *pool = dmab->private_data; in snd_free_dev_iram() 146 if (pool && dmab->area) in snd_free_dev_iram() 147 gen_pool_free(pool, (unsigned long)dmab->area, dmab->bytes); in snd_free_dev_iram() [all …]
|
D | sgbuf.c | 33 int snd_free_sgbuf_pages(struct snd_dma_buffer *dmab) in snd_free_sgbuf_pages() argument 35 struct snd_sg_buf *sgbuf = dmab->private_data; in snd_free_sgbuf_pages() 42 vunmap(dmab->area); in snd_free_sgbuf_pages() 43 dmab->area = NULL; in snd_free_sgbuf_pages() 59 dmab->private_data = NULL; in snd_free_sgbuf_pages() 67 size_t size, struct snd_dma_buffer *dmab, in snd_malloc_sgbuf_pages() argument 76 dmab->area = NULL; in snd_malloc_sgbuf_pages() 77 dmab->addr = 0; in snd_malloc_sgbuf_pages() 78 dmab->private_data = sgbuf = kzalloc(sizeof(*sgbuf), GFP_KERNEL); in snd_malloc_sgbuf_pages() 128 dmab->area = vmap(sgbuf->page_table, sgbuf->pages, VM_MAP, PAGE_KERNEL); in snd_malloc_sgbuf_pages() [all …]
|
D | pcm_memory.c | 53 struct snd_dma_buffer *dmab = &substream->dma_buffer; in preallocate_pcm_pages() local 58 if ((err = snd_dma_alloc_pages(dmab->dev.type, dmab->dev.dev, in preallocate_pcm_pages() 59 size, dmab)) < 0) { in preallocate_pcm_pages() 66 dmab->bytes = 0; /* tell error */ in preallocate_pcm_pages() 335 struct snd_dma_buffer *dmab = NULL; in snd_pcm_lib_malloc_pages() local 356 dmab = &substream->dma_buffer; /* use the pre-allocated buffer */ in snd_pcm_lib_malloc_pages() 358 dmab = kzalloc(sizeof(*dmab), GFP_KERNEL); in snd_pcm_lib_malloc_pages() 359 if (! dmab) in snd_pcm_lib_malloc_pages() 361 dmab->dev = substream->dma_buffer.dev; in snd_pcm_lib_malloc_pages() 364 size, dmab) < 0) { in snd_pcm_lib_malloc_pages() [all …]
|
/linux-4.1.27/include/sound/ |
D | memalloc.h | 77 size_t size, struct snd_dma_buffer *dmab, 79 int snd_free_sgbuf_pages(struct snd_dma_buffer *dmab); 106 static inline dma_addr_t snd_sgbuf_get_addr(struct snd_dma_buffer *dmab, in snd_sgbuf_get_addr() argument 109 struct snd_sg_buf *sgbuf = dmab->private_data; in snd_sgbuf_get_addr() 118 static inline void *snd_sgbuf_get_ptr(struct snd_dma_buffer *dmab, in snd_sgbuf_get_ptr() argument 121 struct snd_sg_buf *sgbuf = dmab->private_data; in snd_sgbuf_get_ptr() 125 unsigned int snd_sgbuf_get_chunk_size(struct snd_dma_buffer *dmab, 129 static inline dma_addr_t snd_sgbuf_get_addr(struct snd_dma_buffer *dmab, in snd_sgbuf_get_addr() argument 132 return dmab->addr + offset; in snd_sgbuf_get_addr() 135 static inline void *snd_sgbuf_get_ptr(struct snd_dma_buffer *dmab, in snd_sgbuf_get_ptr() argument [all …]
|
/linux-4.1.27/drivers/scsi/lpfc/ |
D | lpfc_mem.c | 538 lpfc_sli4_rb_free(struct lpfc_hba *phba, struct hbq_dmabuf *dmab) in lpfc_sli4_rb_free() argument 540 pci_pool_free(phba->lpfc_hrb_pool, dmab->hbuf.virt, dmab->hbuf.phys); in lpfc_sli4_rb_free() 541 pci_pool_free(phba->lpfc_drb_pool, dmab->dbuf.virt, dmab->dbuf.phys); in lpfc_sli4_rb_free() 542 kfree(dmab); in lpfc_sli4_rb_free()
|
/linux-4.1.27/sound/soc/intel/haswell/ |
D | sst-haswell-pcm.c | 143 struct snd_dma_buffer dmab[HSW_PCM_COUNT][2]; member 443 struct snd_dma_buffer *dmab = snd_pcm_get_dma_buf(substream); in create_adsp_page_table() local 453 u32 pfn = snd_sgbuf_get_addr(dmab, i * PAGE_SIZE) >> PAGE_SHIFT; in create_adsp_page_table() 458 pg_table = (u32 *)(pdata->dmab[pcm][stream].area + idx); in create_adsp_page_table() 481 struct snd_dma_buffer *dmab; in hsw_pcm_hw_params() local 611 dmab = snd_pcm_get_dma_buf(substream); in hsw_pcm_hw_params() 627 pdata->dmab[rtd->cpu_dai->id][substream->stream].addr, in hsw_pcm_hw_params() 629 snd_sgbuf_get_addr(dmab, 0) >> PAGE_SHIFT); in hsw_pcm_hw_params() 1076 PAGE_SIZE, &priv_data->dmab[i][0]); in hsw_pcm_probe() 1085 PAGE_SIZE, &priv_data->dmab[i][1]); in hsw_pcm_probe() [all …]
|
/linux-4.1.27/sound/pci/hda/ |
D | hda_codec.h | 65 struct snd_dma_buffer *dmab); 543 struct snd_dma_buffer *dmab) in snd_hda_codec_load_dsp_cleanup() argument 545 return codec->bus->ops.load_dsp_cleanup(codec->bus, dmab); in snd_hda_codec_load_dsp_cleanup() 559 struct snd_dma_buffer *dmab) {} in snd_hda_codec_load_dsp_cleanup() argument
|
D | hda_intel.c | 373 static void __mark_pages_wc(struct azx *chip, struct snd_dma_buffer *dmab, bool on) in __mark_pages_wc() argument 379 if (!dmab || !dmab->area || !dmab->bytes) in __mark_pages_wc() 383 if (dmab->dev.type == SNDRV_DMA_TYPE_DEV_SG) { in __mark_pages_wc() 384 struct snd_sg_buf *sgbuf = dmab->private_data; in __mark_pages_wc() 395 pages = (dmab->bytes + PAGE_SIZE - 1) >> PAGE_SHIFT; in __mark_pages_wc() 397 set_memory_wc((unsigned long)dmab->area, pages); in __mark_pages_wc() 399 set_memory_wb((unsigned long)dmab->area, pages); in __mark_pages_wc()
|
D | patch_ca0132.c | 2038 struct snd_dma_buffer *dmab; member 2076 if (dma->dmab->area) in dma_reset() 2077 snd_hda_codec_load_dsp_cleanup(codec, dma->dmab); in dma_reset() 2082 dma->dmab); in dma_reset() 2110 return dma->dmab->bytes; in dma_get_buffer_size() 2115 return dma->dmab->area; in dma_get_buffer_addr() 2122 memcpy(dma->dmab->area, data, count); in dma_xfer() 2447 dma_engine->dmab = kzalloc(sizeof(*dma_engine->dmab), GFP_KERNEL); in dspxfr_image() 2448 if (!dma_engine->dmab) { in dspxfr_image() 2472 dma_engine->dmab); in dspxfr_image() [all …]
|
D | hda_controller.c | 291 struct snd_dma_buffer *dmab, in setup_bdle() argument 304 addr = snd_sgbuf_get_addr(dmab, ofs); in setup_bdle() 309 chunk = snd_sgbuf_get_chunk_size(dmab, ofs, size); in setup_bdle() 1443 struct snd_dma_buffer *dmab) in azx_load_dsp_cleanup() argument 1448 if (!dmab->area || !azx_dev->locked) in azx_load_dsp_cleanup() 1460 chip->ops->dma_free_pages(chip, dmab); in azx_load_dsp_cleanup() 1461 dmab->area = NULL; in azx_load_dsp_cleanup()
|
/linux-4.1.27/sound/pci/rme9652/ |
D | rme9652.c | 293 static int snd_hammerfall_get_buffer(struct pci_dev *pci, struct snd_dma_buffer *dmab, size_t size) in snd_hammerfall_get_buffer() argument 295 dmab->dev.type = SNDRV_DMA_TYPE_DEV; in snd_hammerfall_get_buffer() 296 dmab->dev.dev = snd_dma_pci_data(pci); in snd_hammerfall_get_buffer() 298 size, dmab) < 0) in snd_hammerfall_get_buffer() 303 static void snd_hammerfall_free_buffer(struct snd_dma_buffer *dmab, struct pci_dev *pci) in snd_hammerfall_free_buffer() argument 305 if (dmab->area) in snd_hammerfall_free_buffer() 306 snd_dma_free_pages(dmab); in snd_hammerfall_free_buffer()
|
D | hdsp.c | 583 static int snd_hammerfall_get_buffer(struct pci_dev *pci, struct snd_dma_buffer *dmab, size_t size) in snd_hammerfall_get_buffer() argument 585 dmab->dev.type = SNDRV_DMA_TYPE_DEV; in snd_hammerfall_get_buffer() 586 dmab->dev.dev = snd_dma_pci_data(pci); in snd_hammerfall_get_buffer() 588 size, dmab) < 0) in snd_hammerfall_get_buffer() 593 static void snd_hammerfall_free_buffer(struct snd_dma_buffer *dmab, struct pci_dev *pci) in snd_hammerfall_free_buffer() argument 595 if (dmab->area) in snd_hammerfall_free_buffer() 596 snd_dma_free_pages(dmab); in snd_hammerfall_free_buffer()
|