Commit Graph

41 Commits

Author SHA1 Message Date
Peter Barker f5190d1bcc AP_HAL_ChibiOS: use logger().WriteCritical(...) for WDOG message 2019-05-16 17:21:24 +10:00
Andrew Tridgell 0708b65c2d AP_HAL_ChibiOS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell 8d0bca6ba9 HAL_ChibiOS: log mavlink IDs and semaphore lines for watchdog
this gives a better chance of tracking down a hang
2019-05-15 15:33:48 +10:00
Andrew Tridgell e3c80bf08f HAL_ChibiOS: fixed bootloader build 2019-05-15 15:33:48 +10:00
Andrew Tridgell d7a0eb42ee HAL_ChibiOS: added logging of watchdog data
log MON msgs in the leadup to a watchdog, and log a WDOG message after
a watchdog reset
2019-05-15 15:33:48 +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 0461692ea5 HAL_ChibiOS: enable watchdog on IOMCU 2019-04-22 16:53:35 +10:00
Andrew Tridgell 2476927048 HAL_ChibiOS: don't call internalerror for iomcu 2019-04-22 16:53:35 +10:00
Andrew Tridgell 63d21d995a HAL_ChibiOS: setup watchdog_reset internal error 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 19526b5826 HAL_ChibiOS: implement scheduler->expect_delay_ms() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 8100c71a96 HAL_ChibiOS: added commented out test code for watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 272c277056 HAL_ChibiOS: use BRD_OPTIONS to enable 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 006583d812 HAL_ChibiOS: fixed iomcu build with flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 36f7116054 HAL_ChibiOS: implement flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell bd47aba5ca HAL_ChibiOS: reduced delay time in main loop to 50us
this allows for faster loop rates, and seems to be enough in testing
2019-02-26 16:18:26 +11:00
Andrew Tridgell 24f6d6d647 HAL_ChibiOS: support microSD slowdown
allow use of BRD_SD_SLOWDOWN to slow down clock on microSD
2018-12-31 08:00:14 +11:00
Andrew Tridgell 7e777d8b28 HAL_ChibiOS: disable loop() delay for iofirmware 2018-10-30 13:00:48 +11:00
Andrew Tridgell af4340d1d1 HAL_ChibiOS: enable analog input on IOMCU 2018-10-30 13:00:48 +11:00
Siddharth Purohit 87a2dea9d4 HAL_ChibiOS: disable features that require advanced dma 2018-09-19 12:14:15 +10:00
Siddharth Purohit 0f07480faf HAL_ChibiOS: continue main_loop branching from main instead of allocating a separate thread 2018-09-19 12:14:15 +10:00
Andrew Tridgell 0201893f7c HAL_ChibiOS: fixed peripheral power-up on fmuv5
we need to do the powerup before we initialise the UARTs
2018-07-13 07:34:30 +10:00
Andrew Tridgell 63a0a4979c HAL_ChibiOS: delay peripheral power on for fmuv5
this should prevent SiK radios staying in the bootloader
2018-07-13 07:34:30 +10:00
Andrew Tridgell 0a5d287326 HAL_ChibiOS: support uartG 2018-06-29 08:17:38 +10:00
Andrew Tridgell 369ac5edd0 HAL_ChibiOS: save more space in the bootloader 2018-06-25 21:22:31 +10:00
Alexander Malishev 6b15b2f44f HAL_ChibiOS: Enable sdcard on spi bus 2018-05-27 19:10:24 +10:00
Andrew Tridgell e4ce2f532b HAL_ChibiOS: make smaller builds possible
this allows for much smaller builds when you disable a lot of
options. This is part of an effort to create a bootloader of less than
16k using ChibiOS
2018-04-12 11:50:44 +10:00
Andrew Tridgell 01e9c55721 HAL_ChibiOS: fixed SPI bus speed on SPI3
and add optional bootup test of SPI bus speeds to help with porting to
new MCUs
2018-04-07 09:10:29 +10:00
Andrew Tridgell 306d35655e HAL_ChibiOS: allow for bare board builds
this allows for a build with no UARTs, no SPI, no I2C, no PWM. Great
for initial board bringup with just USB
2018-03-02 12:52:50 +11:00
Andrew Tridgell 427e00dd41 HAL_ChibiOS: switched to system timer for AP_HAL::micros()
this uses the ChibiOS system timer instead of a separate GPT timer for
the core ChibiOS timer. The advantage is it saves us a timer, plus it
changes ChibiOS to use a 1MHz clock on its timer, which gives us
higher resolution for delays.

This has a remarkable effect on timing jitter, reducing it greatly
2018-02-14 18:27:00 +11:00
Andrew Tridgell b7c4dea9d3 HAL_ChibiOS: gain back 250usec in loop time
if we have already called delay_microseconds_boost() then we know
we've given up time to drivers, so we can avoid the extra delay in the
HAL
2018-02-13 17:15:05 +11:00
Andrew Tridgell aee6462deb HAL_ChibiOS: enable I2C clearing on F412 board only
may be needed on other boards in the future, but for now we only know
its needed on an I2C 20789, which is rare
2018-02-08 17:36:33 +11:00
Siddharth Purohit 40142e5aef ChibiOS: implement way to clear i2c bus by toggling clock line 2018-02-08 17:36:33 +11:00
Andrew Tridgell 23555f4c25 HAL_ChibiOS: allow for empty storage during bringup
useful when storage backend driver isn't written yet
2018-02-07 20:33:45 +11:00
Andrew Tridgell f14a847b97 HAL_ChibiOS: rename classes to remove 'Chibi'
it is redundent as all classes are in ChibiOS namespace, and makes the
code harder to read
2018-01-15 11:46:02 +11:00
Andrew Tridgell 468cadca45 HAL_ChibiOS: auto-generate UART driver declarations 2018-01-15 11:46:02 +11:00
Andrew Tridgell d1f93cd66c HAL_Chibios: auto-generate I2C, SPI and UART device lists
this is less error prone and make a port faster as more information is
in hwdef.dat
2018-01-15 11:46:02 +11:00
bugobliterator 5feef04f5f HAL_ChibiOS: add support for CCM memory
this uses DMA bounce buffers for bus transfers, and falls back to CCM
ram in allocations if the type is unspecified
2018-01-15 11:46:02 +11:00
Andrew Tridgell 26d6947bf6 HAL_ChibiOS: fixed PWM output 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