diff options
Diffstat (limited to 'drivers/gpu/drm/drm_dma.c')
| -rw-r--r-- | drivers/gpu/drm/drm_dma.c | 31 |
1 files changed, 7 insertions, 24 deletions
diff --git a/drivers/gpu/drm/drm_dma.c b/drivers/gpu/drm/drm_dma.c index 7a8e2fba4678..13f1537413fb 100644 --- a/drivers/gpu/drm/drm_dma.c +++ b/drivers/gpu/drm/drm_dma.c | |||
| @@ -47,7 +47,7 @@ int drm_dma_setup(struct drm_device *dev) | |||
| 47 | { | 47 | { |
| 48 | int i; | 48 | int i; |
| 49 | 49 | ||
| 50 | dev->dma = drm_alloc(sizeof(*dev->dma), DRM_MEM_DRIVER); | 50 | dev->dma = kmalloc(sizeof(*dev->dma), GFP_KERNEL); |
| 51 | if (!dev->dma) | 51 | if (!dev->dma) |
| 52 | return -ENOMEM; | 52 | return -ENOMEM; |
| 53 | 53 | ||
| @@ -88,36 +88,19 @@ void drm_dma_takedown(struct drm_device *dev) | |||
| 88 | drm_pci_free(dev, dma->bufs[i].seglist[j]); | 88 | drm_pci_free(dev, dma->bufs[i].seglist[j]); |
| 89 | } | 89 | } |
| 90 | } | 90 | } |
| 91 | drm_free(dma->bufs[i].seglist, | 91 | kfree(dma->bufs[i].seglist); |
| 92 | dma->bufs[i].seg_count | ||
| 93 | * sizeof(*dma->bufs[0].seglist), DRM_MEM_SEGS); | ||
| 94 | } | 92 | } |
| 95 | if (dma->bufs[i].buf_count) { | 93 | if (dma->bufs[i].buf_count) { |
| 96 | for (j = 0; j < dma->bufs[i].buf_count; j++) { | 94 | for (j = 0; j < dma->bufs[i].buf_count; j++) { |
| 97 | if (dma->bufs[i].buflist[j].dev_private) { | 95 | kfree(dma->bufs[i].buflist[j].dev_private); |
| 98 | drm_free(dma->bufs[i].buflist[j]. | ||
| 99 | dev_private, | ||
| 100 | dma->bufs[i].buflist[j]. | ||
| 101 | dev_priv_size, DRM_MEM_BUFS); | ||
| 102 | } | ||
| 103 | } | 96 | } |
| 104 | drm_free(dma->bufs[i].buflist, | 97 | kfree(dma->bufs[i].buflist); |
| 105 | dma->bufs[i].buf_count * | ||
| 106 | sizeof(*dma->bufs[0].buflist), DRM_MEM_BUFS); | ||
| 107 | } | 98 | } |
| 108 | } | 99 | } |
| 109 | 100 | ||
| 110 | if (dma->buflist) { | 101 | kfree(dma->buflist); |
| 111 | drm_free(dma->buflist, | 102 | kfree(dma->pagelist); |
| 112 | dma->buf_count * sizeof(*dma->buflist), DRM_MEM_BUFS); | 103 | kfree(dev->dma); |
| 113 | } | ||
| 114 | |||
| 115 | if (dma->pagelist) { | ||
| 116 | drm_free(dma->pagelist, | ||
| 117 | dma->page_count * sizeof(*dma->pagelist), | ||
| 118 | DRM_MEM_PAGES); | ||
| 119 | } | ||
| 120 | drm_free(dev->dma, sizeof(*dev->dma), DRM_MEM_DRIVER); | ||
| 121 | dev->dma = NULL; | 104 | dev->dma = NULL; |
| 122 | } | 105 | } |
| 123 | 106 | ||
