summaryrefslogtreecommitdiff
path: root/drivers/gpu/msm
diff options
context:
space:
mode:
authorJordan Crouse <jcrouse@codeaurora.org>2015-11-17 15:16:54 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 21:11:47 -0700
commit6fce6a4e6f8402963dfa18a8ac41da226646b0c1 (patch)
tree7eb81996a4ba46607e2bd9e2ef1f117ac9133149 /drivers/gpu/msm
parent9facb99df7041ed3faf4888f2f12968ff48e9540 (diff)
msm: kgsl: Skip a5xx_post_start if it isn't needed
a5xx_post_start() is currently only used for either an A530 workaround OR preemption. If neither are allocated then memory is allocated in the ringbuffer for no reason and it confuses everybody. Change-Id: Ic0dedbad7615ba0593da5eb701cc5943877883f4 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Diffstat (limited to 'drivers/gpu/msm')
-rw-r--r--drivers/gpu/msm/adreno_a5xx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/msm/adreno_a5xx.c b/drivers/gpu/msm/adreno_a5xx.c
index 6c57c5741077..07408851f813 100644
--- a/drivers/gpu/msm/adreno_a5xx.c
+++ b/drivers/gpu/msm/adreno_a5xx.c
@@ -1826,6 +1826,10 @@ static void a5xx_post_start(struct adreno_device *adreno_dev)
unsigned int *cmds, *start;
struct adreno_ringbuffer *rb = adreno_dev->cur_rb;
+ if (!adreno_is_a530(adreno_dev) &&
+ !adreno_is_preemption_enabled(adreno_dev))
+ return;
+
cmds = adreno_ringbuffer_allocspace(rb, 42);
if (IS_ERR_OR_NULL(cmds))
return;