4.3.6. 常见问题
4.3.6.1. dmatest 时verify数据报错
4.3.6.1.1. 现象
当运行dmatest测试时,错误log类似如下:
[ 381.878419] dmatest: dma0chan5-copy0: dstbuf[0x3f70] mismatch! Expected cf, got d7
[ 381.885999] dmatest: dma0chan5-copy0: dstbuf[0x3f71] mismatch! Expected ce, got d6
[ 381.893611] dmatest: dma0chan5-copy0: dstbuf[0x3f72] mismatch! Expected cd, got d5
[ 381.901199] dmatest: dma0chan5-copy0: dstbuf[0x3f73] mismatch! Expected cc, got d4
[ 381.908783] dmatest: dma0chan5-copy0: dstbuf[0x3f74] mismatch! Expected cb, got d3
[ 381.916350] dmatest: dma0chan5-copy0: dstbuf[0x3f75] mismatch! Expected ca, got d2
4.3.6.1.2. 原因分析
dmatest的默认配置是需要verify测试数据的。
当进行多通道(max_channels>1)测试时,必须要使能polled属性,以保证通道的测试过程是串行的,否则会报verify错误。
设置polled属性的方法见 dmatest 测试