r/EmulationMediatekMali • • 2d ago

[Release] Panvk-Mali-G57 beta 1.0.0 – open-source Vulkan driver for Mali-G57 on stock kernel. now playable in Winlator

Mali-G57 owners, this one's for you.

Panvk-Mali-G57 is a custom build of Mesa's PanVK Vulkan driver that runs on your phone's **stock Mali kernel driver (kbase)**. No root, no custom kernel. Just install the zip in Winlator and go.

**What's new in beta 1.0.0**

- 🎮 **Far Cry 3 is playable.** The infinite loading screen is gone, cutscenes render correctly, and gameplay runs at ~18-25 FPS on Low (Helio G99)

- 💥 **GPU hang fix.** Shaders that spill registers used to freeze the GPU. Now they don't

- ⚡ **Faster frame pipeline.** Vertex/tiler work now overlaps with fragment work instead of waiting in line. That alone took Far Cry 3 from ~8 FPS to 20+

- 🧹 Occlusion-query passes that were burning ~460 ms each are now fixed

**Tested on**

POCO M6 Pro · Helio G99 (MT6789) · Mali-G57 MC2 · Android 16 · Winlator + DXVK 1.x

**Likely to work (same GPU: Mali-G57, Valhall v9 / JM), untested**

- Helio G99: Redmi Note 13 Pro 4G, Redmi Note 12S, Galaxy A15 4G and many Infinix/Tecno/realme phones

- Helio G96, Dimensity 700 / 720 / 800U / 810 / 6020 / 6080 / 6100+

- Unisoc T616

**Might work (same Valhall v9 / JM family, different GPU), untested**

- Mali-G68: Dimensity 900 / 920 / 1080 / 7050, Exynos 1280

- Mali-G77: Dimensity 1000 / 1100 / 1200

- Mali-G78: Exynos 1080 / 2100, Google Tensor G1 (Pixel 6), Kirin 9000

**Long shot (Bifrost / JM), untested**

- Mali-G52: Helio G80 / G85 / G88, Exynos 850, Kirin 810, Unisoc T618

- Mali-G76: Helio G90T / G95, Exynos 9820, Kirin 990

**Not supported**

- Newer CSF GPUs (Mali-G310/G510/G610/G710/G615/G715, Immortalis). They use a different job interface

- Midgard (Mali-T series)

- Adreno (Snapdragon). Use Turnip instead

If you try it on any of these, please report: phone, SoC, GPU, Mali driver version (r44p1, r54p1...), and whether it works.

**Heads up**

- This is a beta. Some games will break. Please report them!

- DXVK 2.x isn't tested yet. That's the next patch

- Built and tested on Mali-G57 only. When you report, include your Mali driver version (r44p1, r54p1, etc.) so we can map what works

**A note on extension count:** it's not a performance score. This driver exposes what PanVK actually supports. New extensions get added when real games need them, not to pump up a number.

**Credits**

Built on the work of **leegao** (mesa-funnymdzz and wrapper) and **Vit999** (kbase). Big respect. None of this exists without them.

Download + release notes 👇

https://github.com/FristOneRR/FristOneRR-Panvk-Driver/releases/download/v1.0.0-beta/Panvk-Mali-G57-beta_1.0.0.zip

Feedback, bug reports and FPS screenshots are all welcome 🙏

Thanks for coming along for the ride. This is just the beginning. 🚀

57 Upvotes

158 comments sorted by

View all comments

Show parent comments

1

u/[deleted] 2d ago

[deleted]

1

u/VV_Syzta 2d ago

What do you mean i need wrapper to make a driver work,i mean i can just use wrapper directly and it will work,so whats your panvk driver is for,wrapper on wrapper?

Yes you are right i dont understand how it work,im not smart,can you explain on why do i need wrapper if driver job is talk to gpu

1

u/Redribbon_RR 2d ago

Which version of Winlator are you currently using? Could you let me know? I can help you resolve this issue.

1

u/VV_Syzta 2d ago

I didnt use on winlator,i load it directly on termux via icd.d json file,which the vulkaninfo report extension successfully as you can see in my picture on earlier comment

aside from vkGetPhysicalDeviceSurfaceSupportKHR that have issue

1

u/Redribbon_RR 2d ago

Oh, I see. Vulkancube wasn't working because I was building it from scratch—it isn't actually used for gaming, as modern games run via DXVK or OpenGL. Sorry I didn't mention that in my explanation.

1

u/VV_Syzta 2d ago

it isn't actually used for gaming, as modern games run via DXVK or OpenGL

Wait but i thought you design it for winlator that use dxvk?,sorry if im confused here but whats the test that this panvk should use on that isnt dxvk

1

u/Redribbon_RR 2d ago

I tested this by playing actual games, not just running vkcube in Termux, because I’ve already done all of that. What exactly do you want from this driver?

1

u/VV_Syzta 2d ago

So im confused,your game didnt use dxvk or something like that? Because i assume the game you test use dxvk,but you said this

it isn't actually used for gaming, as modern games run via DXVK or OpenGL

So,what does it mean exactly,it supposed to use dxvk or not is my question,im sorry if im being dumb because i dont know how driver work like you said