-
Notifications
You must be signed in to change notification settings - Fork 349
dai: Add warning about possible glitch #3417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
7f38dc7 to
29b7251
Compare
29b7251 to
57919fb
Compare
|
@ktrzcinx just one issue, checkpatch is valid here |
|
I also guess this is no longer an RFC ? |
plbossart
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not understanding the concept here, sorry
|
@ktrzcinx do you think you can resolve this today or tomorrow morning ? |
|
Yes, it looks that I mixed playback with capture, I'm now checking results after swapping |
|
When I keep original solution (use free+copy_bytes in playback), then results looks good (when output has glitches, then also warning is present in logs), but this solutions looks quite strange, as pointed @plbossart. After changing condition and comparing avail+copy_bytes in playback, then I can't see warning message despite the fact that used math looks better. It looks like there's some issue with avail bytes reads: In the first copy() iteration it shows here there is 1264 avail bytes in dw-dma but it was first iteration, so dma buffer should be empty. Maybe avail bytes calculation it's a reason of lack warning message in this version. |
|
@ktrzcinx the key for DMA is that the granularity will be period based (since the DMAC will own the period and it's data access are asynchronous to the FW data accesses). We really need the following four checks
|
57919fb to
8cb9391
Compare
DMA should be loaded at least with data for one period otherwise glitches are supposed to appear. Such a kind of problem is quite difficult to track, because it may be related with scheduling in runtime, DSP load, or used buffers size, so log message pointing such a problem is useful. Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
8cb9391 to
46169ce
Compare
|
SOFCI TEST |


DMA should be loaded at least with data for one period
otherwise glitches are supposed to appear. Such a kind of
problem is quite difficult to track, because it may be related
with scheduling in runtime, DSP load, or used buffers size,
so log message pointing possible source of glitch is useful.
Signed-off-by: Karol Trzcinski karolx.trzcinski@linux.intel.com