Added support for reliance edge file system.
The initial port is done.
The whole effort is still WIP.
Left a note in readme file what should be done next.
Add support for the EXT4 filesystem using LWEXT4
Add minor VFS fixes
Add unittest for the EXT4 partitions
Reformat partition for use EXT4 filesystem
[EGD-7587] Initial cmake of the ext4
[EGD-7587] Block driver for the ext4
Initial version of the block driver for the ext4 device
[EGD-7587] Initial version of the EXT4 fs support
Initial version of the ext4 filesystem support
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
[EGD-7587] Mount unmount initial unit tests
Mount and unmount initial unit tests
[EGD-7587] Unit tests and fixes for ext4
Unit tests and fixes for the ext4 partition
[EGD-7587[ adjust flags
Adjust ext configuration flags
[EGD-7587] Change to generate ext4 image
Change image generation script to generate ext4 image
[EGD-7584] Change cache memory settings
Change cache memory settings
[EGD-7587] Change create image flags
Change create image flags
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
[EGD-7587] Git change lwext4 to the mudita version
Change LWEXT4 to mudita version
[EGD-7587] Modify ext4 implementation
Modify ext4 implementation according to the new lwext4
mudita branch. Some issues were fixed in this branch
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
[EGD-7587] Add to VFS rmdir syscall
Add to VFS missing rmdir for compliance POSIX std
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
Remove system dependency from charger driver implementation. Remove
circular, lambda driven dependency between charger and brownout
detector. Remove event manager dependency in driver as well.
Encapsulate some of charger logic in introduced battery controller.
Extract path configuration to the separate target to decouple charger
from vfs middleware.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Add ability to change an image name in the vfs code by decoupling vfs
from a so-called board code.
Introduce platforms as a hardware and os abstraction layer for product
code.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Cleaned up pattern of sharing source files among libraries
using cached lists, ultimately leading to silent linkage
failures. Symbols build repeatedly in different libraries
was linked depending on which library was passed in linker
command arguments first, so for example in same cases
cellular bsp files compiled in module-vfs was linked instead
of those from module-bsp leading to failure of cellular work
despite no explicite build failure.
Add file monitoring event mechanism to the
VFS subsystem. Now it will be possible to
monitoring file changes in the reistered
path
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
This patch add API for send power control message
for all disc registered in the disc manager. It is needed
for power management for suspend resume all discs.
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
Add optional mounting nfgconf partition on the EEPROM with
the LFS filesystem for the manufacturing data.
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
Add support for EMMC hardware partitions to the
disk manager
Hardware system partitions are visible as <device_name>sys<num>
Disk user partitions are visible as <device_name>part<num>
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
Integrate the CrashCatcher library in order to store phone state after
a fault occurs. The dumps are stored in the CrashCatcher hex format and
can be debugged using the CrashDebug stub built for x86_64 via the
'debug_crash_dump.sh' script.
This is a first commit when the emulator uses
the new filesystem core.
libiosyscall library read environment variable
IOSYSCALS_REDIRECT_TO_IMAGE
When IOSYSCALS_REDIRECT_TO_IMAGE=1 all syscalls
are redirected to the image. If env is not defined
or set to 0 only paths are translated and redirected
to the native linux syscalls
[EGD-5074] Remove free rtox library
Remove unneeded fat library from the freertos
[EGD-5074] Fix freertos mutex as unique
Add freertos mutex in the unique_ptr for avoid inclusion of the
freertos.h
[EGD-5074] Remove frertos-fat submodule
Remove uneeded fat freertos submodule
[EGD-5074] Add handle types in the vfs_subsystem
Add handle types in the vfs subsystem
[EGD-5074] Add submodule for hashmap
Add submodule for hashmap
[EGD-5074] Add support for dirent
Add support for dirent for new filesystem
[EGD-5074] Fix mutex class
Remove mutex in header
[EGD-5074] Remove old vfs from file indexer
File indexer should be fixed for use new vfs
[EGD-5074] Fix unit test vfs
Remove unit tests vfs for clas
[EGD-5074] Add Posix implementation with new fs
Add posix implementation with new fs core
[EGD-5074] Fix stdio syscalls
Fix all stdio syscalls
[EGD-5074] Fix iosyscalls scan family
Fix iosyscalls scan family
[EGD-5074] Fix native API
Fix native api
Work in progress some minor fixes
[EGD-5074] Fix lib stdio
Fix lib stdio
[EGD-5074] fix lseek return value in fat driver
Fix lseek return value in the fat driver
[EGD-5074] Unit test fix
Unittest fixes
[EGD-5074] Emulator syscalls
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
Due to vfs deprecation there is need to
remove all vfs calls from code.
This PR covers module bluetooth.
[EGD-5070] Review changes.
[EGD-5070] Change new filesystem in module bt
Due to vfs deprecation there is need to
remove all vfs calls from code.
This PR covers module bluetooth
Default automount and parse partitions according to
their configurations using new vfs core. Currently
old (without lfs) and new (with lfs) part schemes are supported
* GId modules updated
* Remove module
* Gitmodules update
* [EGD-4499] Global module VFS
* [EGD-4499] vfat driver in progress + fsfat
* [EGD-4499] fffat glue to our implementation.
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4498] Glue logic between ff_fat and disk mgr.
* [EGD-4499] Mount and unmount fat_fs.
* [EGD-4499] Filesystem mount seams to be working
* [EGD-4499] Missing umount volume removal
* [EGD-4499] Code review vol 1
* [EGD-4499] Missing erase element from map
* [EGD-4499] Missing mount umount
* [EGD-4261] Mount and unmount tests
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4499] Initial filesystem implementation
Iterate over directories are not completed yet
* [EGD-4261] unit test fix
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4499] Stat vfs for RT1051
* [EGD-4499] Small fix in the seek
* [EGD-4499] Directory handle fix
* [EGD4499] Completed ffat implementation
It is already completed vfat driver for vfs core
but it is not tested yet.
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD4499] Code review part #1
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD4499] Remove double dynamic allocation of mount point
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD4499] Partition out of range fix
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4499] Handle leak fix
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4499] VFS vfat completed.
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4499] File descriptors from 3 according to POSIX std
0,1,2 fds are reserved for stdin,stdout,stderr
Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* initial value for boot config
* run boot config methods after vfs has been marked as initialized
* type-os
* in case .boot.json is broken, re-write it with defaults
Currently calling any method from class vfs
causes aplication crash when methods are called before
vfs.Init() call. This commit prevent to crash end return failure
instead. The fix is related to any any vfs methods and methods called
through the standard syscall.
It is only the hotfix and it will be removed when new VFS subsystem
will be ready.
Co-authored-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4262] Disk manager API draft
* [EGD-4262] New filesystem master user class
* [EGD-4262] Directory fops
* [EGD-4262] Initial version of disk manager API
* [EGD-4261] Registering and finding block devices.
* [EGD-4262] Disk manager without partition parser
* [EGD-4262] Partition parser intial ver.
* [EGD-4262] Disk read driver for Linux
* [EGD-4262] Disk manager unittests.
This unittests should be improved. Currrently it checks
only minimum functionality. Boundary tests should be added
in the next stage.
Co-authored-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
* [EGD-4344] removed vfs-utils.cpp and moved all the functions
to utils or eventStore
* [EGD-4344] removed vfs-utils.cpp and moved all the functions
to utils or eventStore
* [EGD-4344] moved methods to utils::filesystem
* Update module-utils/Utils.cpp
Co-authored-by: Piotr Tanski <piotr.tanski@mudita.com>
* Update module-utils/Utils.cpp
Co-authored-by: Piotr Tanski <piotr.tanski@mudita.com>
* Update module-utils/Utils.cpp
Co-authored-by: Piotr Tanski <piotr.tanski@mudita.com>
* [EGD-4344] test fixes, linux fixes, GUI fixes
* [EGD-4344] rebase fixes
* [EGD-4344] bugfixes for rt1051 and mutex support in EventStore
Co-authored-by: Piotr Tanski <piotr.tanski@mudita.com>