Commit Graph

86 Commits

Author SHA1 Message Date
Thomas Watson dc4438d0e3 AP_HAL_ChibiOS: eliminate legacy UART ordering/references
SERIAL_ORDER has been around for a few years now and UART_ORDER is
rejected by the hwdef script, so support for UART_ORDER and associated
processing in the hwdef script is removed, along with the order
conversion script.
2023-12-19 06:53:15 +11:00
Thomas Watson 507ab623b2 AP_HAL_ChibiOS: pass UARTs to AP_HAL in SERIALn order 2023-12-19 06:53:15 +11:00
Thomas Watson a9ddadee3b AP_HAL_ChibiOS: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Andrew Tridgell 4946ce5431 HAL_ChibiOS: revert recent USB changes
these are causing some boards to crash on startup. Tested with a
QiotekZealotH743 which doesn't get out of setup_usb_strings()

once we have debugged this we can re-add the functionality
2023-06-03 16:50:30 +10:00
bugobliterator 0c5d19ff44 AP_HAL_ChibiOS: initialise SDCard before starting USB 2023-05-31 18:40:17 +10:00
bugobliterator b5617a9ff8 Revert "AP_HAL_ChibiOS: disable watchdog in hwdef.h not in-line in code"
This reverts commit ccfad8ceea.
2023-05-23 09:00:11 +10:00
Henry Wurzburg d0ac8f3016 AP_HAL_ChibiOS: normalize SerialManagers ports defaults to allow inclusion in hwdefs 2023-05-11 18:45:53 +10:00
Andy Piper f8dd6a1b2a AP_HAL_ChibiOS: rename QSPIDevice to WSPIDevice 2023-04-28 08:31:15 +10:00
bugobliterator 2ac7dcc764 AP_HAL_ChibiOS: use HAL_SERIAL0_BAUD_DEFAULT when setting up serial(0) 2023-04-26 18:04:00 +10:00
Peter Barker ccfad8ceea AP_HAL_ChibiOS: disable watchdog in hwdef.h not in-line in code 2023-02-01 18:44:06 +11:00
Peter Barker ecde9f8c3f AP_HAL_ChibiOS: make HAL_FLASH_PROTECTION a boolean, stop checking for definition 2022-08-16 08:10:16 +10:00
Peter Barker 13b03f79db AP_HAL_ChibiOS: move from HAL_NO_SHARED_DMA to AP_HAL_SHARED_DMA_ENABLED
This allows hwdef files to manipulate this value
2022-07-19 18:02:26 +10:00
Peter Barker 8b2f85756a AP_HAL_ChibiOS: instantiate SIMState object in HAL 2022-03-17 14:39:55 +11:00
Andy Piper ed952a0ea0 AP_HAL_ChibiOS: allow flash to be write-protected/unprotected on reboot
control protection support via HAL_FLASH_PROTECTION
provide support for flash protection on SPRacingH7
SPRacingH7 bootloader needs to use w25q-dtr
2022-02-24 10:19:07 +11:00
Andrew Tridgell 638e20a0b9 HAL_ChibiOS: bring in hal.h where it is needed 2022-02-22 12:13:19 +11:00
Andrew Tridgell fc6a82de1b AP_HAL_ChibiOS: support up to 9 UARTs 2021-11-22 22:48:59 +11:00
bugobliterator 418ac60373 AP_HAL_ChibiOS: disable watchdog when DISABLE_WATCHDOG is defined 2021-11-05 07:38:43 +11:00
Siddharth Purohit 28dbbc2bc4 AP_HAL_ChibiOS: do not even initialise empty qspi driver 2021-06-30 19:33:17 +10:00
Siddharth Purohit abc26d1993 AP_HAL_ChibiOS: add QSPI Device Driver in HAL 2021-06-30 19:33:17 +10:00
Dr.-Ing. Amilcar do Carmo Lucas fc7e242bae AP_HAL_ChibiOS: Fix typo (NFC) 2021-05-21 09:43:10 +10:00
Andrew Tridgell 88e277420f AP_HAL_ChibiOS: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andy Piper e1d71486e4 AP_HAL_ChibiOS: build fixes for ChibiOS 20.3.x 2021-03-23 12:01:20 +11:00
Andrew Tridgell 243cf2199d HAL_ChibiOS: disable shared DMA on IOMCU
this saves about 600 bytes of ram
2021-02-24 18:21:08 +11:00
Andrew Tridgell 5c823debc0 HAL_ChibiOS: support saving persistent parameters to bootloader sector
when we flash the bootloader we can save key peristent parameters to
the end of the bootloader sector, allowing them to persistent across
changes of firmware type

This allows for factory temperature calibration
2021-01-21 13:09:21 +11:00
Andy Piper 07f199ea1a AP_HAL_ChibiOS: rename system_initialized() and add is_system_initialized() 2020-12-30 18:16:59 +11:00
Andrew Tridgell bf546f363d HAL_ChibiOS: don't init serial 1 and 3
these should not be treated as special. Initialising them early just
wastes memory if the end up not being used
2020-12-15 10:32:46 +11:00
Andrew Tridgell e54fc4b0de AP_HAL_ChibiOS: convert to using hal.serial() instead of hal.uartX 2020-12-15 10:32:46 +11:00
Andrew Tridgell 3ba46d5bd9 HAL_ChibiOS: enable reporting of watchdog reset on AP_Periph 2020-12-01 11:14:50 +11:00
Andrew Tridgell 4d171ec19a AP_HAL_ChibiOS: support uartI, allowing a total of 9 uarts
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00
Andrew Tridgell 280e9d1c41 HAL_ChibiOS: fixed bootloader build 2020-11-10 16:15:45 +11:00
Andrew Tridgell ac566763fe HAL_ChibiOS: disable loop delay on replay 2020-11-10 16:15:45 +11:00
Siddharth Purohit cdf8e369f1 AP_HAL_ChibiOS: create UAVCAN agnostic CANIface driver
HAL_ChibiOS
2020-08-19 17:31:09 +10:00
Peter Barker 48da4e523c AP_HAL_ChibiOS: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Andrew Tridgell 0ef66659ce HAL_ChibiOS: log WDOG message once a second
this copes with delayed mounting of the microSD, making it much more
likely we log the critical data
2020-04-29 07:36:55 +10:00
Andrew Tridgell c61cecdbc7 HAL_ChibiOS: report thread name in watchdog 2020-04-29 07:36:55 +10:00
Peter Barker 9ba2aecbb8 AP_HAL_ChibiOS: send statustext at regular intervals after watchdog reset 2020-03-31 14:30:11 +11:00
Peter Barker a59c3670c8 AP_HAL_ChibiOS: stash lr_thd in watchdog hardfault handler 2020-03-19 16:03:58 +11:00
Andy Piper 3d0cf7e12a AP_HAL_ChibiOS: hardware M4-Cortex and M7-Cortex (and H7) implementation of HAL FFT abstraction
implements an FFT engine based on the betaflight feature using ARM hardware accelerated CMSIS library
make the FFT feature optional
add dynamic gyro windows
add quinns and candans estimators and record in DSP state
disable DSP for boards with limited flash
calculate power spectrum rather than amplitude
start/analyse version of analysis to support threading
allocate memory in a specific region
constrain window size by CPU class
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Andrew Tridgell e8ab35a192 HAL_ChibiOS: fixed stdout in early startup bug
this caused a failure to boot on some boards if they tried to print
messages in early startup code before hal was initialised

thanks to @Shadowru for reporting the issue
2020-02-12 13:51:10 +11:00
Mirko Denecke b84dcd483d AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces 2019-10-21 08:01:56 +11:00
Andrew Tridgell 63f39c2bd6 HAL_ChibiOS: fixed build of iomcu firmware 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 12dd33ac2b HAL_ChibiOS: added logging of hardware fault information in watchdog
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
Andrew Tridgell 2d5e4dcfa2 HAL_ChibiOS: fixed SemLine data in WDOG msg
semline was being overwritten in the setup() call
2019-07-15 08:08:54 +10:00
Andrew Tridgell 0075b96f3a HAL_ChibiOS: added uartH 2019-07-12 17:01:21 +10:00
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