[Deepin-Kernel-SIG] [linux 6.18.y] [FROMLIST] dmaengine: qcom: gpi: set DMA_PRIVATE capability#1807
Conversation
The GPI DMA controller is only responsible for QUP peripherals, and cannot work as a general-purpose DMA accelerator. Set DMA_PRIVATE capability for it. This fixes error messages about GPI being shown when an async-tx consumer is loaded. Fixes: 5d0c353 ("dmaengine: qcom: Add GPI dma driver") Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn> Link: https://lore.kernel.org/all/20260602070344.3707256-1-zhengxingda@iscas.ac.cn/ Suggested-by: Icenowy Zheng <zhengxingda@iscas.ac.cn> Signed-off-by: WangYuli <wangyl5933@chinaunicom.cn>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideMarks the Qualcomm GPI DMA engine as a private, non-generic DMA provider by adding the DMA_PRIVATE capability flag during probe, ensuring it is only used by its intended QUP peripheral clients and eliminating spurious async-tx related error messages. Flow diagram for setting DMA_PRIVATE in gpi_probeflowchart TD
A[gpi_probe] --> B[dma_cap_zero gpi_dev_dma_device_cap_mask]
B --> C[dma_cap_set DMA_SLAVE gpi_dev_dma_device_cap_mask]
C --> D[dma_cap_set DMA_PRIVATE gpi_dev_dma_device_cap_mask]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Pull request overview
Marks the Qualcomm GPI DMA controller as a private DMA engine so it won’t be treated as a general-purpose async-tx DMA provider, preventing spurious error messages and accidental consumer binding. This aligns the driver’s advertised capabilities with its intended use (QUP peripherals only).
Changes:
- Add
DMA_PRIVATEto the GPI DMAengine capability mask during probe. - Keep
DMA_SLAVEcapability while restricting generic allocator visibility viaDMA_PRIVATE.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The GPI DMA controller is only responsible for QUP peripherals, and cannot work as a general-purpose DMA accelerator.
Set DMA_PRIVATE capability for it.
This fixes error messages about GPI being shown when an async-tx consumer is loaded.
Fixes: 5d0c353 ("dmaengine: qcom: Add GPI dma driver")
Link: https://lore.kernel.org/all/20260602070344.3707256-1-zhengxingda@iscas.ac.cn/
Suggested-by: Icenowy Zheng zhengxingda@iscas.ac.cn
Summary by Sourcery
Bug Fixes: