Lines Matching defs:dma
717 struct drm_device_dma *dma = dev->dma;
733 if (!dma)
781 entry = &dma->bufs[order];
808 buf->idx = dma->buf_count + entry->buf_count;
813 buf->offset = (dma->byte_count + offset);
841 temp_buflist = krealloc(dma->buflist,
842 (dma->buf_count + entry->buf_count) *
843 sizeof(*dma->buflist), GFP_KERNEL);
851 dma->buflist = temp_buflist;
854 dma->buflist[i + dma->buf_count] = &entry->buflist[i];
857 dma->buf_count += entry->buf_count;
858 dma->seg_count += entry->seg_count;
859 dma->page_count += byte_count >> PAGE_SHIFT;
860 dma->byte_count += byte_count;
862 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count);
870 dma->flags = _DRM_DMA_USE_AGP;
881 struct drm_device_dma *dma = dev->dma;
901 if (!dma)
931 entry = &dma->bufs[order];
962 temp_pagelist = kmalloc_array(dma->page_count + (count << page_order),
963 sizeof(*dma->pagelist),
973 dma->pagelist, dma->page_count * sizeof(*dma->pagelist));
975 dma->page_count + (count << page_order));
1015 dma->page_count + page_count,
1017 temp_pagelist[dma->page_count + page_count++]
1024 buf->idx = dma->buf_count + entry->buf_count;
1028 buf->offset = (dma->byte_count + byte_count + offset);
1056 temp_buflist = krealloc(dma->buflist,
1057 (dma->buf_count + entry->buf_count) *
1058 sizeof(*dma->buflist), GFP_KERNEL);
1067 dma->buflist = temp_buflist;
1070 dma->buflist[i + dma->buf_count] = &entry->buflist[i];
1076 if (dma->page_count) {
1077 kfree(dma->pagelist);
1079 dma->pagelist = temp_pagelist;
1081 dma->buf_count += entry->buf_count;
1082 dma->seg_count += entry->seg_count;
1083 dma->page_count += entry->seg_count << page_order;
1084 dma->byte_count += PAGE_SIZE * (entry->seg_count << page_order);
1092 dma->flags = _DRM_DMA_USE_PCI_RO;
1103 struct drm_device_dma *dma = dev->dma;
1121 if (!dma)
1159 entry = &dma->bufs[order];
1186 buf->idx = dma->buf_count + entry->buf_count;
1191 buf->offset = (dma->byte_count + offset);
1220 temp_buflist = krealloc(dma->buflist,
1221 (dma->buf_count + entry->buf_count) *
1222 sizeof(*dma->buflist), GFP_KERNEL);
1230 dma->buflist = temp_buflist;
1233 dma->buflist[i + dma->buf_count] = &entry->buflist[i];
1236 dma->buf_count += entry->buf_count;
1237 dma->seg_count += entry->seg_count;
1238 dma->page_count += byte_count >> PAGE_SHIFT;
1239 dma->byte_count += byte_count;
1241 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count);
1249 dma->flags = _DRM_DMA_USE_SG;
1317 struct drm_device_dma *dma = dev->dma;
1327 if (!dma)
1339 if (dma->bufs[i].buf_count)
1347 struct drm_buf_entry *from = &dma->bufs[i];
1354 dma->bufs[i].buf_count,
1355 dma->bufs[i].buf_size,
1356 dma->bufs[i].low_mark,
1357 dma->bufs[i].high_mark);
1406 struct drm_device_dma *dma = dev->dma;
1417 if (!dma)
1425 entry = &dma->bufs[order];
1453 struct drm_device_dma *dma = dev->dma;
1465 if (!dma)
1472 if (idx < 0 || idx >= dma->buf_count) {
1474 idx, dma->buf_count - 1);
1477 idx = array_index_nospec(idx, dma->buf_count);
1478 buf = dma->buflist[idx];
1510 struct drm_device_dma *dma = dev->dma;
1521 if (!dma)
1532 if (*p >= dma->buf_count) {
1533 if ((dev->agp && (dma->flags & _DRM_DMA_USE_AGP))
1535 && (dma->flags & _DRM_DMA_USE_SG))) {
1548 virtual = vm_mmap(file_priv->filp, 0, dma->byte_count,
1559 for (i = 0; i < dma->buf_count; i++) {
1560 if (f(data, i, virtual, dma->buflist[i]) < 0) {
1567 *p = dma->buf_count;