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

2 hours ago

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

Mesa
Commit 05cf21b
Commit title kraid/validate: Ensure all swizzles are legal after legalize_src_swizzles
Vulkan version Vulkan 1.4.363
Date 2026-10-28

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v27.0.0-20261028.zip Turnip-v27.0.0-20261028-Wayland.zip Turnip-v27.0.0-20261028-Linux.zip
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v27.0.0-20261028-A8xx.zip Turnip-v27.0.0-20261028-A8xx-Wayland.zip Turnip-v27.0.0-20261028-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v27.0.0-20261028-710-720-Test.zip Turnip-v27.0.0-20261028-710-720-Test-Wayland.zip Turnip-v27.0.0-20261028-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-20261028-8G2-OneUI.zip Turnip-v27.0.0-20261028-8G2-OneUI-Wayland.zip Turnip-v27.0.0-20261028-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-20261028.zip 37775fc673c81d7c1cd34a1b58d96e6989e4801ab959c6c6f67db176f8d23c72
Turnip-v27.0.0-20261028-Wayland.zip 770cde54a07cc3dc4ecd21d61603a3f77c07dac1edeec767285ec61c2c40f874
Turnip-v27.0.0-20261028-Linux.zip a360103b57a66a41ecf7816b762c9d5b1132ad5bfd10c00edc4ccd19e842f111
Turnip-v27.0.0-20261028-A8xx.zip aa52df3ddcafb185152cc52e289a067b294a9354b6a52f4ebe7df512de784556
Turnip-v27.0.0-20261028-A8xx-Wayland.zip 7deca2cf5c49a8571fd046f6fdaf52459308b18da1b3a2066512bbe25f4aa127
Turnip-v27.0.0-20261028-A8xx-Linux.zip 3fea12cb6fd53d43f46825664f5ad23832ba04697c7d317f1aa1ffc6156998dd
Turnip-v27.0.0-20261028-710-720-Test.zip 9f15ace5e6c14bf43e8bc42b1d53aa9071c9b12822b6c38b1b84fb10aa9de3f0
Turnip-v27.0.0-20261028-710-720-Test-Wayland.zip c3a906158f3e5d26b2bf0dd9446ec340655d7088eb828d45af95c907155643f5
Turnip-v27.0.0-20261028-710-720-Test-Linux.zip 8a7121be932ada9a452a0162f6c2d717c6571c17866b2365865228f958105c24
Turnip-v27.0.0-20261028-8G2-OneUI.zip fbfc8a0901c20b0475a9d5d2cead22b006a15e7dd86ced83512045e35f7974f5
Turnip-v27.0.0-20261028-8G2-OneUI-Wayland.zip f6b6e58d1035c5ae5ad766ed48a83fffa9d2dd45b7b0493ea63838054bbbed07
Turnip-v27.0.0-20261028-8G2-OneUI-Linux.zip 737640180c7e2a0c93b558a452e8ad972298e29ae8b1ee73205132ce17168411

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.