Qualcomm Snapdragon X2 Elite Gains Initial Linux GPU Driver Support
Qualcomm has recently introduced the Snapdragon X2 Elite and X2 Elite Extreme, both of which are demonstrating impressive CPU and GPU benchmark results. However, until now, there has been limited information regarding Linux compatibility for these new chipsets. A recent development in the open-source community marks a significant step forward: a Linux driver patch has been submitted to begin adding support for the Qualcomm Snapdragon 800 series GPUs, specifically those found in the X2 Elite SoC, to the open-source Qualcomm MSM Direct Rendering Management (DRM) driver.
Advancements in Open Source GPU Driver Support
The submitted patch addresses several key changes required to support the new slice-based architecture of the Adreno 800 series GPUs. This architecture introduces "slices," which function as semi-independent mini-GPUs within the main GPU, enhancing the processing of graphics and compute workloads. The update also includes modifications to accommodate higher current draw and implements necessary thermal mitigation strategies, ensuring stable performance under demanding conditions.
From a kernel-mode driver and hardware software interface perspective, the patch involves significant register reorganization in certain hardware blocks. For registers related to slices or apertures, which are now virtualized, the kernel-mode driver and crashdumper must configure an aperture register to access them. Additionally, there are manageable changes in register offsets on the Graphics Management Unit (GMU) side, along with a new Host Firmware Interface (HFI) message to transfer data tables and support for new power management features.
Adreno 840 GPU: Next-Generation Architecture
The Adreno 840 GPU, part of the A8x family and featured in the Snapdragon 8 Elite Gen 5 (codenamed Kaanapali), represents the second generation of this architecture. It supports up to three slices, each with two shader processors, and is available in both three-slice and two-slice configurations. The A840 GPU is equipped with an expanded 18 MB of GMEM, which can be leveraged for both graphics and compute tasks. Additional enhancements include improved concurrent binning support and the latest version of Universal Bandwidth Compression (UBWC v6).
The current patch series focuses on driver-side support and includes updates to device tree bindings. While device tree patches will be released separately, interested developers can review them in Qualcomm's public repository. Features such as coredump, advanced GMU power management, idle frame power collapse (IFPC), and preemption are planned for future updates.
Ongoing Development for Mesa and Vulkan Support
The development team has confirmed that support for Mesa and Vulkan on the Adreno 840 and other 800 series Arm GPUs is actively in progress and will be released in the near future. For context, the previous Snapdragon X Elite platform received significant driver updates as recently as July 2025. As a result, while Linux driver support for the Snapdragon X2 Elite and X2 Elite Extreme is advancing, it may take some time before these platforms achieve full feature parity with x86 systems on Linux.
The initial patches in this series are designed to improve code sharing between the a6xx, a7xx, and a8x routines, followed by updates to GMU register offsets and the addition of A8x hardware layer and Adreno 840 GPU support. As development continues, further enhancements and broader compatibility are expected, paving the way for robust Linux support on Qualcomm's latest Snapdragon platforms.