Other Parts Discussed in Thread: TLV320AIC3106
器件型号: AM625
主题: TLV320AIC3106 中讨论的其他器件
您好、我在大约六个月前提交了一个问题、链接如下:
我还会将上一个问题链接到这个问题。
我发现 SDK 11 中仍然存在问题、我已经检查了最新的 TI Linux 内核代码、并对我的 SDK 11 代码应用了最新的 UDMA 补丁、但问题仍然存在。
但是、SDK 11 中的问题已经发生了变化。 在 SDK 10 中、我在音频播放和捕获期间都遇到了显著的 DMA 延迟。 在 SDK 11 中、此问题仅在捕获期间发生、特别是在 DMA DEV 至 MEM 模式下。
该修复程序与 SDK 10 中的修复程序相同:只需从`cppi5 type1`结构的`flag`属性中删除 EOF 标志。 这样可以消除延迟、但会使音频采集和播放变得非常不稳定。
diff --git a/drivers/dma/ti/k3-udma-common.c b/drivers/dma/ti/k3-udma-common.c
index 14ee0d74b..afc1484e5 100644
--- a/drivers/dma/ti/k3-udma-common.c
+++ b/drivers/dma/ti/k3-udma-common.c
@@ -1667,7 +1669,7 @@ udma_prep_dma_cyclic_tr(struct udma_chan *uc, dma_addr_t buf_addr,
if (uc->config.ep_type == PSIL_EP_PDMA_XY &&
(uc->ud->match_data->type == DMA_TYPE_BCDMA ||
uc->ud->match_data->type == DMA_TYPE_BCDMA_V2)) {
- period_csf = CPPI5_TR_CSF_EOP;
+ // period_csf = CPPI5_TR_CSF_EOP;
}
if (!(flags & DMA_PREP_INTERRUPT))