mirror of
				https://github.com/termux/termux-packages.git
				synced 2025-10-30 23:26:06 +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.
		
			
				
	
	
		
			72 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| Created by, or sourced from, K11MCH1
 | |
| https://github.com/K11MCH1/freedreno_turnip-CI/commit/db9f6d0b31bbabe3fef22e3682015764cd73eb5e
 | |
| Adreno 710-only variant also discovered in KreitinnSoftware's repo here:
 | |
| https://github.com/KreitinnSoftware/MiceWine-RootFS-Generator/commit/6e9d54ab5d280821922c1e8a7a02d84ba1621cbc
 | |
| Upstream issue:
 | |
| https://gitlab.freedesktop.org/mesa/mesa/-/issues/13036
 | |
| 
 | |
| --- a/src/freedreno/common/freedreno_devices.py
 | |
| +++ b/src/freedreno/common/freedreno_devices.py
 | |
| @@ -1065,6 +1065,42 @@ add_gpus([
 | |
|          raw_magic_regs = a730_raw_magic_regs,
 | |
|      ))
 | |
|  
 | |
| +add_gpus([
 | |
| +        GPUId(chip_id=0x07010000, name="FD710"), # KGSL, no speedbin data
 | |
| +        GPUId(chip_id=0xffff07010000, name="FD710"), # Default no-speedbin fallback
 | |
| +    ], A6xxGPUInfo(
 | |
| +        CHIP.A7XX,
 | |
| +        [a7xx_base, a7xx_gen1],
 | |
| +        num_ccu = 4,
 | |
| +        tile_align_w = 64,
 | |
| +        tile_align_h = 32,
 | |
| +        num_vsc_pipes = 32,
 | |
| +        cs_shared_mem_size = 32 * 1024,
 | |
| +        wave_granularity = 2,
 | |
| +        fibers_per_sp = 128 * 2 * 16,
 | |
| +        highest_bank_bit = 16,
 | |
| +        magic_regs = a730_magic_regs,
 | |
| +        raw_magic_regs = a730_raw_magic_regs,
 | |
| +    ))
 | |
| +
 | |
| +add_gpus([
 | |
| +        GPUId(chip_id=0x43020000, name="FD720"), # KGSL, no speedbin data
 | |
| +        GPUId(chip_id=0xffff043020000, name="FD720"), # Default no-speedbin fallback
 | |
| +    ], A6xxGPUInfo(
 | |
| +        CHIP.A7XX,
 | |
| +        [a7xx_base, a7xx_gen1],
 | |
| +        num_ccu = 4,
 | |
| +        tile_align_w = 64,
 | |
| +        tile_align_h = 32,
 | |
| +        num_vsc_pipes = 32,
 | |
| +        cs_shared_mem_size = 32 * 1024,
 | |
| +        wave_granularity = 2,
 | |
| +        fibers_per_sp = 128 * 2 * 16,
 | |
| +        highest_bank_bit = 16,
 | |
| +        magic_regs = a730_magic_regs,
 | |
| +        raw_magic_regs = a730_raw_magic_regs,
 | |
| +    ))
 | |
| +
 | |
|  add_gpus([
 | |
|          GPUId(chip_id=0x07030001, name="FD730"), # KGSL, no speedbin data
 | |
|          GPUId(chip_id=0xffff07030001, name="FD730"), # Default no-speedbin fallback
 | |
| --- a/src/freedreno/drm-shim/freedreno_noop.c
 | |
| +++ b/src/freedreno/drm-shim/freedreno_noop.c
 | |
| @@ -237,6 +237,16 @@ static const struct msm_device_info device_infos[] = {
 | |
|        .chip_id = CHIPID(6, 6, 0, 0xff),
 | |
|        .gmem_size = 1024 * 1024 + 512 * 1024,
 | |
|     },
 | |
| +   {
 | |
| +      .gpu_id = 710
 | |
| +      .chip_id = 0x07010000,
 | |
| +      .gmem_size = 2 * 1024 * 1024,
 | |
| +   },
 | |
| +   {
 | |
| +      .gpu_id = 720
 | |
| +      .chip_id = 0x43020000,
 | |
| +      .gmem_size = 2 * 1024 * 1024,
 | |
| +   },
 | |
|     {
 | |
|        .gpu_id = 730,
 | |
|        .chip_id = 0x07030001,
 |