drm: add chipset flushing via agp support
parent
2489062a33
commit
17f0882d50
|
@ -1133,6 +1133,7 @@ extern int drm_agp_free_memory(DRM_AGP_MEM * handle);
|
||||||
extern int drm_agp_bind_memory(DRM_AGP_MEM * handle, off_t start);
|
extern int drm_agp_bind_memory(DRM_AGP_MEM * handle, off_t start);
|
||||||
extern int drm_agp_unbind_memory(DRM_AGP_MEM * handle);
|
extern int drm_agp_unbind_memory(DRM_AGP_MEM * handle);
|
||||||
extern struct drm_ttm_backend *drm_agp_init_ttm(struct drm_device *dev);
|
extern struct drm_ttm_backend *drm_agp_init_ttm(struct drm_device *dev);
|
||||||
|
extern void drm_agp_chipset_flush(struct drm_device *dev);
|
||||||
/* Stub support (drm_stub.h) */
|
/* Stub support (drm_stub.h) */
|
||||||
extern int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
|
extern int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
|
||||||
struct drm_driver *driver);
|
struct drm_driver *driver);
|
||||||
|
|
|
@ -650,4 +650,12 @@ struct drm_ttm_backend *drm_agp_init_ttm(struct drm_device *dev)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(drm_agp_init_ttm);
|
EXPORT_SYMBOL(drm_agp_init_ttm);
|
||||||
|
|
||||||
|
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25)
|
||||||
|
void drm_agp_flush_chipset(struct drm_device *dev)
|
||||||
|
{
|
||||||
|
agp_flush_chipset(dev->agp->bridge);
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(drm_agp_flush_chipset);
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __OS_HAS_AGP */
|
#endif /* __OS_HAS_AGP */
|
||||||
|
|
|
@ -1043,6 +1043,7 @@ static int i915_execbuffer(struct drm_device *dev, void *data,
|
||||||
|
|
||||||
/* make sure all previous memory operations have passed */
|
/* make sure all previous memory operations have passed */
|
||||||
DRM_MEMORYBARRIER();
|
DRM_MEMORYBARRIER();
|
||||||
|
drm_agp_chipset_flush(dev);
|
||||||
|
|
||||||
/* submit buffer */
|
/* submit buffer */
|
||||||
batch->start = buffers[num_buffers-1]->offset;
|
batch->start = buffers[num_buffers-1]->offset;
|
||||||
|
|
Loading…
Reference in New Issue