1. 28 Mar, 2017 1 commit
  2. 25 Nov, 2016 1 commit
  3. 16 Nov, 2016 2 commits
    • Krzysztof Blazewicz's avatar
      stmhal/dma: mark DMA sate as READY even if HAL_DMA_Init is skipped · dc1ac5dc
      Krzysztof Blazewicz authored
      Current version of HAL drivers checks if `hdma->State == HAL_DMA_STATE_READY`
      before executing some functions.
    • Krzysztof Blazewicz's avatar
      stmhal/dma: precalculate register base and bitshift on handle init · 63ca7a21
      Krzysztof Blazewicz authored
      Current version of HAL drivers optimize IRQ handler by using precalculated
      DMA register address and stream bitshift instead of calculating it on every interrupt.
      Since we skip call to `HAL_DMA_Init` on reused DMA, fields StreamBaseAddress and StreamIndex
      of DMA handle are not initialized and thus leads to SegFault in `DMA_IRQHandler`.
      HAL_DMA_Init is a big routine and we do not need to call it on each use of DMA
      (ex.: series of I2C operations) and DMA_CalcBaseAndBitshift is really small and
      releasing it increases code size by only 8 bytes.
  4. 11 Nov, 2016 1 commit
  5. 29 Jun, 2016 1 commit
  6. 06 May, 2016 1 commit
  7. 05 May, 2016 2 commits
  8. 22 Dec, 2015 1 commit
    • Damien George's avatar
      stmhal: Add pyb.irq_stats() to get statistics about IRQ calls. · 401af50d
      Damien George authored
      Adds a lot of code, makes IRQs a bit less efficient, but is very useful
      for debugging.  Usage: pyb.irq_stats() returns a memory view that can be
      read and written, eg:
          pyb.irq_stats()[0] = 0
      The patch provides general IRQ_ENTER() and IRQ_EXIT() macros that can be
      modified to provide further IRQ statistics if desired.
  9. 24 Nov, 2015 3 commits
  10. 01 Nov, 2015 1 commit
  11. 29 Jul, 2015 1 commit
  12. 24 Jun, 2015 1 commit
    • blmorris's avatar
      stmhal/dma.c: Modify dma_init() to accept init struct as an argument · c5175526
      blmorris authored
      This removes hard-coded DMA init params from dma_init(), instead defining
      these parameters in a DMA_InitTypeDef struct that gets passed as an
      argument to dma_init()
      This makes dma_init more generic so it can be used for I2S and SD Card,
      which require different initialization parameters.
  13. 10 Jun, 2015 1 commit