Lines Matching refs:dma

684 	struct drm_device_dma *dma = dev->dma;  in drm_addbufs_agp()  local
700 if (!dma) in drm_addbufs_agp()
748 entry = &dma->bufs[order]; in drm_addbufs_agp()
776 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_agp()
781 buf->offset = (dma->byte_count + offset); in drm_addbufs_agp()
810 temp_buflist = realloc(dma->buflist, in drm_addbufs_agp()
811 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_agp()
820 dma->buflist = temp_buflist; in drm_addbufs_agp()
823 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_agp()
826 dma->buf_count += entry->buf_count; in drm_addbufs_agp()
827 dma->seg_count += entry->seg_count; in drm_addbufs_agp()
828 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_agp()
829 dma->byte_count += byte_count; in drm_addbufs_agp()
831 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_agp()
839 dma->flags = _DRM_DMA_USE_AGP; in drm_addbufs_agp()
849 struct drm_device_dma *dma = dev->dma; in drm_addbufs_pci() local
869 if (!dma) in drm_addbufs_pci()
899 entry = &dma->bufs[order]; in drm_addbufs_pci()
932 temp_pagelist = malloc((dma->page_count + (count << page_order)) * in drm_addbufs_pci()
933 sizeof(*dma->pagelist), DRM_MEM_PAGES, M_NOWAIT); in drm_addbufs_pci()
942 dma->pagelist, dma->page_count * sizeof(*dma->pagelist)); in drm_addbufs_pci()
944 dma->page_count + (count << page_order)); in drm_addbufs_pci()
968 dma->page_count + page_count, in drm_addbufs_pci()
970 temp_pagelist[dma->page_count + page_count++] in drm_addbufs_pci()
977 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_pci()
981 buf->offset = (dma->byte_count + byte_count + offset); in drm_addbufs_pci()
1009 temp_buflist = realloc(dma->buflist, in drm_addbufs_pci()
1010 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_pci()
1020 dma->buflist = temp_buflist; in drm_addbufs_pci()
1023 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_pci()
1029 if (dma->page_count) { in drm_addbufs_pci()
1030 free(dma->pagelist, DRM_MEM_PAGES); in drm_addbufs_pci()
1032 dma->pagelist = temp_pagelist; in drm_addbufs_pci()
1034 dma->buf_count += entry->buf_count; in drm_addbufs_pci()
1035 dma->seg_count += entry->seg_count; in drm_addbufs_pci()
1036 dma->page_count += entry->seg_count << page_order; in drm_addbufs_pci()
1037 dma->byte_count += PAGE_SIZE * (entry->seg_count << page_order); in drm_addbufs_pci()
1045 dma->flags = _DRM_DMA_USE_PCI_RO; in drm_addbufs_pci()
1055 struct drm_device_dma *dma = dev->dma; in drm_addbufs_sg() local
1073 if (!dma) in drm_addbufs_sg()
1111 entry = &dma->bufs[order]; in drm_addbufs_sg()
1139 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_sg()
1144 buf->offset = (dma->byte_count + offset); in drm_addbufs_sg()
1174 temp_buflist = realloc(dma->buflist, in drm_addbufs_sg()
1175 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_sg()
1184 dma->buflist = temp_buflist; in drm_addbufs_sg()
1187 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_sg()
1190 dma->buf_count += entry->buf_count; in drm_addbufs_sg()
1191 dma->seg_count += entry->seg_count; in drm_addbufs_sg()
1192 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_sg()
1193 dma->byte_count += byte_count; in drm_addbufs_sg()
1195 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_sg()
1203 dma->flags = _DRM_DMA_USE_SG; in drm_addbufs_sg()
1211 struct drm_device_dma *dma = dev->dma; in drm_addbufs_fb() local
1229 if (!dma) in drm_addbufs_fb()
1267 entry = &dma->bufs[order]; in drm_addbufs_fb()
1295 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_fb()
1300 buf->offset = (dma->byte_count + offset); in drm_addbufs_fb()
1329 temp_buflist = realloc(dma->buflist, in drm_addbufs_fb()
1330 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_fb()
1339 dma->buflist = temp_buflist; in drm_addbufs_fb()
1342 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_fb()
1345 dma->buf_count += entry->buf_count; in drm_addbufs_fb()
1346 dma->seg_count += entry->seg_count; in drm_addbufs_fb()
1347 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_fb()
1348 dma->byte_count += byte_count; in drm_addbufs_fb()
1350 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_fb()
1358 dma->flags = _DRM_DMA_USE_FB; in drm_addbufs_fb()
1423 struct drm_device_dma *dma = dev->dma; in drm_infobufs() local
1431 if (!dma) in drm_infobufs()
1443 if (dma->bufs[i].buf_count) in drm_infobufs()
1451 if (dma->bufs[i].buf_count) { in drm_infobufs()
1454 struct drm_buf_entry *from = &dma->bufs[i]; in drm_infobufs()
1455 struct drm_freelist *list = &dma->bufs[i].freelist; in drm_infobufs()
1472 dma->bufs[i].buf_count, in drm_infobufs()
1473 dma->bufs[i].buf_size, in drm_infobufs()
1474 dma->bufs[i].freelist.low_mark, in drm_infobufs()
1475 dma->bufs[i].freelist.high_mark); in drm_infobufs()
1502 struct drm_device_dma *dma = dev->dma; in drm_markbufs() local
1510 if (!dma) in drm_markbufs()
1518 entry = &dma->bufs[order]; in drm_markbufs()
1546 struct drm_device_dma *dma = dev->dma; in drm_freebufs() local
1555 if (!dma) in drm_freebufs()
1562 if (idx < 0 || idx >= dma->buf_count) { in drm_freebufs()
1564 idx, dma->buf_count - 1); in drm_freebufs()
1567 buf = dma->buflist[idx]; in drm_freebufs()
1596 struct drm_device_dma *dma = dev->dma; in drm_mapbufs() local
1608 if (!dma) in drm_mapbufs()
1621 if (request->count >= dma->buf_count) { in drm_mapbufs()
1622 if ((drm_core_has_AGP(dev) && (dma->flags & _DRM_DMA_USE_AGP)) in drm_mapbufs()
1624 && (dma->flags & _DRM_DMA_USE_SG)) in drm_mapbufs()
1626 && (dma->flags & _DRM_DMA_USE_FB))) { in drm_mapbufs()
1638 retcode = vm_mmap(&vms->vm_map, &virtual, dma->byte_count, in drm_mapbufs()
1649 for (i = 0; i < dma->buf_count; i++) { in drm_mapbufs()
1651 &dma->buflist[i]->idx, in drm_mapbufs()
1657 &dma->buflist[i]->total, in drm_mapbufs()
1667 address = virtual + dma->buflist[i]->offset; /* *** */ in drm_mapbufs()
1676 request->count = dma->buf_count; in drm_mapbufs()