sof icon indicating copy to clipboard operation
sof copied to clipboard

audio: dai-zephyr: Do not reset the DMA buffer cursor for HD-DMA on T…

Open ujfalusi opened this issue 1 year ago • 2 comments

…RIGGER_RELEASE

During DMA stop/config/start the read/write pointer of HD-DMA is not reset unlike other DMAs (GPDMA, DMAC).

Only call the audio_stream_reset() if the link is not serviced by HD-DMA.

Link: https://github.com/thesofproject/sof/issues/8986 Fixes: 9831a9ded770 ("audio: dai-zephyr: reset DMA buffer cursors on TRIGGER_RELEASE")

ujfalusi avatar Mar 28 '24 13:03 ujfalusi

imx build fail with error: 'alias_mask' not found ?

ujfalusi avatar Mar 28 '24 15:03 ujfalusi

imx build fail with error: 'alias_mask' not found ?

Caused by https://github.com/zephyrproject-rtos/zephyr/pull/70219. Fix in https://github.com/thesofproject/sof/pull/8945

LaurentiuM1234 avatar Mar 29 '24 08:03 LaurentiuM1234

imx build fail with error: 'alias_mask' not found ?

only with the Zephyr main branch ("zmain"). Manifest build is fine: https://github.com/thesofproject/sof/actions/runs/8468096003/job/23200277967?pr=8995

marc-hb avatar Apr 01 '24 17:04 marc-hb

@dbaluta, @LaurentiuM1234, should we move the call to stream_reset() where we call dma_config() ?

ujfalusi avatar Apr 03 '24 08:04 ujfalusi

@dbaluta, @LaurentiuM1234, should we move the call to stream_reset() where we call dma_config() ?

You mean do it if there's no XRUN? Not sure if I can be of much help here as I've never messed around with the XRUN stuff :(

LaurentiuM1234 avatar Apr 03 '24 09:04 LaurentiuM1234

@dbaluta, @LaurentiuM1234, should we move the call to stream_reset() where we call dma_config() ?

You mean do it if there's no XRUN? Not sure if I can be of much help here as I've never messed around with the XRUN stuff :(

OK, let's leave it where it is and move it if needed.

ujfalusi avatar Apr 03 '24 09:04 ujfalusi

https://github.com/thesofproject/sof/issues/9002 filed to track the follow-up. Merging the fix.

kv2019i avatar Apr 03 '24 12:04 kv2019i