[DRIVER] Adreno 5xx GPU Driver [V313 REV23 | V331 REV1]

Status
Not open for further replies.
Search This thread

heindrix

Senior Member
Jul 25, 2017
880
897
Pekanbaru
[NOTES]
Guys, there are many members encounter blackscreen (after system boot) after flashing the driver on the LATEST Pie ROM (it's happening after September security patch).
Looks like it's due to the hardening security.
This method fixed that blackscreen problem : https://forum.xda-developers.com/showpost.php?p=78355758&postcount=1047
Or the better way is, to tell your dev to include this blobs in the rom directly, that way the rom will boot successfully.
I will try to solve the issue ASAP, best regards.



[DISCLAIMER]
* flash it with your own risk, don't blame me if it's not working for you, make sure to backup before you messed up.
* there are possibilities that maybe this driver won't work on some ROMs.
* there are possibilities that maybe this driver won't work on some CPUs that hasn't been tested.


[README]
* to check your GPU driver OpenGL ES version, use AIDA64 (like shown on the picture in attachment). download : https://play.google.com/store/apps/details?id=com.finalwire.aida64&hl=en_US
* to check your GPU driver Vulkan version, use Vulkan Hardware Capability Viewer (like shown on the picture attachment). download : https://play.google.com/store/apps/details?id=de.saschawillems.vulkancapsviewer&hl=en_US
* if your current driver have higher version and don't have any bugs, no need to flash this driver.
* check your device compatibility in compatibility list section.
* some tester said the benchmark score go higher and 3D heavy games are smoother using latest GPU driver, you can try to take before and after benchmark pictures and post it here to prove it.
* the driver is interchangeable (can be flashed over the top of another version, it will be replaced).


[COMPATIBILITY]
PROJECT :
* Non-Treble
* Treble

OS :
* Android 8.0 : [email protected]
* Android 8.1 : [email protected]
* Android 9.0 : [email protected] | [email protected] | [email protected]

CPU :
* Snapdragon 430 = msm8937 (tested)
* Snapdragon 435 = msm8940
* Snapdragon 625/626 = msm8953 (tested)
* Snapdragon 650 = msm8956 (not compatible)
* Snapdragon 652/653 = msm8976
* Snapdragon 820/821 = msm8996 (tested)
* Snapdragon 835 = msm8998 (tested)
* Snapdragon 429 = sdm429
* Snapdragon 439 = sdm439
* Snapdragon 450 = sdm450
* Snapdragon 630 = sdm630
* Snapdragon 632 = sdm632
* Snapdragon 636 = sdm636
* Snapdragon 660 = sdm660 (tested)


[INSTRUCTIONS]
1]. find out what is your CPU model number, you can see it in COMPATIBILITY section, on CPU sub-section. for example, my CPU is Snapdragon 821, so the CPU model number is msm8996.
2]. download the zip file. rename file in the zip file with name "vulkan.xxx.so" in system/(vendor)/lib/hw and system/(vendor)/lib64/hw to "vulkan.CpuModelNumber.so". for example, for me, i rename "vulkan.xxx.so" to "vulkan.msm8996.so".
you can use this app to rename the file inside the zip file : https://play.google.com/store/apps/details?id=com.rarlab.rar
DO NOT EDIT FILE NAMED "a5xx", ONLY EDIT FILE NAMED "vulkan.xxx.so", I HAVE TO MENTION THIS BECAUSE SOME GENIUS DECIDE TO DO THINGS BY THEIR OWN REGARDLESS FOLLOWING THE INSTRUCTIONS THAT HAS GIVEN STEP BY STEP.
3]. boot into TWRP
4]. make sure your SYSTEM and VENDOR partitions are not read only.
5]. just in case, mount SYSTEM and VENDOR partitions before flash the zip file.
6]. flash the modified zip file, wipe Dalvik Cache and Cache.
7]. after flash, boot into system, and check if your GPU Version driver has changed (you can use AIDA64). and you can test benchmark if you want (i suggest 3DMark or Antutu).
8]. this step is optional/additional : to boost GPU performance a little bit again, please add this code in system/vendor/build.prop (or in system/build.prop if you can't find it in system/vendor/build.prop). and please check if there's the same code line in your default build.prop, remove it so it won't conflicting each other. code to add :

com.qc.hardware=true
debug.composition.type=gpu
debug.egl.hw=1
debug.egl.profiler=1
debug.enabletr=true
debug.gralloc.enable_fb_ubwc=1
debug.overlayui.enable=1
debug.performance.tuning=1
debug.qc.hardware=true
debug.qctwa.preservebuf=1
debug.qctwa.statusbar=1
debug.sf.hw=1
debug.sf.latch_unsignaled=1
dev.pm.dyn_samplingrate=1
hw3d.force=1
hwui.disable_vsync=true
hwui.render_dirty_regions=false
ro.config.enable.hw_accel=true
ro.fb.mode=1
ro.product.gpu.driver=1
ro.sf.compbypass.enable=0


[DOWNLOADS]
https://drive.google.com/drive/folders/1JN05hFMijXq2Xpn_tFv1AJWodVnQYTsu


[BUGS REPORTING]
* provide device model.
* provide ROM name, android version, and treble/non-treble version.
* which file did you flash.
* provide logcat, preferable taken with adb using verbose option. how to : https://forum.xda-developers.com/showthread.php?t=2185929
* I WILL NEVER TRY TO INSPECT/FIX ANYTHING IF YOU DON'T SEND LOGS, SAME GOES I WILL NEVER REPLY YOUR MESSAGE IF YOU DON'T SEND LOGS.



[OTHER STUFFS]
* Do this only if you get stock camera app force close : https://forum.xda-developers.com/showpost.php?p=77971228&postcount=803
* A little help from @LilBlinx for msm8953 devices : https://forum.xda-developers.com/showpost.php?p=78574409&postcount=1123


[CREDITS]
* Source : v313 : https://www.coolapk.com/feed/7290260 | v319 : https://www.coolapk.com/feed/7483860 | v328 : https://github.com/LineageOS | v330 : https://github.com/syberia-project
* Driver Author : v313, v319椿的神之圍樓 | v328, v330, v331 : @[B]heindrix[/B]
* Informant : @[B]llinn[/B]


* WHY DON'T YOU CREATE MAGISK MODULE?
Well, i just believe the performance will be better to flash the driver directly into its designated directory, rather than mounting it from an image and load it later when booting (which is what is magisk doing). For me, some other things is okay to make it into a magisk module, but not a driver, period.
 

Attachments

  • AIDA64.png
    AIDA64.png
    218.8 KB · Views: 36,461
  • Vulkan_Caps_Viewer.png
    Vulkan_Caps_Viewer.png
    197.6 KB · Views: 36,192
Last edited:

gavin19

Senior Member
Jan 9, 2014
903
1,080
Belfast
Source? You might want to remove the 540 links since we only need 530, just to save any 'which one' questions.

With 3DMark I used the Sling Shot Extreme (Open GL ES 3.1 & Vulkan) and Ice Storm (Open GL ES 2.0) benchmarks. Results again remained pretty much the same before/after. SSE was ~2550-2700 for Open GL and ~1900-2000 for Vulkan. Ice Storm was almost always ~38,500.

In Antutu though, I got a considerable boost (76k on GPU instead of my usual max of 69k).

I'd be interested to see what others get, and if there are any alternative benchmark apps worth using.
 

Attachments

  • Screenshot_AnTuTu_Benchmark_20180713-173929.png
    Screenshot_AnTuTu_Benchmark_20180713-173929.png
    181.6 KB · Views: 23,167
  • Screenshot_AnTuTu_Benchmark_20180714-145730.jpg
    Screenshot_AnTuTu_Benchmark_20180714-145730.jpg
    155.9 KB · Views: 22,766
Last edited:

heindrix

Senior Member
Jul 25, 2017
880
897
Pekanbaru
Source? You might want to remove the 540 links since we only need 530, just to save any 'which one' questions.

With 3DMark I used the Sling Shot Extreme (Open GL ES 3.1 & Vulkan) and Ice Storm (Open GL ES 2.0) benchmarks. Results again remained pretty much the same before/after. SSE was ~2550-2700 for Open GL and ~1900-2000 for Vulkan. Ice Storm was almost always ~38,500.

In Antutu though, I got a considerable boost (76k on GPU instead of my usual max of 69k).

I'd be interested to see what others get, and if there are any alternative benchmark apps worth using.

got it from a friend.
he said he got it from a china forum www.coolapk.com.
the driver is extracted from Pixel 2/Essential PH-1, since msm8998 gpu driver can be used for msm8996 too.
is it possible to merge the driver into your rom? (crdroid, aicp, rr)


okay, done a bit research.
i downloaded Google Pixel driver binaries from here (taimen and walleye for Adreno 540, and marlin and sailfish for Adreno 530) : https://developers.google.com/android/drivers
looks like the same files, and the binaries were updated very regularly, which is good.
maybe i'll create a magisk flashable zip and try to flash it to see if it works fine.
if it works fine, i'll update it regularly here everytime google release new driver binaries.
 
Last edited:

xX.R.O.G.Xx

Member
Feb 12, 2017
44
6
Pointe-a-Pitre
The lowest is before and the highest is after.
I'm using the magisk non treble version.
 

Attachments

  • Screenshot_AnTuTu_Benchmark_20180713-234903.png
    Screenshot_AnTuTu_Benchmark_20180713-234903.png
    200.5 KB · Views: 13,151
  • Screenshot_AnTuTu_Benchmark_20180714-000056.png
    Screenshot_AnTuTu_Benchmark_20180714-000056.png
    194.8 KB · Views: 13,068
  • Like
Reactions: Konstantine34

qqjoyko

Member
Feb 25, 2018
9
1
thanks, but radiation Island and radiation city are unable to run after I updated 313 driver (I tried both magisk and rec edition;other games and apps work fine)
could you fix this ?
or it's the problem of game maker so I just need to waitting for them upadate games?
 
Last edited:
  • Like
Reactions: Konstantine34

Annoyingmouse

Member
Jan 9, 2016
44
5
Wow, the new driver is amazing! I really don't know what it changed but it was magic! Not only my gpu AnTuTu score is higher but somehow the phone doesn't get as warm as before, the temperature is just stable. Also I have tested one game - madout open city - and I think that the phone throttloted less because I had higher fps and everything was smooth. I'm just impressed with what 313 did, I feel like qualcomm is really trying to improve their drivers even on older models.
 

lesscro

Senior Member
Jul 16, 2007
4,431
2,255
Paris
www.lesscro.com
how to use magisk flash this driver?
or reboot recovery flash thish driver?

For me Flash with magisk failed.... then like all time, flash using TWRP is much easier !!
DOn't do like me, make a backup first !!

I need dirty flash my rom and when i install magisk again he found lastest img from magisk then restore and module bootloop again, borrrrrrinnnnng !
 

gavin19

Senior Member
Jan 9, 2014
903
1,080
Belfast

Annoyingmouse

Member
Jan 9, 2016
44
5
Yeah sorry I think I should have mentioned that the cpu was slightly oc-ed to 2.25 ghz, so closer to the op3t's stock clock speed; this is how I let the phone run always when Im not low on power..but everything else was just like oxygen os stock.
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 113
    [NOTES]
    Guys, there are many members encounter blackscreen (after system boot) after flashing the driver on the LATEST Pie ROM (it's happening after September security patch).
    Looks like it's due to the hardening security.
    This method fixed that blackscreen problem : https://forum.xda-developers.com/showpost.php?p=78355758&postcount=1047
    Or the better way is, to tell your dev to include this blobs in the rom directly, that way the rom will boot successfully.
    I will try to solve the issue ASAP, best regards.



    [DISCLAIMER]
    * flash it with your own risk, don't blame me if it's not working for you, make sure to backup before you messed up.
    * there are possibilities that maybe this driver won't work on some ROMs.
    * there are possibilities that maybe this driver won't work on some CPUs that hasn't been tested.


    [README]
    * to check your GPU driver OpenGL ES version, use AIDA64 (like shown on the picture in attachment). download : https://play.google.com/store/apps/details?id=com.finalwire.aida64&hl=en_US
    * to check your GPU driver Vulkan version, use Vulkan Hardware Capability Viewer (like shown on the picture attachment). download : https://play.google.com/store/apps/details?id=de.saschawillems.vulkancapsviewer&hl=en_US
    * if your current driver have higher version and don't have any bugs, no need to flash this driver.
    * check your device compatibility in compatibility list section.
    * some tester said the benchmark score go higher and 3D heavy games are smoother using latest GPU driver, you can try to take before and after benchmark pictures and post it here to prove it.
    * the driver is interchangeable (can be flashed over the top of another version, it will be replaced).


    [COMPATIBILITY]
    PROJECT :
    * Non-Treble
    * Treble

    OS :
    * Android 8.0 : [email protected]
    * Android 8.1 : [email protected]
    * Android 9.0 : [email protected] | [email protected] | [email protected]

    CPU :
    * Snapdragon 430 = msm8937 (tested)
    * Snapdragon 435 = msm8940
    * Snapdragon 625/626 = msm8953 (tested)
    * Snapdragon 650 = msm8956 (not compatible)
    * Snapdragon 652/653 = msm8976
    * Snapdragon 820/821 = msm8996 (tested)
    * Snapdragon 835 = msm8998 (tested)
    * Snapdragon 429 = sdm429
    * Snapdragon 439 = sdm439
    * Snapdragon 450 = sdm450
    * Snapdragon 630 = sdm630
    * Snapdragon 632 = sdm632
    * Snapdragon 636 = sdm636
    * Snapdragon 660 = sdm660 (tested)


    [INSTRUCTIONS]
    1]. find out what is your CPU model number, you can see it in COMPATIBILITY section, on CPU sub-section. for example, my CPU is Snapdragon 821, so the CPU model number is msm8996.
    2]. download the zip file. rename file in the zip file with name "vulkan.xxx.so" in system/(vendor)/lib/hw and system/(vendor)/lib64/hw to "vulkan.CpuModelNumber.so". for example, for me, i rename "vulkan.xxx.so" to "vulkan.msm8996.so".
    you can use this app to rename the file inside the zip file : https://play.google.com/store/apps/details?id=com.rarlab.rar
    DO NOT EDIT FILE NAMED "a5xx", ONLY EDIT FILE NAMED "vulkan.xxx.so", I HAVE TO MENTION THIS BECAUSE SOME GENIUS DECIDE TO DO THINGS BY THEIR OWN REGARDLESS FOLLOWING THE INSTRUCTIONS THAT HAS GIVEN STEP BY STEP.
    3]. boot into TWRP
    4]. make sure your SYSTEM and VENDOR partitions are not read only.
    5]. just in case, mount SYSTEM and VENDOR partitions before flash the zip file.
    6]. flash the modified zip file, wipe Dalvik Cache and Cache.
    7]. after flash, boot into system, and check if your GPU Version driver has changed (you can use AIDA64). and you can test benchmark if you want (i suggest 3DMark or Antutu).
    8]. this step is optional/additional : to boost GPU performance a little bit again, please add this code in system/vendor/build.prop (or in system/build.prop if you can't find it in system/vendor/build.prop). and please check if there's the same code line in your default build.prop, remove it so it won't conflicting each other. code to add :

    com.qc.hardware=true
    debug.composition.type=gpu
    debug.egl.hw=1
    debug.egl.profiler=1
    debug.enabletr=true
    debug.gralloc.enable_fb_ubwc=1
    debug.overlayui.enable=1
    debug.performance.tuning=1
    debug.qc.hardware=true
    debug.qctwa.preservebuf=1
    debug.qctwa.statusbar=1
    debug.sf.hw=1
    debug.sf.latch_unsignaled=1
    dev.pm.dyn_samplingrate=1
    hw3d.force=1
    hwui.disable_vsync=true
    hwui.render_dirty_regions=false
    ro.config.enable.hw_accel=true
    ro.fb.mode=1
    ro.product.gpu.driver=1
    ro.sf.compbypass.enable=0


    [DOWNLOADS]
    https://drive.google.com/drive/folders/1JN05hFMijXq2Xpn_tFv1AJWodVnQYTsu


    [BUGS REPORTING]
    * provide device model.
    * provide ROM name, android version, and treble/non-treble version.
    * which file did you flash.
    * provide logcat, preferable taken with adb using verbose option. how to : https://forum.xda-developers.com/showthread.php?t=2185929
    * I WILL NEVER TRY TO INSPECT/FIX ANYTHING IF YOU DON'T SEND LOGS, SAME GOES I WILL NEVER REPLY YOUR MESSAGE IF YOU DON'T SEND LOGS.



    [OTHER STUFFS]
    * Do this only if you get stock camera app force close : https://forum.xda-developers.com/showpost.php?p=77971228&postcount=803
    * A little help from @LilBlinx for msm8953 devices : https://forum.xda-developers.com/showpost.php?p=78574409&postcount=1123


    [CREDITS]
    * Source : v313 : https://www.coolapk.com/feed/7290260 | v319 : https://www.coolapk.com/feed/7483860 | v328 : https://github.com/LineageOS | v330 : https://github.com/syberia-project
    * Driver Author : v313, v319椿的神之圍樓 | v328, v330, v331 : @[B]heindrix[/B]
    * Informant : @[B]llinn[/B]


    * WHY DON'T YOU CREATE MAGISK MODULE?
    Well, i just believe the performance will be better to flash the driver directly into its designated directory, rather than mounting it from an image and load it later when booting (which is what is magisk doing). For me, some other things is okay to make it into a magisk module, but not a driver, period.
    22
    Hi guys,

    Long time no updates, in fact, there's an update from the base driver author v330 for Pie.
    But i'm so busy with making universal installer script to support many kinds of qualcomm cpus.
    So i'll just post it after i'm done with the projects.
    Cheers.
    17
    [UPDATE]
    New driver version V331 REV1.

    Details :
    * OpenGL ES driver updated to v331.
    * Vulkan driver still version 1.0.66.
    17
    @heindrix

    First of all, thank you A LOT for this work. I am seeing a lot of people from the Xiaomi Redmi Note 4 (mido) and Mi A1 (tissot) community flooding this thread with useless replies, so I'd advice you to pin this post or add a simple link to this post for msm8953 platform so they know what to download. Both files are personally tested, but backup if you get black screen on pie.

    Installation:
    • READ THE WHOLE OP BEFORE STARTING
    • Download the file for the Android version that you use
    • Go to TWRP recovery
    • Mount system and vendor
    • Flash the file
    • Wipe dalvik and cache
    • Reboot

    Downloads for MSM8953 platform:
    Oreo Treble custom ROMs:
    adreno 5xx - v313 rev23 - treble - OREO.zip

    Pie Treble custom ROMs:
    adreno 5xx - v331 rev1 - treble - PIE.zip
    15
    [UPDATE]

    * Adreno [email protected] REV22
    - update some libs.
    - revert vulkan libs to version 61 (1.0). version 66 (1.1) have blackscreen bugs on dolphin emulator.

    * Adreno [email protected] REV2
    - update some libs and vulkan blobs.
    - revert vulkan libs to version 61 (1.0). version 66 (1.1) have blackscreen bugs on dolphin emulator.
    - no blackscreen on dolphin emulator anymore!


    Alright guys, because i'm too lazy (i admit it) to make so many zip files for so many CPUs, i'll make you guys to do some work before you can flash the driver :
    [INSTRUCTIONS]
    1]. find out what is your CPU model number, you can see it in COMPATIBILITY section, on CPU sub-section. for example, my CPU is Snapdragon 821, so the CPU model number is msm8996.
    2]. download the zip file. rename file in the zip file with name "vulkan.xxx.so" in system/(vendor)/lib/hw and system/(vendor)/lib64/hw to "vulkan.CpuModelNumber.so". for example, for me, i rename "vulkan.xxx.so" to "vulkan.msm8996.so".
    you can use this app to rename the file inside the zip file : https://play.google.com/store/apps/details?id=com.rarlab.rar
    Flash! That's it!
    The instructions has been added to first page.