Lines Matching refs:dma
63 dev->dma = kzalloc(sizeof(*dev->dma), GFP_KERNEL);
64 if (!dev->dma)
68 memset(&dev->dma->bufs[i], 0, sizeof(dev->dma->bufs[0]));
79 * finally the drm_device::dma structure itself.
83 struct drm_device_dma *dma = dev->dma;
90 if (!dma)
93 /* Clear dma buffers */
95 if (dma->bufs[i].seg_count) {
99 dma->bufs[i].buf_count,
100 dma->bufs[i].seg_count);
101 for (j = 0; j < dma->bufs[i].seg_count; j++) {
102 if (dma->bufs[i].seglist[j]) {
103 drm_pci_free(dev, dma->bufs[i].seglist[j]);
106 kfree(dma->bufs[i].seglist);
108 if (dma->bufs[i].buf_count) {
109 for (j = 0; j < dma->bufs[i].buf_count; j++) {
110 kfree(dma->bufs[i].buflist[j].dev_private);
112 kfree(dma->bufs[i].buflist);
116 kfree(dma->buflist);
117 kfree(dma->pagelist);
118 kfree(dev->dma);
119 dev->dma = NULL;
152 struct drm_device_dma *dma = dev->dma;
155 if (!dma)
157 for (i = 0; i < dma->buf_count; i++) {
158 if (dma->buflist[i]->file_priv == file_priv) {
159 switch (dma->buflist[i]->list) {
161 drm_legacy_free_buffer(dev, dma->buflist[i]);
164 dma->buflist[i]->list = DRM_LIST_RECLAIM;