Commit Graph

185 Commits

Author SHA1 Message Date
Andrew Tridgell
91e8752c17 HAL_ChibiOS: wrap more libc functions
this saves a few k of flash as it avoids linking libc versions of some
functions
2019-09-09 13:31:30 +10:00
Andrew Tridgell
3166f84954 HAL_ChibiOS: added vsnprintf wrapper
this allows us to use a common snprintf implementation
2019-09-09 13:31:30 +10:00
Andrew Tridgell
0ffe2e75be HAL_ChibiOS: fixed warnings 2019-08-27 15:40:43 +10:00
Andrew Tridgell
9d760a2956 HAL_ChibiOS: disable re-entrancy in FATFS
not needed now we have a semaphore in AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
bf79b65e07 HAL_ChibiOS: simplify stubs code 2019-08-27 15:40:43 +10:00
Andrew Tridgell
d1565a96c5 HAL_ChibiOS: wrap cacheBuffer functions
needed to avoid problem with end() method in UARTDriver shadowing with
F7 implementation of cache macros
2019-08-27 15:40:43 +10:00
Andrew Tridgell
b867ef35c0 HAL_ChibiOS: use AP_Filesystem API 2019-08-27 15:40:43 +10:00
Andrew Tridgell
63f39c2bd6 HAL_ChibiOS: fixed build of iomcu firmware 2019-08-27 10:29:56 +10:00
Andrew Tridgell
5cbe85ee19 HAL_ChibiOS: allow for ADC and clock overrides 2019-08-27 10:29:56 +10:00
Andrew Tridgell
cbc83d68cd HAL_ChibiOS: allow for CAN enable override on F4 2019-08-27 10:29:56 +10:00
Andrew Tridgell
fb68fa8bc9 HAL_ChibiOS: fixed typo for 512k F4 parts 2019-08-27 10:29:56 +10:00
Andrew Tridgell
16bdaaa1af HAL_ChibiOS: added support for STM31F10x for AP_Periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell
ffe0f338d3 HAL_ChibiOS: enable utime() API 2019-08-26 15:41:44 +10:00
Andrew Tridgell
f8cfbb8062 HAL_ChibiOS: added ISR limit on I2C
this will prevent any possibility of an I2C interrupt storm. This is
designed to address the most likely cause of #11642
2019-08-25 17:12:16 +10:00
Siddharth Purohit
2f0d1336e6 HAL_ChibiOS: add support for dual usd cdc 2019-07-12 17:01:21 +10:00
Andrew Tridgell
dbfe6b8019 HAL_ChibiOS: implement persistent_data for watchdog
this is a much simpler approach to persistent data
2019-05-15 15:33:48 +10:00
Andrew Tridgell
6333494d99 HAL_ChibiOS: disable peripheral power on boot on fmuv3
then enable after 100ms, and let settle for 20ms. This is to fix an
issue with peripheral power on consistency with all fmuv3 boards

Thanks to Philip for the suggestion
2019-05-11 18:45:18 +10:00
Michael du Breuil
a4d9853f1d AP_HAL_ChibiOS: Actually enable the wrapper on remove 2019-04-26 08:07:19 +10:00
Andrew Tridgell
508aae8f2a HAL_ChibiOS: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell
730982b3c4 HAL_ChibiOS: fixed build with older gcc 2019-04-22 16:53:35 +10:00
Andrew Tridgell
2778a1b01e HAL_ChibiOS: save/restore home position in backup registers
# Conflicts:
#	libraries/AP_HAL_ChibiOS/hwdef/common/stm32_util.c
2019-04-22 16:53:35 +10:00
Andrew Tridgell
f0f36c6237 HAL_ChibiOS: fixed watchdog timeout setting 2019-04-22 16:53:35 +10:00
Andrew Tridgell
9ca67dc811 HAL_ChibiOS: implement was_watchdog_armed() 2019-04-22 16:53:35 +10:00
Andrew Tridgell
1acb7e977f HAL_ChibiOS: added ability to restore safety state on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell
54cbf8ea9e HAL_ChibiOS: change to 2s timeout on watchdog
a bit more of a safety net against false positives for stable release
2019-04-22 16:53:35 +10:00
Andrew Tridgell
58aca561fd HAL_ChibiOS: fixed watchdog on H7 2019-04-22 16:53:35 +10:00
Andrew Tridgell
19526b5826 HAL_ChibiOS: implement scheduler->expect_delay_ms() 2019-04-22 16:53:35 +10:00
Andrew Tridgell
a5309b3afa HAL_ChibiOS: record reason for reset
allows us to tell if reset was due to watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell
c09df1ea7b HAL_ChibiOS: added IWDG watchdog support
this resets the MCU if the main loop stops for 1 second
2019-04-22 16:53:35 +10:00
Andrew Tridgell
26d1371d25 HAL_ChibiOS: separate out DMA allocation for sdcard IO
this fixes an issue with DMA to SPI6 on STM32H7. On the H7 SRAM4 can
be used for DMA and BDMA to all devices except for SDMMC which uses
IDMA.

by separating out DMA of sdcard data from other data we can arrange
for DMA to all devices to work
2019-03-09 07:33:47 +11:00
Andrew Tridgell
160de969a5 HAL_ChibiOS: simplify H7 clock tree setup
and push more peripherals to max of 100MHz
2019-03-04 21:42:07 +11:00
Andrew Tridgell
5bcfe41d1f HAL_ChibiOS: push H7 clock to 400MHz 2019-03-04 19:38:06 +11:00
Andrew Tridgell
4c12ba4c2c HAL_ChibiOS: fixed SDMMC IRQ priority 2019-03-01 11:39:27 +11:00
Andrew Tridgell
e192bc6c10 HAL_ChibiOS: adjust H7 clocks, and enabled SDMMC 2019-03-01 11:39:12 +11:00
Andrew Tridgell
64681cb05c HAL_ChibiOS: allocate threads from any heap
this fixes a failure on MatekF405-Wing where it fails to allocate the
SPI thread for the IMU
2019-02-27 11:54:28 +11:00
Andrew Tridgell
26e76e51ed HAL_ChibiOS: fixed H7 build with older compilers 2019-02-26 16:18:26 +11:00
Andrew Tridgell
70930cca29 HAL_ChibiOS: fixed bootloader build with gcc 4.9 2019-02-26 16:18:26 +11:00
Andrew Tridgell
f8aeeb0333 HAL_ChibiOS: adjust clock tree to be more consistent
use 96MHz for all peripheral buses
2019-02-26 16:18:26 +11:00
Andrew Tridgell
5dd82f1d63 HAL_ChibiOS: adjust 16MHz HSE settings for H743 (CubeH7) 2019-02-26 16:18:26 +11:00
Andrew Tridgell
b0f4494c4a HAL_ChibiOS: fixed DMA on SPI for Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell
9966fbea0f HAL_ChibiOS: fixed bootloader build error 2019-02-26 16:18:26 +11:00
Andrew Tridgell
e92c66418d HAL_ChibiOS: fixed bouncebuffer code on STM32F7 2019-02-26 16:18:26 +11:00
Andrew Tridgell
a3e69e715d HAL_ChibiOS: avoid doing one-way SPI transfers
these transfers use dummy bytes in the hal driver, which may not be in
DMA safe memory, so best to avoid them
2019-02-26 16:18:26 +11:00
Andrew Tridgell
cda1959629 HAL_ChibiOS: added support for more flexible memory regions
this allows for an arbitrary number of memory regions, with each one
flagged as DMA safe, fast or normal
2019-02-26 16:18:26 +11:00
Andrew Tridgell
5f88340919 HAL_ChibiOS: fixed flash build warning 2019-02-26 16:18:26 +11:00
Andrew Tridgell
8a40ee8132 HAL_ChibiOS: fixed idle wait on H7 flash program 2019-02-26 16:18:26 +11:00
Andrew Tridgell
b07ba37359 HAL_ChibiOS: pass optimization to ChibiOS build 2019-02-26 16:18:26 +11:00
Andrew Tridgell
77d4e1f796 HAL_ChibiOS: removed ID_ANY streams for H7
use generated map instead
2019-02-26 16:18:26 +11:00
Andrew Tridgell
6422068e6b HAL_ChibiOS: fixed analog input on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell
46787fe7d8 HAL_ChibiOS: adjust clocks for H743 2019-02-26 16:18:26 +11:00