VFAT partition should be mounted in RO mode by default
because writing to FAT filesystem is unsafe.
Writing is allowed only in the LFS filesystem.
If upgrade is needed FAT partition can be temporary
switched to RW mode using mount() syscall with REMOUNT flag
but it should be switched to RO mode again after upgrade.
Due to vfs deprecation there is need to remove all vfs calls from code. This PR covers module gui. There are some modifications in other modules included which are necessary because of build system issues.
Fix for unexcepted power failure by adding new implemented
function ff_fflush.
Improve write interface to complies with Linux lseek syscall.
Linux lseek syscall allows to lseek outsite the file size.
When write if lseek is out of range, write syscall write data to new
offset and fill the gap with zeros.
Free RTOS-FAT behaviour doesn't support sparse files, so we need
to implement this functionality manually on the sqlite3 vfs inteface
layer.
Co-authored-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* VFS: support .boot.ini and "current" and "previous" os types
* fixes for first batch of comments
- moved crc32 functions to a seperate file
- changed naming of constant with _
- removed one magic number
- crc methods now cross platform
* using smart pointer for buffer management
* created a simple USER_FILE macro for database names
* removed commented-out code
* style fixes
* Updated crc32 version
* Update module-vfs/vfs-utils.cpp
Co-Authored-By: Alek Rudnik <54846206+alekrudnik@users.noreply.github.com>
* Update module-vfs/vfs-utils.cpp
Co-Authored-By: Alek Rudnik <54846206+alekrudnik@users.noreply.github.com>
* renamed USER_FILE to USER_PATH macro, this was also
bromen and was returning incorrect paths, std::filesystem::path
behavior is causing these issues.
* VFS: remove method changed
* fixed path for assets copy
* UNITTEST: vfs test fixed
* VFS: changed computeCRC32 return type to void
* Max supported partition to 2 (was 1)
* EOL in vfs.cpp
* nullptr check in computeCRC32
include for log.hpp fixed
* flash_eMMC merged properly
* CRC32 commit update
* testBuild
* fix newline at start of smsdb.cpp
removed test from cmake
* no user/ folder on the root of emmc causes sqlite3 to fault
this adds a create empty user call for rt1051
* flash script fixes
- do not use build-*/sys
- common.sh contains a static list of iles that land on the flash
Co-authored-by: Alek Rudnik <54846206+alekrudnik@users.noreply.github.com>
* [EGD-2513] new API to create temparary contact entry if cannot be found
Calllog should search for contact.
* [EGD-2513] #pragma once in all headers file in module-db
* [EGD-2513] new constructor for CalllogRecord
* [EGD-2513] contact recognition for calllog DB API
* [EGD-2513] clean up
* [EGD-2513] displaying name and surname call and calllog
* [EGD-2513] enum instead bool
* [EGD-2513] fix in remporary contact creation
* [fix][EGD-2513] missing c_str
* [fix][EGD-2513] minor fixes in documentation
* [EGD-2513] unified entry read state for both sms and calllog dbs
* [EGD-2513] calllog db documentation
* [EGD-2513] code reviex fixed in ContactRecord