diff options
Diffstat (limited to 'src/stm')
| -rw-r--r-- | src/stm/ao_dma_stm.c | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/src/stm/ao_dma_stm.c b/src/stm/ao_dma_stm.c index 0c86b49a..a24c6d3a 100644 --- a/src/stm/ao_dma_stm.c +++ b/src/stm/ao_dma_stm.c @@ -48,7 +48,11 @@ ao_dma_isr(uint8_t index) {  void stm_dma1_channel1_isr(void) { ao_dma_isr(STM_DMA_INDEX(1)); }  void stm_dma1_channel2_isr(void) { ao_dma_isr(STM_DMA_INDEX(2)); } +#ifdef STM_DMA1_3_STOLEN +#define LEAVE_DMA_ON +#else  void stm_dma1_channel3_isr(void) { ao_dma_isr(STM_DMA_INDEX(3)); } +#endif  void stm_dma1_channel4_isr(void) { ao_dma_isr(STM_DMA_INDEX(4)); }  #ifdef STM_DMA1_5_STOLEN  #define LEAVE_DMA_ON @@ -179,6 +183,13 @@ ao_dma_init(void)  			continue;  		}  #endif +#if STM_DMA1_3_STOLEN +		if (index == STM_DMA_INDEX(3)) { +			ao_dma_allocated[index] = 1; +			ao_dma_mutex[index] = 0xff; +			continue; +		} +#endif  		stm_nvic_set_enable(STM_ISR_DMA1_CHANNEL1_POS + index);  		stm_nvic_set_priority(STM_ISR_DMA1_CHANNEL1_POS + index, 4);  		ao_dma_allocated[index] = 0;  | 
