Commit Graph

31 Commits

Author SHA1 Message Date
Thomas Watson
ed2c42ede2 AP_Filesystem: new API for performing optimal fsyncs 2025-02-17 16:33:51 +11:00
Andy Piper
0c541b72fd AP_Filesystem: provide SITL implementation for littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
8a992740f5 AP_Filesystem: add littlefs singleton for sync block use 2025-01-21 11:10:31 +11:00
Andy Piper
6390285598 AP_Filesystem: add littlefs based filesystem support
use correct read status for nor flash
implement format on littlefs
optimize device calls in littlefs flash usage
check for fileops allowed in littlefs
littlefs optimization and support for mtime
2025-01-21 11:10:31 +11:00
Andrew Tridgell
f8ce4183b8 AP_Filesystem: support QURT with posix filesystem
some features disabled
2024-07-12 15:56:48 +10:00
Thomas Watson
0ca37387be AP_Filesystem: guarantee load_file() data is null-terminated
Improves safety of use and clarity of users. Termination is not
included in the reported size to avoid changing user behavior or
misrepresenting the file contents.
2024-05-04 10:15:44 +10:00
Peter Barker
ac769014c4 AP_Filesystem: list virtual @SYS, @MISSION etc directories in /
Adds virtual directory entries for these virtual filesystems in /

RTL> ftp list
RTL> Listing /
 D @MISSION
 D @PARAM
 D @ROMFS
 D @SYS
 D APM
 D log
   V5_BT.dfu	10541
   bootlog.txt	297
   dataman	350216
   message-intervals-chan0.txt	7
Total size 352.60 kByte
ftp list @MISSION
RTL> Listing @MISSION
LIST: OP seq:7 sess:2 opcode:129 req_opcode:3 size:2 bc:0 ofs:0 plen=2 [2]
ftp list @ROMFS
RTL> Listing @ROMFS
   bootloader.bin	16448
   hwdef.dat	5743
   io_firmware.bin	40880
Total size 61.59 kByte

This PR also makes us *much* more lenient in what we accept for looking at virtual filesystems, so

ftp list @SYS
ftp list /@SYS
ftp list @SYS/
ftp list /@SYS/

should all work
2024-02-27 10:07:01 +11:00
Andy Piper
61dbc7a665 AP_Filesystem: remove unused variables 2024-02-22 14:40:55 +11:00
Andrew Tridgell
9beea49c3c AP_Filesystem: implement stat() call for lua 2023-12-11 18:00:38 +11:00
Iampete1
2c7e06dc5e AP_Filesystem: add crc 32 method 2023-12-05 11:03:58 +11:00
Andrew Tridgell
2703928fb2 AP_Filesystem: enable filesystem format on all boards
this works in ChibiOS 21.xx
2023-06-06 15:19:00 +10: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
414606ba31 AP_Filesystem: add support for blocking filesystem access 2023-05-31 18:40:17 +10:00
Peter Barker
1c54d18672 AP_Filesystem: replace HAVE_FILESYSTEM_SUPPORT with backend defines 2023-05-17 09:40:39 +10:00
Andrew Tridgell
cf79843661 AP_Filesystem: support file rename 2023-03-05 09:42:48 +11:00
Peter Barker
d633bd3f49 AP_Filesystem: add in-progress to formatsdcard process 2023-02-21 17:07:41 +11:00
Wiktor Maslowski
02b2b9b807 AP_Filesystem: fixed builds for ESP32 2022-11-28 12:23:07 +11:00
Peter Barker
c6989ed710 AP_Filesystem: fold AP_Filesystem_Available.h into AP_Filesystem_config.h 2022-09-15 10:53:02 +10:00
Andrew Tridgell
fa87019339 AP_Filesystem: added DT_LNK for symlinks 2022-05-04 17:48:45 +10:00
Willian Galvani
0e62d561d9 AP_Filesystem: add allow_absolute_paths to open(), implement it for posix backend 2022-03-22 10:19:21 +11:00
Andrew Tridgell
7bd45fcb50 AP_Filesystem: avoid ff.h in header
this avoids the chibios hal includes
2022-02-22 12:13:19 +11:00
Andrew Tridgell
7c57e1521c AP_Filesystem: support formatting of SDcard on ChibiOS 2021-12-28 16:04:57 +11:00
Buzz
7c893d7cc9 AP_Filesystem: add ESP32 support
Author: Charles Villard <charlesvillard10@gmail.com>
Author: Buzz <davidbuzz@gmail.com>
2021-11-01 17:40:31 +11:00
Peter Barker
df7b2982d3 AP_Filesystem: add fgets 2021-09-30 10:31:03 +10:00
Andrew Tridgell
773517a473 AP_Filesystem: added load_file() API
this makes it very easy to load a small file from sdcard or ROMFS
2020-11-18 09:11:36 +11:00
Andrew Tridgell
e429d578fa AP_Filesystem: added interface for mount/unmount
we need to hold the FATFS semaphore when doing mount/unmount, which
means we must go via AP_Filesystem_FATFS
2020-10-27 10:45:03 +11:00
Andrew Tridgell
9b14fa7ed9 AP_Filesystem: enable @PARAM, @ROMFS and @SYS with no microSD 2020-04-29 07:36:55 +10:00
Andrew Tridgell
6583f7c13e AP_Filesystem: added VFS system for multiple backends 2020-03-28 15:28:03 +11:00
Michael du Breuil
b0e232b30b AP_Filesystem: Split the available define to it's own header 2019-11-02 22:52:06 +11:00
Andrew Tridgell
b489e8a655 AP_Filesystem: added set_mtime() call 2019-08-27 15:40:43 +10:00
Andrew Tridgell
692abb11fa AP_Filesystem: define new filesystem API 2019-08-27 15:40:43 +10:00