Commit Graph

22 Commits

Author SHA1 Message Date
Andrew Tridgell ea71b72c87 HAL_ChibiOS: fixed issue with I2C4 on H743
when both I2C4 and SPI4 are active on a H743 I found that some BDMA
completion interrupts were lost, which resulted in SPI transfer
timeouts. Close inspection of the ChibiOS BDMA, I2Cv3 and SPIv3
drivers did not reveal any issues, but I found that the issue only
happened when the first 4 BDMA streams were used. This change splits
the 4 streams across the first and 2nd half of the BDMA controller,
and that fixes the problem.

This works as there are only 2 peripherals (I2C4 and SPI6) that want
to use BDMA with our current setup. If we ever wish to enable ADC3
(which also uses BDMA) we will need to revisit this issue
2020-04-28 17:42:15 +10:00
Andrew Tridgell a30e637484 HAL_ChibiOS: fixed bug in UART pin assignment
this fixes an issue with the setting of pullup/pulldown on UARTs. It
also adds enforcement of DMA assignment for DMA required peripherals
2020-01-02 09:52:57 +11:00
Michael du Breuil b0f4611ddc AP_HAL_ChibiOS: Fix python3 with F7 builds 2019-04-20 12:33:44 +10:00
Andrew Tridgell a59e1d0e0f HAL_ChibiOS: fixed H7 dma sharing between BDMA and DMA
the BDMA and DMA controllers have separate namespaces for streams, so
we can allocate a lot more streams than we were
2019-03-02 20:50:59 +11:00
Andrew Tridgell 8e745f74fb HAL_ChibiOS: support SPI6 on Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 75cd20aea4 HAL_ChibiOS: handle DMAMUX2 on H7
with BDMA
2019-02-26 16:18:26 +11:00
Andrew Tridgell 778d892fc2 HAL_ChibiOS: fixed dma resolved for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 6177129e41 HAL_ChibiOS: fixed typo in dma_resolver.py 2019-02-26 16:18:26 +11:00
Andrew Tridgell cb77b06460 HAL_ChibiOS: generate a dma map for H7
this allows for DMA sharing, allowing for more peripherals with DMA
2019-02-26 16:18:26 +11:00
Andrew Tridgell 9647a68c9e HAL_ChibiOS: fixed UART RX DMA for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell efc8da9f9a HAL_ChibiOS: enable TX DMA on uarts on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell acf77ba49a HAL_ChibiOS: fixed dma resolver for H7 2019-02-26 16:18:26 +11:00
Siddharth Purohit 42b4730d88 HAL_ChibiOS: add changes to hwdef to support STM32F1 based controller 2018-09-19 12:14:15 +10:00
Andrew Tridgell cdbbceb6b6 HAL_ChibiOS: cope with SDMMC peripheral for microSD 2018-04-12 11:50:44 +10:00
Andrew Tridgell 9a5df6d1f7 HAL_ChibiOS: auto-generate DMA channels for RCIN
and add DMA channels for TIMx_UP ready for DMAR based DShot support
2018-04-07 09:10:29 +10:00
Andrew Tridgell 8226530610 HAL_ChibiOS: added DMA_PRIORITY and DMA_NOSHARE options
this allows finer grained control of DMA streams
2018-02-08 22:13:00 +11:00
Andrew Tridgell ad5a04fc89 HAL_ChibiOS: added NODMA option
this allows a peripheral to be configured without DMA (for low-use
UARTs)
2018-02-07 20:33:45 +11:00
Andrew Tridgell b0d0ee1f01 HAL_ChibiOS: reformat using yapf and support python3
allow hwdef.h compilation using python3
2018-02-07 20:33:45 +11:00
bugobliterator 1db1ff799e HAL_ChibiOS: modify hwdef scripts to setup for generic RCIN 2018-01-20 17:40:07 +11:00
Andrew Tridgell 60a773d045 HAL_ChibiOS: removed duplicate defines 2018-01-15 11:46:02 +11:00
Andrew Tridgell 41be81af34 HAL_Chibios: added hardware flow control for UARTs
implement RTS in software and CTS in hardware
2018-01-15 11:46:02 +11:00
Andrew Tridgell 8b6bab7b17 HAL_Chibios: added ChibiOS HAL
this is based on initial work by Sid, reset here for easier merging
2018-01-15 11:46:02 +11:00