github The412Banner/Banners-Turnip v27.0.0-20261026-r2
Turnip v27.0.0-20261026-r2

2 hours ago

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

Mesa
Commit 1f0763a
Commit title freedreno/a3xx: honor sampler view targets for buffer blits
Vulkan version Vulkan 1.4.363
Date 2026-10-26

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v27.0.0-20261026-r2.zip Turnip-v27.0.0-20261026-r2-Wayland.zip Turnip-v27.0.0-20261026-r2-Linux.zip
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) Turnip-v27.0.0-20261026-r2-A8xx.zip Turnip-v27.0.0-20261026-r2-A8xx-Wayland.zip Turnip-v27.0.0-20261026-r2-A8xx-Linux.zip
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v27.0.0-20261026-r2-710-720-Test.zip Turnip-v27.0.0-20261026-r2-710-720-Test-Wayland.zip Turnip-v27.0.0-20261026-r2-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-20261026-r2-8G2-OneUI.zip Turnip-v27.0.0-20261026-r2-8G2-OneUI-Wayland.zip Turnip-v27.0.0-20261026-r2-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-20261026-r2.zip f277e68bd985eab870f3e2c4e3c1e5e49e4fa86984d4b9908398476dbd0291cd
Turnip-v27.0.0-20261026-r2-Wayland.zip decb8d6de0a10cd8716bca9a7f8a796ee67f8bc8d0a93130480466632bca89a2
Turnip-v27.0.0-20261026-r2-Linux.zip e44ae0215dc7b84db8b41b4e6b5a6dfd9b037a181987f470dafeec145f12b731
Turnip-v27.0.0-20261026-r2-A8xx.zip 9047da99c4d5d820193ec9b5150b4dceaca0891520c07e0f3a9827a1d6d24e68
Turnip-v27.0.0-20261026-r2-A8xx-Wayland.zip 3b0d10dc40a9a1638de4daff8a3c8e002e9c0cf42f1597687076986ca8961e1d
Turnip-v27.0.0-20261026-r2-A8xx-Linux.zip 55fc93759aeae4e65a06104601471eaee4c826acdb59f00463f8e83403845034
Turnip-v27.0.0-20261026-r2-710-720-Test.zip f2d3f544d93194eb81ce9440e901bd7f66f2ac0d37f9121b014b02bc28087923
Turnip-v27.0.0-20261026-r2-710-720-Test-Wayland.zip ba6c0070695c5e65917dd455d6e7d7abd1f5bc65e32a906909a2474cfe971223
Turnip-v27.0.0-20261026-r2-710-720-Test-Linux.zip 088ac9a83beb9deb85e872e438b01934bc91d0536608876e5bd881ca50197667
Turnip-v27.0.0-20261026-r2-8G2-OneUI.zip ee48f8abfef8f5877f78c5d19ea1125e7a3ffa8b8c43131d93e23aa3e0555a97
Turnip-v27.0.0-20261026-r2-8G2-OneUI-Wayland.zip 353386691b08f874b250efa0b82c1d1894b31e78726ac4338d088a3af8a80665
Turnip-v27.0.0-20261026-r2-8G2-OneUI-Linux.zip d0c479313371b5b4f8677b939d0561b5f1e8e0fd89fac6dfe6a3548d573a417e

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.