Commit Graph

24 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
Patrick José Pereira 6672155e24 AP_FlashStorage: Fix test for AP_FLASHSTORAGE_MULTI_WRITE
AP_FLASHSTORAGE_MULTI_WRITE is not defined

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-04-17 16:00:39 +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
Andrew Tridgell 8792adb6f0 AP_FlashStorage: implement erase() method 2020-01-02 09:52:57 +11:00
Peter Barker 076768e550 AP_FlashStorage: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Peter Barker f5635a557a AP_FlashStorage: correct format-string warnings 2019-11-05 11:29:08 +11:00
Andrew Tridgell 53fe84e88a AP_FlashStorage: fix for F3 MCUs 2019-11-01 10:53:53 +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
Peter Barker 2ed8118cda AP_FlashStorage: adjust example so it does not exit 2018-09-19 22:40:20 -07:00
Andrew Tridgell 985a319c42 AP_FlashStorage: fixed build of example on small memory boards 2018-07-11 10:07:38 +10:00
Andrew Tridgell 14cf54b2f0 AP_FlashStorage: fixed build warning 2018-05-07 11:43:23 +10: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 3b5f66fd9f AP_FlashStorage: fixed size of flash storage 2018-01-15 11:46:02 +11: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 0e00c3cf9b AP_FlashStorage: reduced sector size for example
allows it to fit in SRAM on PX4
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