X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fi2s.h;h=8758cb0080cb7e2a18e0340743495214603c1893;hb=78d223e73e58bdd267f59994a52c618b4eb277fa;hp=73768c3131581898d8c2c330424e241a24b9f52d;hpb=677c93e2b91e885d2bcb0ea313ad0a58b195fd09;p=bertos.git diff --git a/bertos/drv/i2s.h b/bertos/drv/i2s.h index 73768c31..8758cb00 100644 --- a/bertos/drv/i2s.h +++ b/bertos/drv/i2s.h @@ -48,6 +48,7 @@ #ifndef DRV_I2S_H #define DRV_I2S_H +#warning __FILTER_NEXT_WARNING__ #warning This API is ALPHA! we could change it.. #include @@ -145,14 +146,21 @@ INLINE void i2s_dmaRxBuffer(I2s *i2s, void *buf, size_t len) } +INLINE void i2s_dmaTxWait(I2s *i2s) +{ + ASSERT(i2s->ctx.tx_wait); + i2s->ctx.tx_wait(i2s); +} + + INLINE void i2s_dmaStartTxStreaming(I2s *i2s, void *buf, size_t len, size_t slice_len, i2s_dma_callback_t callback) { ASSERT(i2s->ctx.tx_start); ASSERT(len % slice_len == 0); ASSERT(callback); - i2s->ctx.rx_callback = callback; - i2s->ctx.rx_slice_len = slice_len; + i2s->ctx.tx_callback = callback; + i2s->ctx.tx_slice_len = slice_len; i2s->ctx.tx_start(i2s, buf, len, slice_len); } @@ -162,7 +170,6 @@ INLINE void i2s_dmaTxStop(I2s *i2s) i2s->ctx.tx_stop(i2s); } - INLINE void i2s_dmaStartRxStreaming(I2s *i2s, void *buf, size_t len, size_t slice_len, i2s_dma_callback_t callback) { ASSERT(i2s->ctx.rx_start); @@ -174,8 +181,6 @@ INLINE void i2s_dmaStartRxStreaming(I2s *i2s, void *buf, size_t len, size_t slic i2s->ctx.rx_start(i2s, buf, len, slice_len); } - - INLINE void i2s_dmaRxStop(I2s *i2s) { ASSERT(i2s->ctx.rx_stop);