Lines Matching refs:pxa_dma
339 struct pxa_cam_dma *pxa_dma = &buf->dmas[channel];
345 if (pxa_dma->sg_cpu)
346 dma_free_coherent(dev, pxa_dma->sg_size,
347 pxa_dma->sg_cpu, pxa_dma->sg_dma);
352 pxa_dma->sg_size = (sglen + 1) * sizeof(struct pxa_dma_desc);
353 pxa_dma->sg_cpu = dma_alloc_coherent(dev, pxa_dma->sg_size,
354 &pxa_dma->sg_dma, GFP_KERNEL);
355 if (!pxa_dma->sg_cpu)
358 pxa_dma->sglen = sglen;
362 *sg_first, sglen, *sg_first_ofs, pxa_dma->sg_dma);
373 pxa_dma->sg_cpu[i].dsadr = pcdev->res->start + cibr;
374 pxa_dma->sg_cpu[i].dtadr = sg_dma_address(sg) + offset;
375 pxa_dma->sg_cpu[i].dcmd =
379 pxa_dma->sg_cpu[i].dcmd |= DCMD_STARTIRQEN;
381 pxa_dma->sg_cpu[i].ddadr =
382 pxa_dma->sg_dma + (i + 1) * sizeof(struct pxa_dma_desc);
385 pxa_dma->sg_dma + i * sizeof(struct pxa_dma_desc),
393 pxa_dma->sg_cpu[sglen].ddadr = DDADR_STOP;
394 pxa_dma->sg_cpu[sglen].dcmd = DCMD_FLOWSRC | DCMD_BURST8 | DCMD_ENDIRQEN;