github The412Banner/Banners-Turnip v27.0.0-20261031-r4
Turnip v27.0.0-20261031-r4

3 hours ago

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

Mesa
Commit cb0e786
Commit title nak: Always apply opt_fall_through
Vulkan version Vulkan 1.4.366
Date 2026-10-31

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v27.0.0-20261031-r4.zip Turnip-v27.0.0-20261031-r4-Wayland.zip Turnip-v27.0.0-20261031-r4-Linux.zip
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v27.0.0-20261031-r4-A8xx.zip Turnip-v27.0.0-20261031-r4-A8xx-Wayland.zip Turnip-v27.0.0-20261031-r4-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v27.0.0-20261031-r4-710-720-Test.zip Turnip-v27.0.0-20261031-r4-710-720-Test-Wayland.zip Turnip-v27.0.0-20261031-r4-710-720-Test-Linux.zip
8 Gen 2 One UI Adreno 740 (8 Gen 2) with UI flicker, e.g. Samsung One UI Turnip-v27.0.0-20261031-r4-8G2-OneUI.zip Turnip-v27.0.0-20261031-r4-8G2-OneUI-Wayland.zip Turnip-v27.0.0-20261031-r4-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 (both found here, both now in Mesa main since MR 44838, 2026-10-08; see SOURCE):

  • DirectX 12 no longer waits on the GPU every frame. 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). Mesa credits The412Banner for the find.
  • No crash when a frame waits on two kinds of sync at once. 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 … 0005-tu-kgsl-Fetch-A8XX-command-streams-through-a-virtual.patch). The A6xx / A7xx drivers carry no patches: both fixes above come from Mesa itself.

  • 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.
  • Three Adreno 8xx GPU hang fixes (0003-0005): cube-map directions, bindless descriptors, command-stream memory. Max's IB cache (0006) is left out: it broke the Linux driver on some Adreno 840s.
Build details and checksums
  • Standard: Mesa main as is (both fixes above are in Mesa now), no GPU-specific patches, no mesh shaders or wave32.
  • A8xx: whitebelyash's turnip/gen8 stack (a8xx_gen8.patch, 14 commits) + a8xx_shared_mem.py.
  • A710 / A720 / A722: A710 and A720 come from Mesa main itself (upstream since September 2026). a710-720.py swaps Mesa's A730-based A722 entry for Vauzi-17/710's hardware-captured A722 registers (num_ccu = 2), and 01-u_gralloc-always-use-ubwc-detection.patch is the UBWC fix from Vauzi-17/710's own releases.
  • 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-v27.0.0-20261031-r4.zip c96e3383b8477ea0ca93e22a94e8aa27175e6a0deca9901ee7a11a4a17af113b
Turnip-v27.0.0-20261031-r4-Wayland.zip bb908628eeba8623b281c16d8fed2140bf6fa33d1d0484d51b73395f2dfce188
Turnip-v27.0.0-20261031-r4-Linux.zip 2c8ca87bed181cdf8ac7da03b6de8055da47f28d30c84410b74824bff9a25cdc
Turnip-v27.0.0-20261031-r4-A8xx.zip ca9641063af6bf1ffd95822a0b78c7e5d48672c8981c4f2f2ee03c7685131796
Turnip-v27.0.0-20261031-r4-A8xx-Wayland.zip 5b427005500c2e02507eb2a6286ede56ac1fb9afce44071d7fc9d011c6cf30bc
Turnip-v27.0.0-20261031-r4-A8xx-Linux.zip 04ae7f91df6ca6f7abb9516af481888b1709eb048feaa1d352de5474a784ef40
Turnip-v27.0.0-20261031-r4-710-720-Test.zip 11305c01e2f01c5108b7bc7006fd7af00a0ed47680f4de49f93ce5fcd39e9cea
Turnip-v27.0.0-20261031-r4-710-720-Test-Wayland.zip a8cfe161dfaeff891dd2d50b4f12dca1165da72232a77d1cf7bbee9b7b7c3098
Turnip-v27.0.0-20261031-r4-710-720-Test-Linux.zip ad83b2baf2a1878710e9e86c32dfe1ed8477089593be44cef9e6cd9c6fe1d93e
Turnip-v27.0.0-20261031-r4-8G2-OneUI.zip d8c41543f1ee6564a091ae773622fbda0583079e013ed178f2681b9f3913b1cc
Turnip-v27.0.0-20261031-r4-8G2-OneUI-Wayland.zip 6121b362db5e644141473599ddfb50eb62743c37f8e86c839f62f3a5b98e32ce
Turnip-v27.0.0-20261031-r4-8G2-OneUI-Linux.zip 5caf1cf76ce1d525283f3eeb7e53732ac86627422b70c3d19be3a3113a4a5e51

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.