Commit Graph

15 Commits

Author SHA1 Message Date
Peter Barker 37cddbeea6 AP_FlashStorage: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Andrew Tridgell 6dafa82c7c AP_FlashStorage: fixed build warning 2020-04-19 13:36:24 +10:00
Andrew Tridgell 8e83783b18 AP_FlashStorage: support H7 flash storage
this generalises AP_FlashStorage to support the 32 byte write
restrictions of the STM32H7
2020-04-14 10:02:51 +10:00
Peter Barker 2988c70627 AP_FlashStorage: clarify space-available-for-write check 2020-04-14 10:02:51 +10:00
Peter Barker a2b4713008 AP_FlashStorage: protect against infinite recursion in switch_full_sector 2020-04-12 09:43:13 +10:00
Peter Barker 076768e550 AP_FlashStorage: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Andrew Tridgell 40431100a9 AP_Flashstorage: fixed init bug on F1
we can't mark available just before we mark in use on F1
2019-10-21 19:12:01 +11:00
Andrew Tridgell 01472aa795 AP_FlashStorage: added support for STM32F1xx 2019-08-27 10:29:56 +10:00
Andrew Tridgell d2c9db3f1f AP_FlashStorage: fixed build error with -O0 2019-05-15 15:33:48 +10:00
Andrew Tridgell 6e1e89bb70 AP_FlashStorage: fixed a corruption bug
many thanks to @sh83 for tracking down this bug. When write_all() is
called with non-zero offset in init it ends up calling write with an
invalid offset, triggering a full reset

This fixes issue #10874
2019-03-28 14:33:44 +11:00
Andrew Tridgell 91e5f56242 AP_FlashStorage: fixed a race condition
fixes #7670

thanks to night-ghost for the bug report
2019-01-21 20:59:00 +11:00
Andrew Tridgell 1513246040 AP_FlashStorage: fixed two bugs found by night-ghost
this fixes two issues found by night-ghost. The first occurs if a 16
bit flash write is not atomic and only the first byte is written. Then
we could end up declaring the data invalid on reboot and erasing.

The second is a race in switching sectors. If power off occurs at the
wrong time we would trigger en erase on reboot.
2018-02-02 14:19:12 +09:00
Andrew Tridgell 0bfbc4bf72 AP_FlashStorage: added re_initialise() API 2018-01-15 11:46:02 +11:00
Andrew Tridgell bfd137e36a AP_FlashStorage: added erase_ok callback
this allows for simpler operation when application wants to allow
erase while disarmed.
2016-12-02 09:49:40 +11:00
Andrew Tridgell fc21e0f16f AP_FlashStorage: a flash storage driver
this will allow for a storage backend using flash sectors in a log
structure
2016-12-02 09:49:38 +11:00