github The412Banner/Banners-Turnip v26.3.0-20261013-r4
Turnip v26.3.0-20261013-r4

2 hours ago

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

❌ A8xx didn't build this run, so it isn't included.

❌ The Wayland build of A6xx / A7xx 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.

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

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

Mesa
Commit 5983a55
Commit title util/tc: fix buffer over-read and thread race in staging texture_subdata
Vulkan version Vulkan 1.4.363
Date 2026-10-13

Downloads

Driver GPUs X11 / AdrenoTools Bannerlator Wayland Linux runtime
Standard Adreno 6xx / 7xx (8 Gen 3 and older) Turnip-v26.3.0-20261013-r4.zip ❌ not built ❌ not built
A8xx (experimental) Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) ❌ not built ❌ not built ❌ not built
A710 / A720 / A722 (experimental, untested on hardware) Adreno 710 / 720 / 722 Turnip-v26.3.0-20261013-r4-710-720-Test.zip Turnip-v26.3.0-20261013-r4-710-720-Test-Wayland.zip Turnip-v26.3.0-20261013-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-v26.3.0-20261013-r4-8G2-OneUI.zip ❌ not built ❌ not built

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. 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-v26.3.0-20261013-r4.zip e516c3d0f09aa919eed87bba91683723815bb445f3557d27b1a532b365a66dac
Turnip-v26.3.0-20261013-r4-710-720-Test.zip 787e93360192fcd5c775266aedda65374e214e1cf1703b69cb080928505da84d
Turnip-v26.3.0-20261013-r4-710-720-Test-Wayland.zip ee36ab74f0c91208d70b8555113359e4327c94eb848d7f8a1b9ced0ca37e9105
Turnip-v26.3.0-20261013-r4-710-720-Test-Linux.zip 551552215a728f3f74f298a74ee17b21e537e79b6ee352ca4abc922f2f758a86
Turnip-v26.3.0-20261013-r4-8G2-OneUI.zip 6e8080f98b6112266a2697234347fe9d0c75341fd1fe7e5815da927d6394f087

Don't miss a new Banners-Turnip release

NewReleases is sending notifications on new releases.