vsg 67 drivers/gpu/drm/via/via_dmablit.c via_unmap_blit_from_device(struct pci_dev *pdev, drm_via_sg_info_t *vsg) vsg 69 drivers/gpu/drm/via/via_dmablit.c int num_desc = vsg->num_desc; vsg 70 drivers/gpu/drm/via/via_dmablit.c unsigned cur_descriptor_page = num_desc / vsg->descriptors_per_page; vsg 71 drivers/gpu/drm/via/via_dmablit.c unsigned descriptor_this_page = num_desc % vsg->descriptors_per_page; vsg 72 drivers/gpu/drm/via/via_dmablit.c drm_via_descriptor_t *desc_ptr = vsg->desc_pages[cur_descriptor_page] + vsg 74 drivers/gpu/drm/via/via_dmablit.c dma_addr_t next = vsg->chain_start; vsg 79 drivers/gpu/drm/via/via_dmablit.c descriptor_this_page = vsg->descriptors_per_page - 1; vsg 80 drivers/gpu/drm/via/via_dmablit.c desc_ptr = vsg->desc_pages[cur_descriptor_page] + vsg 84 drivers/gpu/drm/via/via_dmablit.c dma_unmap_page(&pdev->dev, desc_ptr->mem_addr, desc_ptr->size, vsg->direction); vsg 100 drivers/gpu/drm/via/via_dmablit.c drm_via_sg_info_t *vsg, vsg 118 drivers/gpu/drm/via/via_dmablit.c desc_ptr = vsg->desc_pages[cur_descriptor_page]; vsg 134 drivers/gpu/drm/via/via_dmablit.c vsg->pages[VIA_PFN(cur_mem) - vsg 137 drivers/gpu/drm/via/via_dmablit.c vsg->direction); vsg 145 drivers/gpu/drm/via/via_dmablit.c if (++num_descriptors_this_page >= vsg->descriptors_per_page) { vsg 147 drivers/gpu/drm/via/via_dmablit.c desc_ptr = vsg->desc_pages[++cur_descriptor_page]; vsg 161 drivers/gpu/drm/via/via_dmablit.c vsg->chain_start = next; vsg 162 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_device_mapped; vsg 164 drivers/gpu/drm/via/via_dmablit.c vsg->num_desc = num_desc; vsg 175 drivers/gpu/drm/via/via_dmablit.c via_free_sg_info(struct pci_dev *pdev, drm_via_sg_info_t *vsg) vsg 179 drivers/gpu/drm/via/via_dmablit.c switch (vsg->state) { vsg 181 drivers/gpu/drm/via/via_dmablit.c via_unmap_blit_from_device(pdev, vsg); vsg 184 drivers/gpu/drm/via/via_dmablit.c for (i = 0; i < vsg->num_desc_pages; ++i) { vsg 185 drivers/gpu/drm/via/via_dmablit.c if (vsg->desc_pages[i] != NULL) vsg 186 drivers/gpu/drm/via/via_dmablit.c free_page((unsigned long)vsg->desc_pages[i]); vsg 188 drivers/gpu/drm/via/via_dmablit.c kfree(vsg->desc_pages); vsg 191 drivers/gpu/drm/via/via_dmablit.c put_user_pages_dirty_lock(vsg->pages, vsg->num_pages, vsg 192 drivers/gpu/drm/via/via_dmablit.c (vsg->direction == DMA_FROM_DEVICE)); vsg 195 drivers/gpu/drm/via/via_dmablit.c vfree(vsg->pages); vsg 198 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_sg_init; vsg 200 drivers/gpu/drm/via/via_dmablit.c vfree(vsg->bounce_buffer); vsg 201 drivers/gpu/drm/via/via_dmablit.c vsg->bounce_buffer = NULL; vsg 202 drivers/gpu/drm/via/via_dmablit.c vsg->free_on_sequence = 0; vsg 210 drivers/gpu/drm/via/via_dmablit.c via_fire_dmablit(struct drm_device *dev, drm_via_sg_info_t *vsg, int engine) vsg 220 drivers/gpu/drm/via/via_dmablit.c via_write(dev_priv, VIA_PCI_DMA_DPR0 + engine*0x10, vsg->chain_start); vsg 232 drivers/gpu/drm/via/via_dmablit.c via_lock_all_dma_pages(drm_via_sg_info_t *vsg, drm_via_dmablit_t *xfer) vsg 236 drivers/gpu/drm/via/via_dmablit.c vsg->num_pages = VIA_PFN(xfer->mem_addr + (xfer->num_lines * xfer->mem_stride - 1)) - vsg 239 drivers/gpu/drm/via/via_dmablit.c vsg->pages = vzalloc(array_size(sizeof(struct page *), vsg->num_pages)); vsg 240 drivers/gpu/drm/via/via_dmablit.c if (NULL == vsg->pages) vsg 243 drivers/gpu/drm/via/via_dmablit.c vsg->num_pages, vsg 244 drivers/gpu/drm/via/via_dmablit.c vsg->direction == DMA_FROM_DEVICE ? FOLL_WRITE : 0, vsg 245 drivers/gpu/drm/via/via_dmablit.c vsg->pages); vsg 246 drivers/gpu/drm/via/via_dmablit.c if (ret != vsg->num_pages) { vsg 249 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_pages_locked; vsg 252 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_pages_locked; vsg 264 drivers/gpu/drm/via/via_dmablit.c via_alloc_desc_pages(drm_via_sg_info_t *vsg) vsg 268 drivers/gpu/drm/via/via_dmablit.c vsg->descriptors_per_page = PAGE_SIZE / sizeof(drm_via_descriptor_t); vsg 269 drivers/gpu/drm/via/via_dmablit.c vsg->num_desc_pages = (vsg->num_desc + vsg->descriptors_per_page - 1) / vsg 270 drivers/gpu/drm/via/via_dmablit.c vsg->descriptors_per_page; vsg 272 drivers/gpu/drm/via/via_dmablit.c if (NULL == (vsg->desc_pages = kcalloc(vsg->num_desc_pages, sizeof(void *), GFP_KERNEL))) vsg 275 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_desc_pages_alloc; vsg 276 drivers/gpu/drm/via/via_dmablit.c for (i = 0; i < vsg->num_desc_pages; ++i) { vsg 277 drivers/gpu/drm/via/via_dmablit.c if (NULL == (vsg->desc_pages[i] = vsg 281 drivers/gpu/drm/via/via_dmablit.c DRM_DEBUG("Allocated %d pages for %d descriptors.\n", vsg->num_desc_pages, vsg 282 drivers/gpu/drm/via/via_dmablit.c vsg->num_desc); vsg 574 drivers/gpu/drm/via/via_dmablit.c via_build_sg_info(struct drm_device *dev, drm_via_sg_info_t *vsg, drm_via_dmablit_t *xfer) vsg 579 drivers/gpu/drm/via/via_dmablit.c vsg->direction = (draw) ? DMA_TO_DEVICE : DMA_FROM_DEVICE; vsg 580 drivers/gpu/drm/via/via_dmablit.c vsg->bounce_buffer = NULL; vsg 582 drivers/gpu/drm/via/via_dmablit.c vsg->state = dr_via_sg_init; vsg 653 drivers/gpu/drm/via/via_dmablit.c if (0 != (ret = via_lock_all_dma_pages(vsg, xfer))) { vsg 655 drivers/gpu/drm/via/via_dmablit.c via_free_sg_info(dev->pdev, vsg); vsg 659 drivers/gpu/drm/via/via_dmablit.c via_map_blit_for_device(dev->pdev, xfer, vsg, 0); vsg 660 drivers/gpu/drm/via/via_dmablit.c if (0 != (ret = via_alloc_desc_pages(vsg))) { vsg 662 drivers/gpu/drm/via/via_dmablit.c via_free_sg_info(dev->pdev, vsg); vsg 665 drivers/gpu/drm/via/via_dmablit.c via_map_blit_for_device(dev->pdev, xfer, vsg, 1); vsg 724 drivers/gpu/drm/via/via_dmablit.c drm_via_sg_info_t *vsg; vsg 739 drivers/gpu/drm/via/via_dmablit.c if (NULL == (vsg = kmalloc(sizeof(*vsg), GFP_KERNEL))) { vsg 743 drivers/gpu/drm/via/via_dmablit.c if (0 != (ret = via_build_sg_info(dev, vsg, xfer))) { vsg 745 drivers/gpu/drm/via/via_dmablit.c kfree(vsg); vsg 750 drivers/gpu/drm/via/via_dmablit.c blitq->blits[blitq->head++] = vsg; vsg 127 drivers/media/pci/bt8xx/bttv-risc.c struct scatterlist *vsg; vsg 148 drivers/media/pci/bt8xx/bttv-risc.c vsg = sglist; vsg 190 drivers/media/pci/bt8xx/bttv-risc.c while (voffset && voffset >= sg_dma_len(vsg)) { vsg 191 drivers/media/pci/bt8xx/bttv-risc.c voffset -= sg_dma_len(vsg); vsg 192 drivers/media/pci/bt8xx/bttv-risc.c vsg = sg_next(vsg); vsg 197 drivers/media/pci/bt8xx/bttv-risc.c if (voffset + (ylen>>hshift) > sg_dma_len(vsg)) vsg 198 drivers/media/pci/bt8xx/bttv-risc.c ylen = (sg_dma_len(vsg) - voffset) << hshift; vsg 217 drivers/media/pci/bt8xx/bttv-risc.c *(rp++)=cpu_to_le32(sg_dma_address(vsg)+voffset);