Hisilicon Kirin 980 Driver
The Ultimate Guide to Hisilicon Kirin 980 Drivers: Installation, Troubleshooting, and Performance Optimization
Issue 1: Graphic Glitches in Games
- Cause: Outdated Mali driver or corrupted shader cache.
- Fix: Clear cache via Recovery Mode → Wipe cache partition. If persistent, update to the latest HarmonyOS, which includes a newer
mali_kbase.ko.
Part 3: How to Download and Install Kirin 980 Drivers (Windows)
Since Huawei does not provide an official "Kirin 980 Driver Pack" on their consumer website, here is the correct method for the most common task: USB/ADB connectivity.
The GPU Driver Dilemma: Mali Midgard/Bifrost
The most visible "driver" for end-users is the GPU driver. The Kirin 980 uses the Mali-G76, which falls under ARM’s Bifrost architecture. ARM provides two types of Mali drivers: hisilicon kirin 980 driver
- Panfrost (Open Source): The reverse-engineered, mainlined Linux kernel driver. It lives in
drivers/gpu/drm/panfrost/in the Linux kernel. - Mali r-series (Proprietary): ARM’s official binary blob, used by Huawei in EMUI.
The Panfrost Situation: As of Linux kernel 6.8+, Panfrost has experimental support for the Mali-G76. However, due to the Kirin 980’s unique clocking, power management, and the MP10 configuration (10 cores vs the standard 6 or 8), Panfrost is unstable. Users attempting to run mainline Linux on a Kirin 980 device (e.g., the Huawei P30 Pro) report graphical corruption and GPU hangs. The proprietary ARM driver is still required for any serious 3D acceleration. The Ultimate Guide to Hisilicon Kirin 980 Drivers:
For Embedded Systems / Linux Integration
If you are using a development board with a Kirin 980 (rare, usually restricted to Huawei partners): Cause: Outdated Mali driver or corrupted shader cache
- Mainline Linux: Kernel 5.x and 6.x have increasing support for HiSilicon boards, but the Kirin 980 specifically relies heavily on the HiKey board support packages.
- Graphics: Running Linux desktop on Kirin 980 requires the Panfrost driver (an open-source reverse-engineered driver for Mali GPUs). While functional, it lacks the performance of the proprietary ARM driver.
Part 6: Performance Optimization Using Drivers
If you have successfully installed custom drivers (e.g., on a rooted device or Windows ARM), here is how to benchmark the improvement.
2. Custom ROM Flashing (LineageOS / GSI)
When installing a Generic System Image (GSI) on a Kirin 980 device, you often lose hardware acceleration because the new OS lacks the proprietary drivers. You need to extract the vendor.img drivers from the stock EMUI ROM.