static struct ttm_backend* radeon_create_ttm_backend_entry(struct ttm_bo_device *bdev) { struct radeon_device *rdev; rdev = radeon_get_rdev(bdev); #if __OS_HAS_AGP if (rdev->flags & RADEON_IS_AGP) { return ttm_agp_backend_init(bdev, rdev->ddev->agp->bridge); } else #endif { return radeon_ttm_backend_create(rdev); } }
static struct ttm_backend * nouveau_bo_create_ttm_backend_entry(struct ttm_bo_device *bdev) { struct drm_nouveau_private *dev_priv = nouveau_bdev(bdev); struct drm_device *dev = dev_priv->dev; switch (dev_priv->gart_info.type) { #if __OS_HAS_AGP case NOUVEAU_GART_AGP: return ttm_agp_backend_init(bdev, dev->agp->bridge); #endif case NOUVEAU_GART_SGDMA: return nouveau_sgdma_init_ttm(dev); default: NV_ERROR(dev, "Unknown GART type %d\n", dev_priv->gart_info.type); break; } return NULL; }