|
@@ -46,7 +46,7 @@ static inline void *drm_vmalloc_dma(unsigned long size)
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
-void drm_sg_cleanup(struct drm_sg_mem * entry)
|
|
|
+static void drm_sg_cleanup(struct drm_sg_mem * entry)
|
|
|
{
|
|
|
struct page *page;
|
|
|
int i;
|
|
@@ -64,6 +64,14 @@ void drm_sg_cleanup(struct drm_sg_mem * entry)
|
|
|
kfree(entry);
|
|
|
}
|
|
|
|
|
|
+void drm_legacy_sg_cleanup(struct drm_device *dev)
|
|
|
+{
|
|
|
+ if (drm_core_check_feature(dev, DRIVER_SG) && dev->sg &&
|
|
|
+ !drm_core_check_feature(dev, DRIVER_MODESET)) {
|
|
|
+ drm_sg_cleanup(dev->sg);
|
|
|
+ dev->sg = NULL;
|
|
|
+ }
|
|
|
+}
|
|
|
#ifdef _LP64
|
|
|
# define ScatterHandle(x) (unsigned int)((x >> 32) + (x & ((1L << 32) - 1)))
|
|
|
#else
|