Fix callback type.
[bertos.git] / bertos / drv / dac.h
index 0a6ab0bdb9e130923fe79c09eb29750b8265a697..c720f756521257e5c93ec6b2eb8f493112731c1d 100644 (file)
@@ -66,7 +66,7 @@ typedef void (*DmaConversionBufFunc_t) (struct Dac *dac, void *buf, size_t len);
 typedef bool (*DmaConversionIsFinished_t) (struct Dac *dac);
 typedef void (*DmaStartStreamingFunc_t) (struct Dac *dac, void *buf, size_t len, size_t slice_len);
 typedef void (*DmaStopFunc_t) (struct Dac *dac);
-typedef void (*DmaCallbackFunc_t) (struct Dac *dac);
+typedef void (*DmaCallbackFunc_t) (struct Dac *dac, void *_buf, size_t len);
 
 typedef struct DacContext
 {
@@ -131,14 +131,14 @@ INLINE bool dac_dmaIsFinished(Dac *dac)
 /*
  * \param slicelen Must be a divisor of len, ie. len % slicelen == 0.
  */
-INLINE void dac_dmaStartStreaming(Dac *dac, void *buf, size_t len, size_t slice_len, DmaCallbackFunc_t *callback)
+INLINE void dac_dmaStartStreaming(Dac *dac, void *buf, size_t len, size_t slice_len, DmaCallbackFunc_t callback)
 {
        ASSERT(dac->ctx.start);
        ASSERT(len % slice_len == 0);
        ASSERT(callback);
 
        dac->ctx.callback = callback;
-       dac->ctx.slicelen = slice_len;
+       dac->ctx.slice_len = slice_len;
        dac->ctx.start(dac, buf, len, slice_len);
 }