Replies: 2 comments 12 replies
-
Are you sure? Can you tell us what board are you using? Can you post some code snippets? |
Beta Was this translation helpful? Give feedback.
1 reply
-
@chihualee for capture copying from DSP to host driver, there are two buffers.
The critical thing is to make sure that your R/W pointers are correctly aligned between host driver and DSP FW. i.e. to avoid overrun or underrun. Pls also make sure that the DSP pipeline R/W pointers are updating and buffer 1 is filling, then check same for buffer 2. ALSA also needs to some data in the host driver buffer 2 before it will unblock a read() from userspace. |
Beta Was this translation helpful? Give feedback.
11 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
For stream capture scenario, I am tracing the behavior of Host (sof/src/audio/host-legacy.c and sof/src/drivers/generic/dummy-dma.c).
The data flow should be: Local-buffer => DMA-buffer => buffer-share-linux.
But I found the data flow in Host is:
First copy data from DMA-buffer to buffer-share-linux,
then copy data from Local-buffer to DMA-buffer ?
I think it's not correct. Did I miss something ?
Thanks.
Beta Was this translation helpful? Give feedback.
All reactions