Skip to content

i2s/stm32f4: Fix duplex DMA mode - #3733

Open
kasjer wants to merge 1 commit into
apache:masterfrom
kasjer:kasjer/i2s-stm32f4-duplex-dma-fix
Open

i2s/stm32f4: Fix duplex DMA mode#3733
kasjer wants to merge 1 commit into
apache:masterfrom
kasjer:kasjer/i2s-stm32f4-duplex-dma-fix

Conversation

@kasjer

@kasjer kasjer commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

In I2S duplex mode buffer provided to i2s system
is used for both TX and RX path.
Separate DMA streams are configured for this.
Interrupt was generated for both streams resulting in notification function call twice for same buffer.

Now TX interrupt handler does nothing in duplex mode. RX DMA interrupt will fire shortly after TX and only then buffer can be returned back to the user.

In I2S duplex mode buffer provided to i2s system
is used for both TX and RX path.
Separate DMA streams are configured for this.
Interrupt was generated for both streams resulting
in notification function call twice for same buffer.

Now TX interrupt handler does nothing in duplex mode.
RX DMA interrupt will fire shortly after TX and only
then buffer can be returned back to the user.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg@codecoup.pl>
@kasjer
kasjer force-pushed the kasjer/i2s-stm32f4-duplex-dma-fix branch from 88314fe to 49145fa Compare August 27, 2026 09:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant