Lines Matching refs:dma

685 	struct drm_device_dma *dma = dev->dma;  in drm_addbufs_agp()  local
701 if (!dma) in drm_addbufs_agp()
749 entry = &dma->bufs[order]; in drm_addbufs_agp()
777 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_agp()
782 buf->offset = (dma->byte_count + offset); in drm_addbufs_agp()
811 temp_buflist = realloc(dma->buflist, in drm_addbufs_agp()
812 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_agp()
821 dma->buflist = temp_buflist; in drm_addbufs_agp()
824 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_agp()
827 dma->buf_count += entry->buf_count; in drm_addbufs_agp()
828 dma->seg_count += entry->seg_count; in drm_addbufs_agp()
829 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_agp()
830 dma->byte_count += byte_count; in drm_addbufs_agp()
832 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_agp()
840 dma->flags = _DRM_DMA_USE_AGP; in drm_addbufs_agp()
850 struct drm_device_dma *dma = dev->dma; in drm_addbufs_pci() local
870 if (!dma) in drm_addbufs_pci()
900 entry = &dma->bufs[order]; in drm_addbufs_pci()
933 temp_pagelist = malloc((dma->page_count + (count << page_order)) * in drm_addbufs_pci()
934 sizeof(*dma->pagelist), DRM_MEM_PAGES, M_NOWAIT); in drm_addbufs_pci()
943 dma->pagelist, dma->page_count * sizeof(*dma->pagelist)); in drm_addbufs_pci()
945 dma->page_count + (count << page_order)); in drm_addbufs_pci()
969 dma->page_count + page_count, in drm_addbufs_pci()
971 temp_pagelist[dma->page_count + page_count++] in drm_addbufs_pci()
978 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_pci()
982 buf->offset = (dma->byte_count + byte_count + offset); in drm_addbufs_pci()
1010 temp_buflist = realloc(dma->buflist, in drm_addbufs_pci()
1011 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_pci()
1021 dma->buflist = temp_buflist; in drm_addbufs_pci()
1024 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_pci()
1030 if (dma->page_count) { in drm_addbufs_pci()
1031 free(dma->pagelist, DRM_MEM_PAGES); in drm_addbufs_pci()
1033 dma->pagelist = temp_pagelist; in drm_addbufs_pci()
1035 dma->buf_count += entry->buf_count; in drm_addbufs_pci()
1036 dma->seg_count += entry->seg_count; in drm_addbufs_pci()
1037 dma->page_count += entry->seg_count << page_order; in drm_addbufs_pci()
1038 dma->byte_count += PAGE_SIZE * (entry->seg_count << page_order); in drm_addbufs_pci()
1046 dma->flags = _DRM_DMA_USE_PCI_RO; in drm_addbufs_pci()
1056 struct drm_device_dma *dma = dev->dma; in drm_addbufs_sg() local
1074 if (!dma) in drm_addbufs_sg()
1112 entry = &dma->bufs[order]; in drm_addbufs_sg()
1140 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_sg()
1145 buf->offset = (dma->byte_count + offset); in drm_addbufs_sg()
1175 temp_buflist = realloc(dma->buflist, in drm_addbufs_sg()
1176 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_sg()
1185 dma->buflist = temp_buflist; in drm_addbufs_sg()
1188 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_sg()
1191 dma->buf_count += entry->buf_count; in drm_addbufs_sg()
1192 dma->seg_count += entry->seg_count; in drm_addbufs_sg()
1193 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_sg()
1194 dma->byte_count += byte_count; in drm_addbufs_sg()
1196 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_sg()
1204 dma->flags = _DRM_DMA_USE_SG; in drm_addbufs_sg()
1212 struct drm_device_dma *dma = dev->dma; in drm_addbufs_fb() local
1230 if (!dma) in drm_addbufs_fb()
1268 entry = &dma->bufs[order]; in drm_addbufs_fb()
1296 buf->idx = dma->buf_count + entry->buf_count; in drm_addbufs_fb()
1301 buf->offset = (dma->byte_count + offset); in drm_addbufs_fb()
1330 temp_buflist = realloc(dma->buflist, in drm_addbufs_fb()
1331 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_addbufs_fb()
1340 dma->buflist = temp_buflist; in drm_addbufs_fb()
1343 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_addbufs_fb()
1346 dma->buf_count += entry->buf_count; in drm_addbufs_fb()
1347 dma->seg_count += entry->seg_count; in drm_addbufs_fb()
1348 dma->page_count += byte_count >> PAGE_SHIFT; in drm_addbufs_fb()
1349 dma->byte_count += byte_count; in drm_addbufs_fb()
1351 DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count); in drm_addbufs_fb()
1359 dma->flags = _DRM_DMA_USE_FB; in drm_addbufs_fb()
1424 struct drm_device_dma *dma = dev->dma; in drm_infobufs() local
1432 if (!dma) in drm_infobufs()
1444 if (dma->bufs[i].buf_count) in drm_infobufs()
1452 if (dma->bufs[i].buf_count) { in drm_infobufs()
1455 struct drm_buf_entry *from = &dma->bufs[i]; in drm_infobufs()
1456 struct drm_freelist *list = &dma->bufs[i].freelist; in drm_infobufs()
1473 dma->bufs[i].buf_count, in drm_infobufs()
1474 dma->bufs[i].buf_size, in drm_infobufs()
1475 dma->bufs[i].freelist.low_mark, in drm_infobufs()
1476 dma->bufs[i].freelist.high_mark); in drm_infobufs()
1503 struct drm_device_dma *dma = dev->dma; in drm_markbufs() local
1511 if (!dma) in drm_markbufs()
1519 entry = &dma->bufs[order]; in drm_markbufs()
1547 struct drm_device_dma *dma = dev->dma; in drm_freebufs() local
1556 if (!dma) in drm_freebufs()
1563 if (idx < 0 || idx >= dma->buf_count) { in drm_freebufs()
1565 idx, dma->buf_count - 1); in drm_freebufs()
1568 buf = dma->buflist[idx]; in drm_freebufs()
1597 struct drm_device_dma *dma = dev->dma; in drm_mapbufs() local
1609 if (!dma) in drm_mapbufs()
1622 if (request->count >= dma->buf_count) { in drm_mapbufs()
1623 if ((drm_core_has_AGP(dev) && (dma->flags & _DRM_DMA_USE_AGP)) in drm_mapbufs()
1625 && (dma->flags & _DRM_DMA_USE_SG)) in drm_mapbufs()
1627 && (dma->flags & _DRM_DMA_USE_FB))) { in drm_mapbufs()
1639 retcode = vm_mmap(&vms->vm_map, &virtual, dma->byte_count, in drm_mapbufs()
1650 for (i = 0; i < dma->buf_count; i++) { in drm_mapbufs()
1652 &dma->buflist[i]->idx, in drm_mapbufs()
1658 &dma->buflist[i]->total, in drm_mapbufs()
1668 address = virtual + dma->buflist[i]->offset; /* *** */ in drm_mapbufs()
1677 request->count = dma->buf_count; in drm_mapbufs()