msm: kgsl: Remove DRM specific gpu cache flush
DRM specific gpu cache flushing was causing kernel
crashes (NULL dereferences) and is no longer necessary.
Change-Id: I47d82baa9454a29e7f21b9ac5365921379bfb09d
Signed-off-by: Michael Street <mstreet@codeaurora.org>
diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c
index 805e0c1..50a6fab 100644
--- a/drivers/gpu/msm/kgsl.c
+++ b/drivers/gpu/msm/kgsl.c
@@ -903,10 +903,6 @@
struct kgsl_ibdesc *ibdesc;
struct kgsl_context *context;
-#ifdef CONFIG_MSM_KGSL_DRM
- kgsl_gpu_mem_flush(DRM_KGSL_GEM_CACHE_OP_TO_DEV);
-#endif
-
context = kgsl_find_context(dev_priv, param->drawctxt_id);
if (context == NULL) {
result = -EINVAL;
@@ -994,10 +990,6 @@
kfree(ibdesc);
done:
-#ifdef CONFIG_MSM_KGSL_DRM
- kgsl_gpu_mem_flush(DRM_KGSL_GEM_CACHE_OP_FROM_DEV);
-#endif
-
return result;
}
diff --git a/drivers/gpu/msm/kgsl.h b/drivers/gpu/msm/kgsl.h
index 3e8aac3..b2fe095 100644
--- a/drivers/gpu/msm/kgsl.h
+++ b/drivers/gpu/msm/kgsl.h
@@ -160,7 +160,6 @@
#ifdef CONFIG_MSM_KGSL_DRM
extern int kgsl_drm_init(struct platform_device *dev);
extern void kgsl_drm_exit(void);
-extern void kgsl_gpu_mem_flush(int op);
#else
static inline int kgsl_drm_init(struct platform_device *dev)
{
diff --git a/drivers/gpu/msm/kgsl_drm.c b/drivers/gpu/msm/kgsl_drm.c
index e3f6f3b..03f8c42 100644
--- a/drivers/gpu/msm/kgsl_drm.c
+++ b/drivers/gpu/msm/kgsl_drm.c
@@ -156,22 +156,6 @@
kgsl_cache_range_op(memdesc, cacheop);
}
-/* Flush all the memory mapped in the MMU */
-
-void kgsl_gpu_mem_flush(int op)
-{
- struct drm_kgsl_gem_object *entry;
-
- list_for_each_entry(entry, &kgsl_mem_list, list) {
- kgsl_gem_mem_flush(&entry->memdesc, entry->type, op);
- }
-
- /* Takes care of WT/WC case.
- * More useful when we go barrierless
- */
- dmb();
-}
-
/* TODO:
* Add vsync wait */