Kirill Shilov
8a51c73e4a
AIRLink: added LTE module enable pin to hwdef
2022-12-18 07:19:42 +11:00
Andrew Tridgell
07f80c2442
HAL_ChibiOS: make check_limit_flash_1M() available in main firmware
2022-10-06 10:58:46 +11:00
Andrew Tridgell
e5b46eb2a7
HAL_ChibiOS: fixed build error with gcc 11.3
2022-10-06 10:45:49 +11:00
Andrew Tridgell
f8b1169165
HAL_ChibiOS: rename ecc_raw to apsec_data
2022-09-05 12:35:37 +10:00
bugobliterator
0c78f8bac2
AP_HAL_ChibiOS: add support for booting into DFU
2022-08-30 10:51:06 +10: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
Andrew Tridgell
308717d5eb
HAL_ChibiOS: enable ITCM and DTCM on H7 at startup
...
these may have been disabled by the px4 H7 bootloader
2022-06-15 17:28:40 +10:00
Lokesh Ramina
adfb2f9cad
AP_HAL_Chibios: add_12Mhz_Clock_stm32F405
...
There was no option for 12Mhz for STM32F405
2022-05-12 17:40:21 +10:00
Andrew Tridgell
e73f868fc0
HAL_ChibiOS: disable fatal exceptions for DMA errors
...
this zeros-watchdog was caused by a SPI DMA error on STM32F405:
https://discuss.ardupilot.org/t/crash-with-4-2-0-beta-and-4-3-0-daily-bdshot/83297
we had incorrectly left these internal errors enabled when asserts
were not enabled. That led to a osalSysHalt()
without these we get an spi_fail internal error, caught by the
SPIDevice code
2022-04-19 21:52:53 +10:00
Andy Piper
e89eb34d55
AP_HAL_ChibiOS: add I2C and compass backend to drivers in memory on H750
...
move more of EKF into memory on H750
move rc handling into memory on H750
disable double math on SPRacing H7
2022-04-12 09:19:45 +10:00
Andrew Tridgell
392e80001f
HAL_ChibiOS: fixed H7 flash storage
...
this fixes the flash re-init problem when flash storage fills on
H7. It was caused by rejecting writes where one or more of the 32 byte
chunks was not all 0xff but was equal to the current data. That
happens when writing to the sector header in AP_FlashStorage
it also moves the interrupt disable inside the loop to allow for
other interrupts to run between blocks
2022-04-05 17:46:52 +10:00
Andrew Tridgell
a0c867bce7
HAL_ChibiOS: disable interrupts during flash operations
...
we have now shown that interrupts being enabled during flash
operations can cause the infamous "68ms" bug, or watchdog when using a
32 bit timer on boards using flash for storage
The issue is quite repeatable with a load of a very large waypoint
file (over 500 waypoints) using "wp ftpload" in MAVProxy. This puts a
huge load on flash storage.
Our current working theory is that while doing flash writes for
storage on dual-bank we block access to only one bank, so if another
thread uses a timeout function with a short timeout while the flash
write is happening and chVTDoTickI calls code which crosses the flash
bank boundary then it can cause chVTDoTickI to violate the assumption
that no more than CH_CFG_ST_DELTA ticks pass while it is calculating
the value to set in the system timer. In that case we get a delay of a
full timer wrap, which is 68ms on boards with 16 bit timer and 70
minutes on boards with 32 bit timer
2022-04-05 17:46:52 +10:00
Andy Piper
ceef68e07b
AP_HAL_ChibiOS: allow H7 480Mhz clock speed to be configured in hwdef via MCU_CLOCKRATE_MHZ
2022-03-16 20:37:30 +11:00
bugobliterator
90a660b445
AP_HAL_ChibiOS: update clock tree to have FDCAN Base clock at 80MHz
2022-03-11 18:13:54 +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
Andy Piper
f840315aa4
AP_HAL_ChibiOS: clock H750 at 480Mhz when using 8Mhz, 16Mhz and 24Mhz crystals
2022-02-23 18:19:56 +11:00
Andrew Tridgell
f2308e96a9
HAL_ChibiOS: added stm32_was_software_reset()
2022-02-17 14:37:41 +11:00
Andy Piper
48c21299f8
AP_HAL_ChibiOS: hwdef for SPRacingH7
...
hwdef for DevEBoxH7v2
pin definitions for STM32H750
add QSPI to DevEBox bootloader
add external flash to DevEBox
rename EXTERNAL_PROG_FLASH_MB to EXT_FLASH_SIZE_MB
Add support for EXT_FLASH_RESERVE_START_KB and EXT_FLASH_RESERVE_END_KB
Disable HAL_ENABLE_SAVE_PERSISTENT_PARAMS when there is no bootloader flash available
relax storage health status with SD card backend
don't check SD card health unless USE_POSIX
binary sections rearranged on external ram
manage RAMFUNC through ldscript and optimize function placement in external flash
inline timer functions
optimize placement of ChibiOS and functions in ITCM and AXI RAM
fix chibios features on bootloader build with external flash
change H750 memory layout
increase line storage for SD card based parameters
comment external flash linker script
move vtables into DTCM
update ram map for H757
enable crashdump support with external flash
correct bootloader pins and generator on SPRacingH7/DevEBoxH7v2
setup external flash reserve regions
allow different RAM_MAP for external flash on H750 and H757
2022-02-09 12:47:55 +00:00
Andrew Tridgell
e07057d24f
HAL_ChibiOS: support SDIO 48MHz clock on F412
2022-02-02 07:42:23 +11:00
Andrew Tridgell
040ff007ea
HAL_ChibiOS: fixed some F4 clocks, and support no crystal on F4
...
this fixes up some of the F4 varients that were running at the wrong
clock, and also gives support for running F4s with no crystal
2022-01-29 18:57:33 +11:00
Andrew Tridgell
61ecf0c443
HAL_ChibiOS: cleanup SDMMC enable defines
...
ensure both are set
2021-12-28 16:04:57 +11:00
Andrew Tridgell
146f394d64
HAL_ChibiOS: include fatfs format code
2021-12-28 16:04:57 +11:00
Andrew Tridgell
fbadc24fca
HAL_ChibiOS: support 12MHz crystal on L4xx MCUs
2021-12-07 10:23:54 +11:00
bugobliterator
f9bb9b4fc0
AP_HAL_ChibiOS: log heap and bss memory regions if enough space
2021-12-01 18:17:50 +11:00
bugobliterator
ee35350129
HAL_ChibiOS: setup for recording crashdump at the remaining flash space
2021-12-01 18:17:50 +11:00
bugobliterator
52c7886270
HAL_ChibiOS: fix issue with failing to write final buffer
2021-12-01 18:17:50 +11:00
bugobliterator
eae3fb016f
HAL_ChibiOS: dump per thread stack for crash
2021-12-01 18:17:50 +11:00
Andrew Tridgell
f7bc7b0d9b
HAL_ChibiOS: support more enable pins for late enable
2021-11-10 08:47:21 +11:00
bugobliterator
57e1fb1a81
HAL_ChibiOS: disable building CrashCatcher for non 2M boards
2021-10-30 19:24:57 +11:00
bugobliterator
91fdf6e875
HAL_ChibiOS: fix issue with writing the last byte
2021-10-30 19:24:57 +11:00
bugobliterator
70f606c480
AP_HAL_ChibiOS: restrict crash dump mechanisms only on boards with 2M flash
2021-10-30 19:24:57 +11:00
bugobliterator
909f59f0e0
HAL_ChibiOS: fix build with boards without HAL_CRASH_SERIAL_PORT
2021-10-30 19:24:57 +11:00
bugobliterator
a6b2018cbf
HAL_ChibiOS: fix build and serial crash dump for F4 based boards
2021-10-30 19:24:57 +11:00
bugobliterator
7d199f3e51
HAL_ChibiOS: record info into watchdog as well
2021-10-30 19:24:57 +11:00
bugobliterator
13c83f7010
HAL_ChibiOS: remove build of Crash dump to flash methods when !defined(HAL_CRASH_DUMP_FLASHPAGE)
2021-10-30 19:24:57 +11:00
bugobliterator
66b8b9cf74
HAL_ChibiOS: add support for dumping crash logs to flash page
2021-10-30 19:24:57 +11:00
bugobliterator
bd08d2d257
HAL_ChibiOS: move crashcatcher methods out from system.cpp into hwdef common
2021-10-30 19:24:57 +11:00
bugobliterator
c32bd845f2
HAL_ChibiOS: build crashcatcher lib alongside chibios
2021-10-30 19:24:57 +11:00
Andrew Tridgell
5a68e21435
HAL_ChibiOS: support STM32L431
2021-10-17 20:30:20 +11:00
Andrew Tridgell
f1ea4f5d01
HAL_ChibiOS: use a 16 bit sysinterval_t on 16 bit timers
...
prevent mixed size subtraction errors
2021-10-17 20:29:42 +11:00
Andrew Tridgell
25324ae0e2
HAL_ChibiOS: support SDMMC2 for sdcard
2021-10-12 15:47:51 +11:00
Nick Exton
ffa2bba35c
HAL_ChibiOS: add missing return to Dual CDC get_usb_baud()
2021-10-12 10:54:44 +11:00
bugobliterator
f298ea406e
HAL_ChibiOS: enable RNG only for H7 based boards off for the rest by default
2021-10-07 19:43:11 +11:00
bugobliterator
fc4d59c5a4
HAL_ChibiOS: setup hw random number generator for stm32 chips
2021-10-07 19:43:11 +11:00
Andrew Tridgell
52124cf602
HAL_ChibiOS: fixed f1 bootloader build errors
2021-10-06 06:44:36 +11:00
Andrew Tridgell
8deaa1b46b
HAL_ChibiOS: fixed warning for USB
2021-10-06 06:44:36 +11:00
Andrew Tridgell
4daf4ad501
HAL_ChibiOS: lock in no warnings for chibios RTOS build
2021-10-06 06:44:36 +11:00
Andrew Tridgell
0212e23cd3
HAL_ChibiOS: added support for STM32L496 MCUs
...
good MCU for AP_Periph
2021-09-24 18:08:00 +10:00
Andrew Tridgell
2e4766fe54
HAL_ChibiOS: ensure HI_POWER periph is on
2021-09-07 10:40:44 +10:00
Siddharth Purohit
d484477a99
AP_HAL_ChibiOS: move to using PLL2_R_CK for QSPI
2021-09-01 17:10:53 +10:00
Siddharth Purohit
81dc237a19
AP_HAL_ChibiOS: move to using Instruction RAM with External Flash setup
2021-09-01 17:10:53 +10:00
Siddharth Purohit
813e93a69c
AP_HAL_ChibiOS: do not reset GPIO for boards with external flash
2021-09-01 17:10:53 +10:00
Siddharth Purohit
4ba2835de1
AP_HAL_ChibiOS: add config for supporting load from external flash
2021-09-01 17:10:53 +10:00
Andrew Tridgell
584fb7cd7b
HAL_ChibiOS: use more USB buffers on higher end F7 chips
2021-08-31 10:12:00 +10:00
Andrew Tridgell
4cebcede31
HAL_ChibiOS: switched to fix allocation for BMDA streams on H7
...
this avoids issues with BDMA stream assignments due to bugs found
while testing boards with both I2C4 and SPI6
2021-08-25 07:11:31 +10:00
Andrew Tridgell
57e87b9820
HAL_ChibiOS: measure MCU temperature and ref voltage on H7
...
this uses ADC3 to measure the internal MCU temperature and the reference
voltage. This uses a currently unused BDMA channel
2021-08-25 07:11:31 +10:00
Andrew Tridgell
531ca4289e
HAL_ChibiOS: switch to minimum scheduling delta of 10us
...
this avoids an issue with the ChibiOS 20.3 virtual timer
implementation that can result in a scheduling slip equal to the
system timer period.
Andy has been suggesting this change for a while. I resisted it as I
thought it would impact on soft-serial parsing, but it turns out it
doesn't.
Fixes issue #18383
2021-08-23 10:45:44 +10:00
Andrew Tridgell
4fce1ae092
HAL_ChibiOS: added G491 support
2021-07-30 10:20:52 +10:00
bugobliterator
48b8fdfd48
AP_HAL_ChibiOS: make linecoding objects static arrays
2021-07-21 17:06:41 +10:00
bugobliterator
d1b0438412
AP_HAL_ChibiOS: add support for usb passthrough with baud changes
2021-07-21 17:06:41 +10:00
Michael Oborne
d622aad592
AP_HAL_ChibiOS: add get_usb_baud - support for usb baudrate
2021-07-21 17:06:41 +10:00
Siddharth Purohit
245f9d21b3
AP_HAL_ChibiOS: update clock config for FDCAN and External Flash
2021-06-30 19:34:36 +10:00
Siddharth Purohit
263fbbbdb0
AP_HAL_ChibiOS: add echo safe debug flag bouncebuffer
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
Andrew Tridgell
e1a5d73504
HAL_ChibiOS: fixed DTCM comment for F732
2021-05-09 06:44:19 +10:00
Andrew Tridgell
2dc4c50953
HAL_ChibiOS: fixed default OTP address and size
2021-05-09 06:44:19 +10:00
Andrew Tridgell
22f7218acf
HAL_ChibiOS: support 512k F7 parts for flash
2021-05-09 06:44:19 +10:00
Andrew Tridgell
03cae60471
HAL_ChibiOS: added STM32F732 support
2021-05-09 06:44:19 +10:00
Andrew Tridgell
8764d69e2c
HAL_ChibiOS: default SDMMC clock to 12.5MHz max on H7
...
this makes microsd considerably more reliable
2021-05-02 13:04:42 +10:00
Andy Piper
558631918c
AP_HAL_ChibiOS: add %age of total to thread statistics
...
don't display meaningless thread info
2021-04-21 17:14:11 +10:00
Andrew Tridgell
61c829d624
HAL_ChibiOS: only use SRAM4 for DMA for now
...
we can enable others when we have an allocation interface that
specifies the peripheral type
2021-04-07 17:10:45 +10:00
Iampete1
2377d33417
AP_HAL_ChibiOS: H7 set SRAM4 to no cache and allow DMA
2021-04-07 17:10:45 +10:00
Andrew Tridgell
ca948171fe
HAL_ChibiOS: fixed ADC error on revXY STM32H7 boards
...
with the new ChibiOS revision we were configuring for newer revisions
of the H7, which meant that we changed the ADC config. This broke ADC
readings on revX and revY H7 MCUs.
This PR fixes it in two ways:
1) change ChibiOS config to assume XY config chips
2) use 16 bit ADC for H7, which means the chip rev doesn't matter,
and also gives us 16x the resolution for ADC readinga, so we can
read smaller voltage and current values
2021-04-05 11:01:03 +10:00
Andrew Tridgell
2d4dfe8a2a
HAL_ChibiOS: fixed (unused) FF_FS_TIMEOUT
...
this change was harmless as we don't define FF_FS_REENTRANT
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ffb2876f58
HAL_ChibiOS: disable unused ChibiOS features
2021-03-23 12:01:20 +11:00
Andrew Tridgell
439a944801
HAL_ChibiOS: added support for STM32G474 MCU
2021-03-23 12:01:20 +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
5b59445471
AP_HAL_ChibiOS: fixes for build with 20.3.x ChibiOS
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
7af20e9ea3
HAL_ChibiOS: increase H7 serial buffer sizes
...
this takes better advantage of the new UART code. Log download over
USB gets to 730 kbyte/s. For comparison, with the 4.0 code on the same
H7 we get about 300 kbyte/s
2021-02-20 20:49:45 +11:00
Andrew Tridgell
5e0f175223
HAL_ChibiOS: adjust UART buffer sizes for new UART code
...
this gains about 20k of RAM, and has almost no impact on log download
speed at 921600 on a F427. The improved threading means we can afford
to have smaller buffers
2021-02-20 14:37:11 +11:00
Andy Piper
f9c5f9be00
AP_HAL_ChibiOS: make dshot DMA unlock event driven in order to allow unlocking from rcout thread
...
refactor rcout into separate thread and process all dshot requests there
move uart DMA completion to event model
process dshot locks in strick reverse order when unlocking
convert Shared_DMA to use mutexes
move UART transmit to a thread-per-uart
do blocking UART DMA transactions
do blocking dshot DMA transactions
trim stack sizes
cancel dma transactions on dshot when timeout occurs
support contention stats on blocking locking
move thread supression into chibios_hwdef.py
invalidate DMA bounce buffer correctly
separate UART initialisation into two halves
cleanup UART transaction timeouts
add @SYS/uarts.txt
move half-duplex handling to TX thread
correct thread statistics after use of ExpandingString
set unbuffered TX thread priority owner + 1
correctly unlock serial_led_send()
don't share IMU RX on KakuteF7Mini
observe dshot pulse time more accurately.
set TRBUFF bit for UART DMA transfers
deal with UART DMA timeouts correctly
don't deadlock on reverse ordered DMA locks
change PORT_INT_REQUIRED_STACK to 128
2021-02-20 14:37:11 +11:00
Andy Piper
2cdc202d19
AP_HAL_ChibiOS: use non-cachable SRAM3 for DMA on H743
...
Adjust SRAM1+SRAM2 to 256k as describe in the H743 reference manual
Provide access to mem_info() information
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper
6f5d5c2bf9
AAP_HAL_ChibiOS: allow asserts to be printed on a GPIO pin
2021-01-27 19:36:58 +11:00
Andy Piper
2823fa7245
AP_HAL_ChibiOS: never write bytes that have not been erased on H7
...
Be more careful about flash failure conditions on H7
2021-01-27 18:30:36 +11:00
Andy Piper
78735a946e
AP_HAL_ChibiOS: allow STM32_FLASH_DISABLE_ISR for H7
2021-01-27 18:30:36 +11:00
bugobliterator
8b90eb23e0
AP_HAL_ChibiOS: distcc doesn't like lst generation commands
2021-01-20 19:21:14 +11:00
pkocmoud
7b61a4d8c2
HAL_ChibiOS: support F7 with no crystal
2021-01-15 15:48:01 +11:00
Andy Piper
83c8807b39
AP_HAL_ChibiOS: when HAL_ENABLE_THREAD_STATISTICS is defined add ChibiOS thread stats to threads.txt
...
define HAL_ENABLE_THREAD_STATISTICS in hwdef.h
2020-12-30 18:15:05 +11:00
Andrew Tridgell
b4201436dd
HAL_ChibiOS: fixed flash space on 16k bl boards
...
this avoids the stm32_flash_recent_erase() function which added around
800 bytes to the bootloader. It is not needed
2020-12-17 12:51:25 +11:00
Andrew Tridgell
0c440d5675
HAL_ChibiOS: cope with flash erase in expected delay
...
when there has been a flash erase when we are definately in an
expected delay
2020-12-08 13:22:36 +11:00
Andrew Tridgell
ba69cd72c9
HAL_ChibiOS: improved stack checking and stack display
...
display both ISR stack and thread stacks. Show total stack sizes as
well as amount of stack remaining
2020-12-01 11:14:50 +11:00
Andrew Tridgell
84eac7642b
HAL_ChibiOS: improved stack checking
2020-12-01 11:14:50 +11:00
Andrew Tridgell
2a29b0fcf5
HAL_ChibiOS: fixed AP_Periph build with --enable-asserts
2020-12-01 11:14:50 +11:00
Andrew Tridgell
408f8b3940
HAL_ChibiOS: added check for overwrite of nullptr on H7
...
the STM32H7 has 64k of ITCM memory at address zero. We allow
allocation of everything except the first 1024 bytes. This checks for
those reserved bytes being overwritte, which would indicate a write to
nullptr
2020-11-18 17:14:43 +11:00
Andrew Tridgell
95a823a702
HAL_ChibiOS: added link list of all memory allocations
...
check all allocations for corruption on free() and malloc_check()
2020-11-18 17:14:43 +11:00
Andrew Tridgell
ce3e1a69ec
HAL_ChibiOS: added memory guard system
2020-11-18 17:14:43 +11:00
Andrew Tridgell
84bd59a7bb
HAL_ChibiOS: support H7 with no crystal
2020-07-10 13:33:51 +10:00
Andrew Tridgell
cfbfb27004
HAL_ChibiOS: support no-crystal F3 setups
2020-07-10 13:33:51 +10:00
Andrew Tridgell
6a1f43d5df
HAL_ChibiOS: fixed build with our old compiler
...
gcc 4.9 doesn't like static_assert() in C code
2020-06-07 14:11:48 +10:00
Andrew Tridgell
69676cd614
HAL_ChibiOS: support 24MHz f3 MCUs
2020-05-10 15:09:28 +10:00
Andrew Tridgell
3ec2ef787d
HAL_ChibiOS: fixed build warning
2020-04-29 12:20:19 +10:00
Andrew Tridgell
ce68e0fbb5
HAL_ChibiOS: fixed bootloader build
2020-04-29 07:36:55 +10:00
Andrew Tridgell
18e88e0ea3
HAL_ChibiOS: implement stack overflow hook
...
this needs C bindings to allow call from low level RTOS thread
switching code
2020-04-29 07:36:55 +10:00
Andrew Tridgell
f0c9f4003e
HAL_ChibiOS: implement thread_info()
2020-04-29 07:36:55 +10:00
Andrew Tridgell
d9efac2993
HAL_ChibiOS: only allow PLL override in clock selection part of header
2020-04-28 10:32:23 +10:00
Andrew Tridgell
29f538dec9
HAL_ChibiOS: use common header for STM32 clock config
...
avoid the need for clock config lines in most hwdef.dat files
2020-04-28 10:32:23 +10:00
Ivannikov Kirill
3ab1b29397
AP_HAL_ChibiOS: error if system clock not 1mhz on 16 CH_CFG_ST_RESOLUTION. prevent variable overflow
...
if CH_CFG_ST_FREQUENCY not match 1000000U on 16 bit CH_CFG_ST_RESOLUTION
we try to multiply now *= 1000000U/CH_CFG_ST_FREQUENCY; it may overflow 16 bit value.
2020-04-26 19:58:54 +10:00
Andrew Tridgell
db642717be
HAL_ChibiOS: fixed clock for FDCAN to be below 80MHz
...
we were running at 100MHz, which is out of spec
2020-04-24 16:55:03 +10:00
Andrew Tridgell
8e977183fe
HAL_ChibiOS: added mRoNexus
2020-04-23 07:28:13 +10:00
Andrew Tridgell
74f33d57c5
HAL_ChibiOS: avoid unnecessary H7 flash writes
2020-04-14 10:02:51 +10:00
Andrew Tridgell
822460ce7d
HAL_ChibiOS: fixed strdup() on ChibiOS
2020-03-28 15:28:03 +11:00
bugobliterator
8215537f99
HAL_ChibiOS: deprecate realloc for ChibiOS build, so as to return error when used
2020-03-24 10:32:14 +11:00
Peter Barker
1a123e5f8d
AP_HAL_ChibiOS: avoid referencing flash sector/page 22 on 1MB boards
2020-03-03 10:13:53 +11:00
Andrew Tridgell
9e0edba31d
HAL_ChibiOS: raised timer clocks to 200MHz
...
this gives more flexibility in setting up timers for DShot
2020-02-12 18:12:39 +11:00
Andrew Tridgell
982cff0695
AP_HAL_ChibiOS: make all semaphores recursive
...
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
2020-01-19 20:19:30 +11:00
Andrew Tridgell
2b7bffa906
HAL_ChibiOS: adjust dma reserve allocation
...
use larger target and allow for smaller allocation
2020-01-18 07:13:11 +11:00
Andrew Tridgell
56985f8c33
HAL_ChibiOS: added checking on bouncebuffer allocation
...
fail operations if DMA bouncebuffer alloc fails
2020-01-18 07:13:11 +11:00
Andrew Tridgell
fced7d78fc
HAL_ChibiOS: fixed clock src for I2C4 on H7
2020-01-08 05:56:23 +11:00
Andrew Tridgell
8ffd1050eb
HAL_ChibiOS: fixed build on STM32F3
2020-01-02 09:52:57 +11:00
Andrew Tridgell
faf34970e1
HAL_ChibiOS: automatically control pullup/pulldown on inverted UARTs
...
this makes setup of sport telemetry much easier
2020-01-02 09:52:57 +11:00
Andrew Tridgell
f732a482fe
HAL_ChibiOS: support wider range of clock frequencies
2019-12-20 16:50:48 +11:00
Andrew Tridgell
4f429e6c5a
HAL_ChibiOS: fixed handling of 16bit timer wrap
...
this fixes #12948
2019-12-09 12:43:39 +11:00
Andrew Tridgell
ef993f380f
HAL_ChibiOS: use system_halt_hook()
2019-11-27 14:12:04 +11:00
Andrew Tridgell
c1575654e2
HAL_ChibiOS: added optional debug code for hardfaults and panics
...
this implements a soft-serial print function that can be used to get
debug out on a GPIO pin in a panic
2019-11-27 14:12:04 +11:00
Andrew Tridgell
a90a2e20dc
HAL_ChibiOS: enable CAN callbacks
...
this allows for much more reliable CAN comms in AP_Periph
2019-11-09 17:11:32 +11:00
Andrew Tridgell
bc1de7a208
HAL_ChibiOS: support STM32F3xx MCUs
2019-11-01 10:53:53 +11:00
Andrew Tridgell
b5af1edf0d
HAL_ChibiOS: moved app_descriptor to start of flash
...
this prevents the bootloader from finding it's own image as a false
posititve in searching for the app_descriptor
2019-10-28 15:53:16 +11:00
Andrew Tridgell
d1bc0f236d
HAL_ChibiOS: added pragma once for watchdog header
2019-10-26 15:32:10 +11:00
Andrew Tridgell
fc8d9e8af5
HAL_ChibiOS: added RTC_BOOT_FWOK value for RTC reboot register
...
this is used in CAN firmware to know if the main app firmware has run
for long enough to be considered good
2019-10-26 15:32:10 +11:00
Andrew Tridgell
e6cb35090c
HAL_ChibiOS: fixed page size for STM31F105 flash
2019-10-21 19:12:01 +11:00
Andrew Tridgell
44f895ab16
HAL_ChibiOS: fixed for ZubaxGNSS build
2019-10-21 19:12:01 +11:00
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