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

one hour ago

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

Mesa
Commit 2e18987
Commit title lavapipe: fix pipeline cache size return and checks
Vulkan version Vulkan 1.4.366
Date 2026-10-30

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v27.0.0-20261031.zip Turnip-v27.0.0-20261031-Wayland.zip Turnip-v27.0.0-20261031-Linux.zip
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v27.0.0-20261031-A8xx.zip Turnip-v27.0.0-20261031-A8xx-Wayland.zip Turnip-v27.0.0-20261031-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v27.0.0-20261031-710-720-Test.zip Turnip-v27.0.0-20261031-710-720-Test-Wayland.zip Turnip-v27.0.0-20261031-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-8G2-OneUI.zip Turnip-v27.0.0-20261031-8G2-OneUI-Wayland.zip Turnip-v27.0.0-20261031-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.zip df199f1656311bf204f6361171f64db3f1ac9659097d3d4ed216a4c9fbbf7451
Turnip-v27.0.0-20261031-Wayland.zip 7b73b4f09c9584c24470f7efe41517b99882c2a4aeaf16c834bdfcac531904ec
Turnip-v27.0.0-20261031-Linux.zip 51b2d07c9e528ad56232a383d9c57de8f3de4c183295138937dfeb6f13fb9714
Turnip-v27.0.0-20261031-A8xx.zip 8c84ea76b1935f9edc055a4eb320064c322a1a239f75eb39acc968df8cdb728a
Turnip-v27.0.0-20261031-A8xx-Wayland.zip eb8df5fd798e4bc933d3729d2ad22c23ef166519c781a797c1d6eb5d44cb0c56
Turnip-v27.0.0-20261031-A8xx-Linux.zip fcec07f56147fb037d702173cf2bf18b0c75622a96d37494cead72567db03ce0
Turnip-v27.0.0-20261031-710-720-Test.zip 43c3c42b69912058741e926e51d88589db9a5f30713d37b660c0f37a4fff0d9f
Turnip-v27.0.0-20261031-710-720-Test-Wayland.zip b85a36d0115e9a6cefcb38ce02d5d4405c1ec260e959c8704e5f5a916cacb119
Turnip-v27.0.0-20261031-710-720-Test-Linux.zip 7d2d0f829d60a99b0eb90028084b99bb343264830af32d4a8e8af7e647c7b352
Turnip-v27.0.0-20261031-8G2-OneUI.zip f1056abe2b1c439d1b208b9431d1ab22dc5171a8f2f0b01fe6a5ffe4817385a9
Turnip-v27.0.0-20261031-8G2-OneUI-Wayland.zip b9855941366eb8c11b27a8352b587c703a1beb61405d77a24a017c24b654af69
Turnip-v27.0.0-20261031-8G2-OneUI-Linux.zip ad6842a8926806e641b7299abbc5ef046594d776198508b8969e9516255f6394

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.