Commit Graph

225 Commits

Author SHA1 Message Date
Lucjan Bryndza
1b7e8828d6 [EGD-7881] Fix stat syscalls in the VFS
Fix and unifying the stat() syscall in the VFS.
Fix the ftruncate() syscalls in the FAT and VFS.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-11-23 10:55:14 +01:00
Lucjan Bryndza
607b4299d4 [EGD-7883] Close all opened files when umount
Force closing all opened files when unmount
filesystem is called.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-11-12 11:21:18 +01:00
Lucjan Bryndza
978ca65491 [EGD-7945] Update documentation about the VFS
Update VFS documentation after change user
partition from the LittleFS to the EXT4 fs

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-11-10 10:54:02 +01:00
Lucjan Bryndza
e00b5ef5a4 [CP-670] Fix crash dump creation on HF
Fix the crash dump on the disk partition
when phone firmware Hard Fault CM7 core
error.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-11-09 16:31:19 +01:00
Alek Rudnik
da4f9ea2e2 [EGD-7423] FSL MMC driver may stuck in inifinite loop
There was an issue in FSL MMC driver.
Proper fix would be to swith to never 2.10 version - as it looks
like the issues is solved there - but this is out of scope of
this Jira case.
2021-11-05 13:37:00 +01:00
Lucjan Bryndza
ad058041a5 [EGD-7770] Fix hardfault with FileIndexer
Fix hard hault with fileindexer

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-10-12 14:22:59 +02:00
Piotr Tański
1d2f5cf7a4 [EGD-7754] Dates bumped in disclaimers
Dates bumped from 2020 to 2021.
2021-10-11 19:08:26 +02:00
Marek Niepieklo
a0677af340 [CP-615] Update existing backup/restore implementation in OS
[CP-648] Handle updated API requests

Updated B&R to handle new API
Extended error reporting
Backup/Restore code clean up

[CP-649] Check OS version compatibility during restore
Added check of OS and backup versions
Fixed adding of version.json to PurePhone.img
2021-10-11 16:19:20 +02:00
Lucjan Bryndza
aa8a698129 [EGD-7757] Improve stdlib iobuf MTP for ext4 fs
Improve stdlib file transfer performance for ext4
on the MTP file transfer

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-10-07 14:39:28 +02:00
Lucjan Bryndza
1348391002 [EGD-7742] Fix stat() on the ext4 fs
Fix stat() on the ext4 rootfs

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-10-07 14:39:28 +02:00
Lucjan Bryndza
4cec2dda0f [EGD-7741] Fix log headers in the master branch
Fix the log headers in the master branch

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-10-07 14:39:28 +02:00
Lucjan Bryndza
84515a251c [EGD-7731] Fix issue with diropen() on rootdir
Fix issue with opendir() on the root directory
and ext4 filesystem.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-10-07 14:39:28 +02:00
Lucjan Bryndza
ca75ebe449 [EGD-7587] Change user partition to ext4 fs
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>
2021-10-07 14:39:28 +02:00
Marek Niepieklo
22a02078cd [CP-162] Implement Logs directory
Added listing of log/crash dump files
Reorg'ed log/crash dump files locations
Added harness api/device_info
Updated test and tool scripts
2021-09-29 10:37:58 +02:00
Marcin Smoczyński
bd90e57516 [BH-907] Split utils module into components
Split module-utils into smaller components for better dependency
management. Fix many dependencies throughout the project.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
2021-09-23 15:14:40 +02:00
Marcin Smoczyński
f16a18d935 [BH-860] Decouple charger driver from system
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>
2021-09-20 12:19:48 +02:00
Wojtek Rzepecki
4562a0379b [BH-769] Add vfs configuration for pltaforms
Add platform dependent configuration of vfs
partitions

revert of layout config
2021-08-24 18:11:21 +02:00
Marcin Smoczyński
b355d5ce00 [BH-733] Cleanup target dependencies
Remove obsolete target dependencies across modules.
Remove 'cross' and 'unittests' targets.
Refactor some remaining target dependencies to use board include macro.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
2021-08-13 01:43:56 +02:00
Marcin Smoczyński
74ae1a6589 [EGD-7031] Remove UT deps to the production image
Remove dependency to the production image by creating separate sysroot
for test assets alongside with a test image Test.img.

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
2021-07-27 23:36:37 +02:00
Marcin Smoczyński
9267e2d871 [EGD-7161] Remove image name reference in vfs
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>
2021-07-21 12:53:47 +02:00
Lucjan Bryndza
b652f098a0 [CP-326] Reformat recovery partition as littlefs
Recovery partition will be needed by update process for store and
process update data recovery etc
But using fat partition is due to
problem with power loss in not
recommended.
This patch change BACKUP partition to the LFS

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-07-15 11:05:18 +02:00
DariuszSabala
6eeb1d7570 [BH-628] Cleaned up module-vfs cmake
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.
2021-07-14 15:42:14 +02:00
tomaszkrosnowski
e05ddbfdd9 [EGD-7010] Remove sensitive data from logs
Sensivite data like first/second name, messages and notes content,
dialed gsm numbers etc are removed from logs to guarantee security for
Pure users.
2021-07-08 11:43:35 +02:00
Lucjan Bryndza
220024b396 [CP-315] Remove old fat only partition layout
Remove support for FAT only pattitions layout.
The fat only partition scheme support was needed
only in transition to the new VFS, now is not
longer required
2021-07-08 09:58:55 +02:00
Lukasz Skrzypczak
028804eab6 [BH-459] Moved fatfs to third-party v2
2nd approach to moving fatfs to third-party. Declared as INTERFACE.
2021-06-18 02:21:12 -07:00
Mateusz Grzegorzek
0684b1271b [BH-515] Create main Bell app
Create main Bell app
2021-06-15 16:02:40 +02:00
Radoslaw Wicik
1a2e12af1a [BH-373] Convert utils json into a lib
Moving json to a third-party standalone library.
2021-06-11 09:41:44 +02:00
Radoslaw Wicik
943fef9643 [BH-353] Add Documentation for main targets
* clean up mimimu required cmake version
* fixes for release workflow

Add documentation for targets, fixes for cmake
and release workflow.
2021-06-11 09:07:41 +02:00
Lukasz Skrzypczak
7fee0d9cfb [BH-378] Utils move log to library
Moved log to separate library
2021-06-08 12:24:29 +02:00
DariuszSabala
a360d13b5e [BH-460] Moved TPLIB littlefs
Moved littlefs library to dedicated third party directory,
fixed include paths
2021-06-04 11:28:33 +02:00
Lucjan Bryndza
325f8696b8 [EGD-6835] Fix UT link errors with inotify
Fix UT linkage error when trying to link with
libiosyscalls with inotify mechanism

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-06-01 13:06:38 +02:00
Lucjan Bryndza
2f3e24c7d5 [EGD-6835] Add inotify mechanism in the VFS
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>
2021-06-01 13:06:38 +02:00
Lucjan Bryndza
dd3701cf02 [EGD-6752] Fix missing lock guard in the VFS driver
Fix missing lock guard in the device health status method.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-05-12 16:30:26 +02:00
Lucjan Bryndza
89c263c03b [EGD-6518] Change optional methods for the DM
Change numer of minimal optional methods required by the
block device in the disk manager

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-05-12 15:34:20 +02:00
Lucjan Bryndza
101afc48c1 [EGD-6518] Add EEPROM block device driver for VFS
Add block device driver for the factory EEPROM memory
needed for factory settings (aka personalizations)

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-05-12 15:34:20 +02:00
Lukasz Skrzypczak
9d94c84cd9 [EGD-6576] Create EEPROM low level driver
Working eeprom driver.
2021-05-10 12:40:16 +02:00
Lukasz Skrzypczak
de22ef3999 [EGD-6576] WiP I2C HAL API need to be modified
WiP
2021-05-10 12:40:16 +02:00
Adam Dobrowolski
cfa4716db7 [EGD-6652] Added minimalistic vfs README
It wasn't documented, minimal information added on how to mount
PurePhone partitions
2021-05-05 12:32:06 +02:00
Maciej Gibowicz
fa61bb38cd [EGD-5661] Add power management for filesystem
Add peripheral control (USDHC and PLL2 clocks)
for file system support.
This will save energy and extend battery life.
2021-04-22 14:05:57 +02:00
Lucjan Bryndza
0089b9097f [EGD-6597] Add PM control for all disc in DM
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>
2021-04-22 09:05:55 +02:00
Lucjan Bryndza
124b6cb6c1 [EGD-6558] Add automount mechanism of the mfgconf
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>
2021-04-19 12:15:20 +02:00
Lucjan Bryndza
b04b66e8e0 [EGD-6522] Add EEPROM emulation in the emulator
Add possibility to emulate eeprom in the linux emulator
2021-04-16 12:29:56 +02:00
Lucjan Bryndza
8818b30d1e [EGD-6075] Add support for emmc system partitions
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>
2021-04-15 09:19:56 +02:00
Lucjan Bryndza
2a17ec9254 [EGD-6075] Fix partition name typo
Fix partition name typo in the disk manager
2021-04-15 09:19:56 +02:00
Marcin Smoczyński
332aed9365 [EGD-6507] Enable per-module testing
Add per-module:
 - test build
 - test execution
 - coverage reporting (xml/html).

Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
2021-04-13 15:16:59 +02:00
Wiktor S. Ovalle Correa
3fe2bff567 [EGD-3469] Fix assets and image creation
Preparing and copying of assets to the image was unreliable.
Switched from cmake mechanism to rsync, making resulting
scheme universal and reducing output folder pollution.
2021-04-09 12:47:57 +02:00
Artur Śleszyński
33d652c1a1 [EGD-6156] Create crash dumps
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.
2021-04-02 14:58:42 +02:00
Roman Kubiak
6bc6eccc34 [EGD-5565] Fix update process on new lf filesystem
These changes are needed for update to work with new
LFS fileystem, also minor bugfixes are included.
2021-03-11 07:35:31 -08:00
Lucjan Bryndza
7bcc1c9bd4 [EGD-6013] Fix no copy syscall
Due to lack of some filesystem syscalls std::filesystem::copy
functions family doesn't work. This path add missing syscalls
in the FS layer.
2021-03-10 19:05:07 +01:00
Roman Kubiak
2a29e27996 [EGD-5757] Fix backup API
Fix backup endpoint to work with new paths and FS api
The flow is based on the design in confluence.
2021-02-25 16:04:04 +01:00