No description
Find a file
2025-07-30 22:41:00 +08:00
README.md Aggiorna README.md 2025-07-30 22:41:00 +08:00

Mesa & Mali drivers Debian 12

link originale

Hey everyone, for the past couple of days I've been looking into the Mesa-VPU script made by AmazingFate that's used to patch Mesa/VPU onto a custom build of Armbian. https://github.com/armbian/build/blob/main/extensions/mesa-vpu.sh

I already have an install of Armbian (Debian XFCE 6.12.28-current-rockchip64 ) on my Rock5b and was looking into applying as much as I can without re-building an image or starting from scratch.

From my understanding, You'd need the vendor rk3588 kernel if you want the best possible compatibility with things like the VPU for multimedia acceleration (Someone please correct me if this is not the case lol)

What follows is what I was able to piece together after troubleshooting, reading the Mesa changelog & trying to apply as many packages as I can from AmazingFate's kernel extension script. I've also included some tweaks for XFCE to hopefully provide a smooth graphical experience.

Although my Rock5b is used as a headless server and doesnt have anything plugged into the HDMI port, I can say that the following changes have made a huge difference in graphical performance of VNC.

Please keep in mind that i'm not a developer for Armbian. I just wanted to share this as a guide i've put together to hopefully help someone else who's tried the same (Please let me know your thoughts or if there was anything i've missed. Like I said, this is what has worked for me) (Obviously the correct fix is to rebuild Armbian with Mesa-VPU. What follows was done as an experiment)

GUIDE BELOW. THIS IS NOT A SHELL SCRIPT! PLEASE READ AND DO NOT COPY/PASTE ENTIRETY INTO TERMINAL

-- 01 Setup AmazingFate Panfork-Mesa repo for mali-g610-firmware 01

1A: import gpg key and use it to sign repo

wget -qO - https://download.opensuse.org/repositories/home:/amazingfate:/panfork-mesa/Debian_12/Release.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/panfork-mesa.gpg

1B: Add Repo to apt sources & update

echo "deb https://download.opensuse.org/repositories/home:/amazingfate:/panfork-mesa/Debian_12/ /" | sudo tee /etc/apt/sources.list.d/panfork-mesa.list
sudo apt update

1C: Install firmware

sudo apt install mali-g610-firmware libmali-g610-x11
sudo rm -rf /etc/apt/sources.list.d/panfork-mesa.list
sudo rm -rf /etc/apt/trusted.gpg.d/panfork-mesa.gpg

-- 02 Enable Debian Experimental Repo for recent Mesa Packages 02 --

sudo nano /etc/apt/sources.list

2A: Add the following to the bottom of the document...

deb http://deb.debian.org/debian unstable main contrib non-free
deb http://deb.debian.org/debian experimental main

2B: Update and install Mesa Packages

sudo apt update
sudo apt install -t experimental mesa-vulkan-drivers mesa-utils libgl1-mesa-dri libglx-mesa0 mesa-vdpau-drivers mesa-va-drivers mesa-opencl-icd mesa-libgallium
sudo nano /etc/apt/sources.list

Remove the following and update apt...#

deb http://deb.debian.org/debian unstable main contrib non-free
deb http://deb.debian.org/debian experimental main

sudo apt update

-- 03 Add rockchip-multimedia Ubuntu Repo to Apt 03 --

echo "deb [arch=arm64] https://ppa.launchpadcontent.net/liujianfeng1994/rockchip-multimedia/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/rockchip-multimedia.list

3A: Download Key and add convert to gpg

curl -o rockchip-multimedia.asc "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x8065BE1FC67AABDE"
gpg --dearmor rockchip-multimedia.asc
sudo mv rockchip-multimedia.asc.gpg /etc/apt/keyrings/rockchip-multimedia.gpg

3B: Add PPA Repo and update

echo "deb [arch=arm64 signed-by=/etc/apt/keyrings/rockchip-multimedia.gpg] https://ppa.launchpadcontent.net/liujianfeng1994/rockchip-multimedia/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/rockchip-multimedia.list
sudo apt update

3C: Install packages

sudo apt install libv4l-rkmpp chromium gstreamer1.0-rockchip1 rockchip-multimedia-config

3D: OPTIONAL : Disable rockchip-multimedia PPA repo

sudo mv /etc/apt/sources.list.d/rockchip-multimedia.list /etc/apt/sources.list.d/rockchip-multimedia.list.disabled
sudo apt update

-- 04 Optimize XFCE/Xorg and Reboot 04 --

4A: Open default xorg config

sudo nano /etc/X11/xorg.conf.d/01-armbian-defaults.conf

Add the following...

Section "Device"
   Identifier "Mali-G610"
   Driver "modesetting"
   Option "DRI" "3"               # Required for Mali GPUs
   Option "GALLIUM_DRIVER" "panfrost"
   Option "PageFlip" "on"          # Reduces tearing
   Option "TearFree" "true"        # Xfce-specific anti-tearing
EndSection

4B: Add XFCE Specific tweaks

sudo nano /etc/X11/xorg.conf.d/20-xfce-tweaks.conf

Add the following...

Section "Extensions"
   Option "COMPOSITE" "Enable"
EndSection

Section "ServerFlags"
   Option "AutoAddGPU" "off"  # Prevents duplicate GPU detection
EndSection    

4C: Reboot

sudo reboot now