github The412Banner/Banners-Turnip v27.0.0-20261103-r3
Turnip v27.0.0-20261103-r3

one hour ago

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

❌ The Wayland build of A6xx / A7xx didn't build this run. Its X11 zip is fine.

❌ The Wayland build of A8xx didn't build this run. Its X11 zip is fine.

❌ The Wayland build of A710 / A720 / A722 didn't build this run. Its X11 zip is fine.

❌ The Wayland build of 8 Gen 2 One UI didn't build this run. Its X11 zip is fine.

Mesa
Commit 1f9c4d5
Commit title freedreno : Take only in fence as a hint for explicit sync
Vulkan version Vulkan 1.4.367
Date 2026-11-03

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v27.0.0-20261103-r3.zip ❌ not built Turnip-v27.0.0-20261103-r3-Linux.zip
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v27.0.0-20261103-r3-A8xx.zip ❌ not built Turnip-v27.0.0-20261103-r3-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v27.0.0-20261103-r3-710-720-Test.zip ❌ not built Turnip-v27.0.0-20261103-r3-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-20261103-r3-8G2-OneUI.zip ❌ not built Turnip-v27.0.0-20261103-r3-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-20261103-r3.zip a8ce1f0b9c332adbca20816b9ebf370e92d076b2c5fc7806afa44c6413830476
Turnip-v27.0.0-20261103-r3-Linux.zip cf02823b53038d500d4f966dcb58885c5e18c196640bea427b1d64dca34e21fa
Turnip-v27.0.0-20261103-r3-A8xx.zip 993c129a3a52c62b43a78540bfe3f1c7d8132a185d391261d8070fbd8211bd8b
Turnip-v27.0.0-20261103-r3-A8xx-Linux.zip e935ed4c2e06951d217415a888f22eb9f512a904b544682480a714b04e9fac14
Turnip-v27.0.0-20261103-r3-710-720-Test.zip 961a5cffc4de0c726735ddca7d73207a58d0bb127a00affee1ad46ba7401c6de
Turnip-v27.0.0-20261103-r3-710-720-Test-Linux.zip 9029b1675367453e6dcc43e227cab02bc7a4686c9206b40cd28b742bc0f7d7ac
Turnip-v27.0.0-20261103-r3-8G2-OneUI.zip 5cd9e7f02035af174d3500754ed1dbad30c71566b0a28445c4b102a64dca43e9
Turnip-v27.0.0-20261103-r3-8G2-OneUI-Linux.zip dbbc19e414d73c19710938e09e7b31d22f1992ce671a8179a5615980a664f1ee

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.