github The412Banner/Banners-Turnip v26.3.0-20261001
Turnip v26.3.0-20261001

one hour ago

⚠️ Automated build from Mesa main: checked by CI, not tested on a device.

Mesa
Commit 9ac80d5
Commit title ir3: Unify disk shader cache serialization/deserialization
Vulkan version Vulkan 1.4.363
Date 2026-09-30

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v26.3.0-20261001.zip Turnip-v26.3.0-20261001-Wayland.zip Turnip-v26.3.0-20261001-Linux.zip
A8xx (experimental) Adreno 810 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v26.3.0-20261001-A8xx.zip Turnip-v26.3.0-20261001-A8xx-Wayland.zip Turnip-v26.3.0-20261001-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v26.3.0-20261001-710-720-Test.zip Turnip-v26.3.0-20261001-710-720-Test-Wayland.zip Turnip-v26.3.0-20261001-710-720-Test-Linux.zip
8 Gen 2 One UI Adreno 740 (8 Gen 2) with UI flicker, e.g. Samsung One UI Turnip-v26.3.0-20261001-8G2-OneUI.zip Turnip-v26.3.0-20261001-8G2-OneUI-Wayland.zip Turnip-v26.3.0-20261001-8G2-OneUI-Linux.zip

Which one?

  • X11 (Bannerlator, Winlator, BannerHub, any AdrenoTools app): import the normal zip as a GPU driver. Not sure which driver? Use Standard.
  • Bannerlator Wayland containers: Import Wayland game driver (.zip), then pick the -Wayland zip.
  • Bannerlator Linux runtime (gamescope + the native ARM64 Steam client): the -Linux zip. It is a glibc Vulkan ICD and it is what draws the client and every game the client launches (needs glibc 2.38 or newer). It is not an AdrenoTools driver and it does not load in a Wine container; the Android zip still puts the finished frame on the screen.

Tips: A8xx: TU_DEBUG=sysmem if an A830 looks glitchy, TU_DEBUG=deck_emu if a game won't start. A710 / A720 / A722: TU_DEBUG=sysmem (in Winlator also WRAPPER_BLIT=1). 8 Gen 2 One UI: only if the Standard driver makes the phone's UI glitch or flicker; on other 8 Gen 2 devices it causes that glitch. The same switch without changing driver: FD_DEV_FEATURES=enable_tp_ubwc_flag_hint=1.

🩹 Fixes in every driver (bugs still in Mesa main; every zip carries them, see SOURCE):

  • DirectX 12 no longer waits on the GPU every frame (kgsl-zero-timeout-poll.patch). A quick "is the GPU done yet?" check was sent to the kernel as "wait until it's done", so the CPU and GPU took turns with VKD3D-Proton. Now it answers at once. On an Adreno 750, a DirectX 12 demo went from 378 to 1422 fps on X11 and from 588 to 3449 fps on Wayland (report).
  • No crash when a frame waits on two kinds of sync at once (kgsl-syncobj-merge-ts-fd.patch). Cemu crashed on its first frame; proven fixed with Cemu, RPCS3 and Dolphin.

🧩 A8xx driver only: Max's WinNative series (MaxsTechReview, 0001-tu-Emulate-VK_EXT_mesh_shader-with-compute.patch … 0006-tu-kgsl-Cache-retired-A8XX-IB-storage.patch). The A6xx / A7xx drivers carry only the fixes above.

  • DirectX 12 Ultimate: mesh shaders + wave32 (0001, 0002). VK_EXT_mesh_shader is emulated with compute, so VKD3D-Proton can offer mesh shaders to games that need them (FINAL FANTASY VII REBIRTH, Alan Wake 2); render passes with mesh draws run in sysmem.
  • Four Adreno 8xx GPU hang fixes (0003-0006): cube-map directions, bindless descriptors, command-stream memory and its reuse (TU_KGSL_IB_CACHE=false turns off the last one).
Build details and checksums
  • Standard: Mesa main plus the fixes in every driver, no GPU-specific patches, no mesh shaders or wave32.
  • A8xx: whitebelyash's turnip/gen8 stack (a8xx_gen8.patch, 12 commits) + a8xx_shared_mem.py, a840v2.py.
  • A710 / A720 / A722: a710-720.py from Vauzi-17/710.
  • 8 Gen 2 One UI: Standard plus 8g2_oneui.py: enable_tp_ubwc_flag_hint on for the Adreno 740 (Mesa leaves it off to match the older system driver).
  • Wayland zips: the same commit and patches, built as Linux-style Vulkan drivers (KGSL, Wayland, bionic) with Bannerlator's zero-copy patch. CI checks each one before it is attached. They don't load as AdrenoTools drivers, and the X11 zips don't work as Wayland game drivers.
  • Linux zips: the same commit and patches, cross-built against glibc (KGSL, Wayland + X11 WSI) for Bannerlator's Arch Linux ARM runtime, plus the two KGSL fixes that runtime needs kgsl-drm-node.patch and kgsl-no-calibrated-timestamps.patch. They ship the ICD and its manifest only: the libraries are the runtime's own. CI checks each one.
File SHA-256
Turnip-v26.3.0-20261001.zip fb9a70ac24080691e0a62e72f9c27f663a22305b8fce1bbc2fb677e65f0d9845
Turnip-v26.3.0-20261001-Wayland.zip 1a836537ee4c3e003dfb862ee5e3c17ede743074acd4dfa5a6e650e21d2bec7d
Turnip-v26.3.0-20261001-Linux.zip 061a912496cf29e9d946fa892a50dab392dcdb37a52da7ea6235201b9f9bf0e7
Turnip-v26.3.0-20261001-A8xx.zip 51eb766a88ce9c23be9746dcf6ab524ccb5a488d2f256a295cfe77394d977406
Turnip-v26.3.0-20261001-A8xx-Wayland.zip 7bf550857d9087234312f1cd278d1129c95ad8dc0435f0c176db606e315fb6b4
Turnip-v26.3.0-20261001-A8xx-Linux.zip 5db61c689083e21bbf0fedf7a400549cd20a4ecbe9061fdd18c6ecdcf7328828
Turnip-v26.3.0-20261001-710-720-Test.zip 6d0d282c44493589170f7a13abdf9155d158d418c0553440f330136becfd5593
Turnip-v26.3.0-20261001-710-720-Test-Wayland.zip 9880a67b07608ae044d7f92f54eb292bc3eeb15a77d3c11c797fb08a62356b4a
Turnip-v26.3.0-20261001-710-720-Test-Linux.zip 06ea01773723e7fa33921bb7a2c44d9ab93275bd2a26ed652e37ed868dc42432
Turnip-v26.3.0-20261001-8G2-OneUI.zip c86b029b58a682f8376f381df23f2dbe215787d2a161d6ac3cf3f592dcbe2505
Turnip-v26.3.0-20261001-8G2-OneUI-Wayland.zip c1d71f3ec98db59bfbc9c8d0c539c2473a6e453ea0f2970045d8afafa5a295ea
Turnip-v26.3.0-20261001-8G2-OneUI-Linux.zip 73446939af0e3febf3baa46a452a5d7a629bcbe2a351c1308aa707863c434add

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.