Commit 8ca9590
dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy
Currently, a local dma_cap_mask_t variable is used to store device
cap_mask within udma_of_xlate(). However, the DMA_PRIVATE flag in
the device cap_mask can get cleared when the last channel is released.
This can happen right after storing the cap_mask locally in
udma_of_xlate(), and subsequent dma_request_channel() can fail due to
mismatch in the cap_mask. Fix this by removing the local dma_cap_mask_t
variable and directly using the one from the dma_device structure.
Fixes: 25dcb5d ("dmaengine: ti: New driver for K3 UDMA")
Cc: [email protected]
Signed-off-by: Vaishnav Achath <[email protected]>
Acked-by: Peter Ujfalusi <[email protected]>
Reviewed-by: Udit Kumar <[email protected]>
Signed-off-by: Yemike Abhilash Chandra <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Vinod Koul <[email protected]>1 parent df180e6 commit 8ca9590
1 file changed
+1
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4246 | 4246 | | |
4247 | 4247 | | |
4248 | 4248 | | |
4249 | | - | |
4250 | 4249 | | |
4251 | 4250 | | |
4252 | 4251 | | |
| |||
4278 | 4277 | | |
4279 | 4278 | | |
4280 | 4279 | | |
4281 | | - | |
| 4280 | + | |
4282 | 4281 | | |
4283 | 4282 | | |
4284 | 4283 | | |
| |||
0 commit comments