From 3edc12e8ea6bcac95f61d146a48e7e512222f0eb Mon Sep 17 00:00:00 2001 From: Prakash Kamliya Date: Thu, 17 Mar 2016 12:38:51 +0530 Subject: msm: kgsl: Update ucode workarounds for A5xx GPUs Update ucode workarounds for A5xx GPUs based on new microcode and hardware changes. CRs-Fixed: 1000396 Change-Id: I87a1ba9bfc441cad2ed6a6959d07af1cc1e2c7bc Signed-off-by: Prakash Kamliya Signed-off-by: Oleg Perelet --- drivers/gpu/msm/adreno_a5xx.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'drivers/gpu/msm') diff --git a/drivers/gpu/msm/adreno_a5xx.c b/drivers/gpu/msm/adreno_a5xx.c index ef3d5d8fc552..f1fc3bdede00 100644 --- a/drivers/gpu/msm/adreno_a5xx.c +++ b/drivers/gpu/msm/adreno_a5xx.c @@ -2512,12 +2512,23 @@ static int a5xx_microcode_load(struct adreno_device *adreno_dev) static int _me_init_ucode_workarounds(struct adreno_device *adreno_dev) { switch (ADRENO_GPUREV(adreno_dev)) { - case ADRENO_REV_A505: - case ADRENO_REV_A506: case ADRENO_REV_A510: return 0x00000001; /* Ucode workaround for token end syncs */ + case ADRENO_REV_A505: + case ADRENO_REV_A506: case ADRENO_REV_A530: - return 0x00000003; /* Ucode default workarounds */ + /* + * Ucode workarounds for token end syncs, + * WFI after every direct-render 3D mode draw and + * WFI after every 2D Mode 3 draw. + */ + return 0x0000000B; + case ADRENO_REV_A540: + /* + * WFI after every direct-render 3D mode draw and + * WFI after every 2D Mode 3 draw. + */ + return 0x0000000A; default: return 0x00000000; /* No ucode workarounds enabled */ } -- cgit v1.2.3