diff options
author | Prakash Kamliya <pkamliya@codeaurora.org> | 2016-03-17 12:38:51 +0530 |
---|---|---|
committer | Jeevan Shriram <jshriram@codeaurora.org> | 2016-04-22 15:04:52 -0700 |
commit | 3edc12e8ea6bcac95f61d146a48e7e512222f0eb (patch) | |
tree | 87e5d3d81f3d898f15a9478e424ddf3844f51a5e /drivers/gpu/msm | |
parent | bbb0b3be4477babb7d716de0fe67e99a77ef645d (diff) |
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 <pkamliya@codeaurora.org>
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
Diffstat (limited to 'drivers/gpu/msm')
-rw-r--r-- | drivers/gpu/msm/adreno_a5xx.c | 17 |
1 files changed, 14 insertions, 3 deletions
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 */ } |