*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
ch_mask(STM_DMA_INDEX(3)));
}
-void stm_dma1_ch4_5_6_isr(void) {
+void stm_dma_ch4_5_6_isr(void) {
ao_dma_isr(STM_DMA_INDEX(4), STM_DMA_INDEX(6),
ch_mask(STM_DMA_INDEX(4)) |
ch_mask(STM_DMA_INDEX(5)) |
void
ao_dma_done_transfer(uint8_t index)
{
- stm_dma.channel[index].ccr &= ~(1 << STM_DMA_CCR_EN);
+ stm_dma.channel[index].ccr &= ~(1UL << STM_DMA_CCR_EN);
ao_arch_critical(
if (--ao_dma_active == 0)
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_DMAEN);
+ stm_rcc.ahbenr &= ~(1UL << STM_RCC_AHBENR_DMAEN);
);
if (ao_dma_allocated[index])
ao_dma_mutex[index] = 0;
void
ao_dma_abort(uint8_t index)
{
- stm_dma.channel[index].ccr &= ~(1 << STM_DMA_CCR_EN);
+ stm_dma.channel[index].ccr &= ~(1UL << STM_DMA_CCR_EN);
ao_wakeup(&ao_dma_done[index]);
}