diff options
author | Dave Airlie <airlied@redhat.com> | 2009-03-09 05:17:08 +0300 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-03-13 07:24:18 +0300 |
commit | a763d7dc0adb1159c1a52d43e566409da9fa59f0 (patch) | |
tree | 62898c96080193cc849b635e8ef8ae08cac30836 /drivers/gpu/drm/radeon/r600_cp.c | |
parent | 08932156cc2d4f8807dc5ca5c3d6ccd85080610a (diff) | |
download | linux-a763d7dc0adb1159c1a52d43e566409da9fa59f0.tar.xz |
drm/radeon: fix r600 pci mapping calls.
This realigns the r600 pci mapping calls with the ati pcigart ones,
fixing the direction and using the correct interface.
Suggested by Jerome Glisse.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/r600_cp.c')
-rw-r--r-- | drivers/gpu/drm/radeon/r600_cp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/radeon/r600_cp.c b/drivers/gpu/drm/radeon/r600_cp.c index f915f1153b41..be2bba66d5d9 100644 --- a/drivers/gpu/drm/radeon/r600_cp.c +++ b/drivers/gpu/drm/radeon/r600_cp.c @@ -132,8 +132,8 @@ void r600_page_table_cleanup(struct drm_device *dev, struct drm_ati_pcigart_info for (i = 0; i < pages; i++) { if (!entry->busaddr[i]) break; - pci_unmap_single(dev->pdev, entry->busaddr[i], - PAGE_SIZE, PCI_DMA_TODEVICE); + pci_unmap_page(dev->pdev, entry->busaddr[i], + PAGE_SIZE, PCI_DMA_BIDIRECTIONAL); } if (gart_info->gart_table_location == DRM_ATI_GART_MAIN) gart_info->bus_addr = 0; @@ -165,10 +165,10 @@ int r600_page_table_init(struct drm_device *dev) gart_idx = 0; for (i = 0; i < pages; i++) { - entry->busaddr[i] = pci_map_single(dev->pdev, - page_address(entry-> - pagelist[i]), - PAGE_SIZE, PCI_DMA_TODEVICE); + entry->busaddr[i] = pci_map_page(dev->pdev, + entry->pagelist[i], 0, + PAGE_SIZE, + PCI_DMA_BIDIRECTIONAL); if (entry->busaddr[i] == 0) { DRM_ERROR("unable to map PCIGART pages!\n"); r600_page_table_cleanup(dev, gart_info); |