From 6196fa2810995ea64f84bb559a6dc181b03a2aed Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Sun, 8 Dec 2013 12:50:20 -0800 Subject: [PATCH] Move LLI_COUNT constant out of SGPIO DMA utility functions. --- firmware/common/sgpio_dma.c | 37 +++++++++++++++++++++++-------------- firmware/common/sgpio_dma.h | 7 ++++++- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/firmware/common/sgpio_dma.c b/firmware/common/sgpio_dma.c index b0383250..18366beb 100644 --- a/firmware/common/sgpio_dma.c +++ b/firmware/common/sgpio_dma.c @@ -29,15 +29,18 @@ #include #include -#define LLI_COUNT 4 - -static void configure_dma_lli(gpdma_lli_t* const lli, const bool direction_transmit, void* const buffer, const size_t byte_count) { - const size_t transfer_count = LLI_COUNT; +static void configure_dma_lli( + gpdma_lli_t* const lli, + const size_t lli_count, + const bool direction_transmit, + void* const buffer, + const size_t byte_count +) { const size_t transfer_bytes = 4; - const size_t transfer_size = byte_count / transfer_count / transfer_bytes; + const size_t transfer_size = byte_count / lli_count / transfer_bytes; const size_t transfer_size_bytes = transfer_size * transfer_bytes; - for(size_t i=0; i +#include + void sgpio_dma_init(void* const buffer, const size_t byte_count); void sgpio_dma_rx_start(); void sgpio_dma_tx_start(); void sgpio_dma_irq_tc_acknowledge(); void sgpio_dma_stop(); -size_t sgpio_dma_current_transfer_index(); +size_t sgpio_dma_current_transfer_index( + const gpdma_lli_t* const lli, + const size_t lli_count +); #endif/*__SGPIO_DMA_H__*/