AMD QDMA PCIe DMA engine for UltraScale+ and Versal FPGAs
A high-performance DMA engine built into AMD's (formerly Xilinx) Kintex UltraScale+, Virtex UltraScale+, Zynq UltraScale+, and Versal CPM4/CPM5 FPGA and adaptive SoC families, used to move data between host memory and custom FPGA logic over PCIe in embedded, networking, and accelerator designs.
recommendation
It should stay in the kernel because it is a brand-new driver, merged in August 2024 and already receiving maintenance fixes, for an FPGA DMA block that AMD still actively sells and documents in 2025. Deployments are inherently niche (custom FPGA designs rather than mass-market hardware), but there is no alternative in-tree driver for the same IP, so keeping it is the only sensible option.
repository signals
sources
- git.kernel.org
Driver was added to mainline in August 2024, so it is a very new upstream driver rather than legacy baggage.
- git.kernel.org
The driver received a functional maintenance fix in September 2024, indicating real post-merge upkeep.
- amd.com
AMD still markets QDMA as a current IP product for Kintex UltraScale+, Virtex UltraScale+, and Zynq UltraScale+ device families.
- docs.amd.com
AMD published current QDMA product-guide documentation in late 2025 for Versal CPM4/CPM5 flows, showing ongoing product relevance.
- cateee.net
LKDDb shows CONFIG_AMD_QDMA present only from kernel 6.12 onward and identifies it as platform device "amd-qdma".
codex reasoning notes (technical)
No early exit: this directory contains a real module_platform_driver implementation. Upstream activity was checked via local `rg` and `git -c safe.directory=... log` because `lei` was unavailable; those commands showed the 2024 add and 2024 follow-up fixes, with no sign of an old orphaned driver. External deployment evidence came from web search results for the AMD product page, AMD product-guide docs, and LKDDb. The hardware is specialized FPGA/SoC IP, so deployments are likely niche but current; there is no natural in-tree replacement for the same QDMA block, so removal/deprecation is not justified.