Lines Matching refs:desc
96 void omni_sg_dma_start(struct cobalt_stream *s, struct sg_dma_desc_info *desc)
100 iowrite32((u32)((u64)desc->bus >> 32), DESCRIPTOR(s->dma_channel) + 4);
101 iowrite32((u32)desc->bus & NEXT_ADRS_MSK, DESCRIPTOR(s->dma_channel));
152 struct sg_dma_desc_info *desc)
154 struct sg_dma_descriptor *d = (struct sg_dma_descriptor *)desc->virt;
155 dma_addr_t next = desc->bus;
256 d->next_h = (u32)((u64)desc->bus >> 32);
257 d->next_l = (u32)desc->bus |
261 desc->last_desc_virt = d;
286 void *descriptor_list_allocate(struct sg_dma_desc_info *desc, size_t bytes)
288 desc->size = bytes;
289 desc->virt = dma_alloc_coherent(desc->dev, bytes,
290 &desc->bus, GFP_KERNEL);
291 return desc->virt;
294 void descriptor_list_free(struct sg_dma_desc_info *desc)
296 if (desc->virt)
297 dma_free_coherent(desc->dev, desc->size,
298 desc->virt, desc->bus);
299 desc->virt = NULL;
302 void descriptor_list_interrupt_enable(struct sg_dma_desc_info *desc)
304 struct sg_dma_descriptor *d = desc->last_desc_virt;
309 void descriptor_list_interrupt_disable(struct sg_dma_desc_info *desc)
311 struct sg_dma_descriptor *d = desc->last_desc_virt;
316 void descriptor_list_loopback(struct sg_dma_desc_info *desc)
318 struct sg_dma_descriptor *d = desc->last_desc_virt;
320 d->next_h = (u32)((u64)desc->bus >> 32);
321 d->next_l = (u32)desc->bus | (d->next_l & DESCRIPTOR_FLAG_MSK);
324 void descriptor_list_end_of_chain(struct sg_dma_desc_info *desc)
326 struct sg_dma_descriptor *d = desc->last_desc_virt;