mirror of
https://github.com/termux/termux-packages.git
synced 2025-10-24 12:14:10 +00:00
- Fixes https://github.com/termux/termux-packages/issues/26526 - Fixes https://github.com/termux/termux-packages/issues/25371 - All patches seemed to only need minor rebasing and no other errors - Tested working on Samsung Galaxy S9 SM-G960U with Adreno 630 - Add unofficial Adreno 710+720 support found here https://gitlab.freedesktop.org/mesa/mesa/-/issues/13036 and heredb9f6d0b31- After3294cad341, a new change is required in order to preserve GPU acceleration in the edge case of **EGL+Zink+Turnip+Termux:X11+Adreno 630**. I have named this change `0018-preserve-egl-support-in-zink.patch` and it is an original creation based on my ~2 years of experience developing EGL software for running inside Termux:X11 on Samsung Galaxy S9 SM-G96U with Adreno 630. **Unfortunately, I do not know what the effects of this patch will be on other devices that I do not have, so please tell me ASAP if it appears to break Zink on your device**. - After622612f67e, the default behavior of Zink is to enable the "general layout" mode whenever Turnip is detected. In testing in Termux:X11 on Samsung Galaxy A70 SM-A705FN, that change is incorrect and results in severe artifacts in Firefox when Firefox has `gfx.webrender.all=true` and `gfx.x11-egl.force-disabled=true` set in `about:config`, so `0019-disable-general-layout-in-zink-for-turnip.patch` must be created to forcibly stop Zink from enabling "general layout" mode when Turnip is detected.
23 lines
1.1 KiB
Diff
23 lines
1.1 KiB
Diff
Partially reverts https://gitlab.freedesktop.org/mesa/mesa/-/commit/622612f67ea72298c3d85dfe53c5d54ee9f98527
|
|
because that commit causes severe artifacts in Webrender in Firefox in Termux:X11 with GLX enabled and EGL
|
|
force-disabled in Zink in Turnip on Adreno devices, while using the about:config settings
|
|
gfx.webrender.all=true and gfx.x11-egl.force-disabled=true,
|
|
and doing this prevents the artifacts from occurring.
|
|
|
|
--- a/src/gallium/drivers/zink/zink_screen.c
|
|
+++ b/src/gallium/drivers/zink/zink_screen.c
|
|
@@ -3044,10 +3044,12 @@ init_driver_workarounds(struct zink_screen *screen)
|
|
case VK_DRIVER_ID_MESA_LLVMPIPE:
|
|
case VK_DRIVER_ID_MESA_NVK:
|
|
case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
|
|
- case VK_DRIVER_ID_MESA_TURNIP:
|
|
case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
|
|
screen->driver_workarounds.general_layout = true;
|
|
break;
|
|
+ case VK_DRIVER_ID_MESA_TURNIP:
|
|
+ screen->driver_workarounds.general_layout = false;
|
|
+ break;
|
|
default:
|
|
screen->driver_workarounds.general_layout = screen->info.have_KHR_unified_image_layouts;
|
|
break;
|