Commit Graph

259 Commits

Author SHA1 Message Date
Lefucjusz
181feb4f40 cleanup 2024-08-20 15:40:34 +02:00
Lefucjusz
75c12a82e5 [BH-1895][BH-1909][BH-1910] New database structure for custom sounds
* Added creation of /user/media/app/alarm
directory that will be used to store
custom alarm sounds.
* Implemented new database structure.
* Adapted Alarm, Bedtime, Pre-wake up and
Snooze to new database structure.
* Added removing custom alarm files during
factory reset.
* Added fallback alarm sound mechanism.
* Cleanups, unifications.
2024-04-10 15:33:14 +02:00
Lefucjusz
4ad0f29ab4 [BH-1898] Fix of GUI freeze after intensive volume change
Fix of the issue that GUI would freeze for
several seconds if volume level was being
changed intensively for a while.
2024-03-06 14:05:55 +01:00
Lefucjusz
cdf5dbf557 [BH-1887] Speed up update process
* Added stream buffering for reading data
from tar archive with update.
* Increased size of the buffer used
for unpacking files from tar archive.
* Changed buffers data type from vectors
to raw heap-allocated arrays.
2024-02-28 09:58:46 +01:00
Lukasz Mastalerz
72f01e450b [BH-1815] Optimalize loading music files in relaxation
Add relaxation list refresh after files added or deleted
2023-11-22 10:03:28 +01:00
Lukasz Mastalerz
d9a1194e6f [BH-1688] Create a standard for logs
* Adding document describing how to use logger
* Adjusting logs to follow a new guide
* Change order in log header:
  line number is now before function name
2023-10-23 15:17:44 +02:00
Lefucjusz
ebcd139412 [CP-1962] Add Harmony color detection
* Added serial number based Harmony color
detection.
* Unified serial number handling for both
products.
2023-06-06 14:37:52 +02:00
Bartosz
9744d39137 [MOS-856] Another approach to MTP path in DeviceInfo
This time it's device-agnostic from purefs paths
2023-01-19 16:41:56 +01:00
Bartosz
60568d9247 [MOS-856] Add MTP path to DeviceInfo endpoint
Added MTP path for products to enable MC to use it instead
of hardcoded paths
2023-01-19 16:41:56 +01:00
Mateusz Piesta
ed806a4566 [MOS-807] Fix MTP root path
Fixed MTP root paths for both Harmony and
Pure due to the MTP implementation
not supporting hierarchical directories.
2023-01-19 16:41:56 +01:00
Mateusz Piesta
09bab001d0 [MOS-807] Update scripts
Added update scripts for both variants:
UDM update and further 'normal' updates.

Minor updates to the directories layout
2023-01-19 16:41:56 +01:00
Bartosz
ae4badbbeb [MOS-803] Further fixes for sync
Fixed paths for sync process
Added timeout for windows in recovery processes
2023-01-19 16:41:56 +01:00
Mateusz Piesta
bb0ef540b7 [MOS-803] DeviceInfo endpoint update
* Added some changes to the DeviceInfo endpoint
* Updated relevant code accordingly
* Removed unneeded paths definitions
* Minor bug fixes
2023-01-19 16:41:56 +01:00
Lefucjusz
e33468f54f [MOS-783] Change boot.bin to os.bin
Change the confusing system binary name.
2023-01-19 16:41:56 +01:00
Bartosz
a4406ec5a7 [MOS-783] Fixed tests and simulator for Harmony
Fixed tests and simulator for Harmony
after implementation of new filesystem
structure.
2023-01-19 16:41:56 +01:00
Lefucjusz
eeafb5f1be [MOS-783] Moved battery config file to '/user/data'
Moved battery config file from root
directory of user partition to
'data' directory to comply with
new directory layout design.
2023-01-19 16:41:56 +01:00
Lefucjusz
215e4d96b7 [MOS-783] Fixed Pure unit tests
Fixed (most of the) hardcoded
paths in Pure's unit tests.
2023-01-19 16:41:56 +01:00
Lefucjusz
afd7e7bc2c [MOS-783] Working Pure simulator after partition changes
Fixed iosyscalls so that Pure simulator
works after directory structure changes.
2023-01-19 16:41:56 +01:00
Bartosz
fab9068a52 [MOS-786] Added A/B booting support in OS
Added basic support for A/B booting
2023-01-19 16:41:56 +01:00
Lefucjusz
178fba165e [MOS-783] First part of new dir structure implementation
Works:
    - generating .img for Pure;
    - Pure boots after flashing new image and
    seems to be working fine;

    Not yet:
    - generating update package;
    - generating image for Harmony;
    - simulator;
    - path-related unit tests fail
    due to paths being hardcoded
    in test scenarios.
2023-01-19 16:41:56 +01:00
Pawel Olejniczak
b50eea9ed9 [CP-1427] Cleanup leftovers after old backup restore implementation
The synchronization mechanism has been freed from the constraints
of the old backup and restore implementation.
2023-01-19 16:41:56 +01:00
Mateusz Piesta
0a9846e4a8 [MOS-694] Move DB initialization from OS to build scripts
* Switched to DB initialization at compile time
* Organized and cleaned up db files directories(not finished completely)
* Fixed DB related unit tests
* Minor improvements to CMake
* Small fixes for GCC12 build
2023-01-19 16:41:56 +01:00
Pawel Olejniczak
d6a63be1fe [CP-1484] Add new mechanism for data synchronization between MOS and MC
This mechanism is similar to the current backup implementation,
but is stripped of irrelevant data that is not required by the
MC to perform data synchronization.
2023-01-19 16:41:56 +01:00
Mateusz Piesta
150f1cfdef [CP-1560] New user directory structure
* New user directory implemented.
* Generate user directory structure at compile
time instead of at runtime(Pure/Harmony).
* Changed MTP root path to /storage
* FileIndexer: Minor refactor
* FileIndexer: Fixed handling incorrect/non-existing
scan directories.
* Updated Repository module to correctly handle
many assets paths.
* MultimediaDB: Minor unit tests refactor and fixed
some issues when using simulator.
* MultimediaDB: Added new queries and unit tests
* Harmony/Relaxation: Updated to correctly
use audio assets from more than one source.
* Harmony/Relaxation: Updated model and list items
provider.
* Harmony/Relaxation: Fixed stack overflow in audio service
2023-01-19 16:41:56 +01:00
Lefucjusz
49e6eca966 [MOS-790] Workaround for ext4 booting
Workaround required to make MuditaOS
able to boot from ext4-formatted OS
partition.
Previously OS partition was mounted
on /sys and user partition on
/sys/user. This worked
when two separate FS drivers
(FATFS and lwext4) were used.
Changing OS partition to ext4
created an ambiguity whether
/sys/user is user partition
mountpoint or folder 'user'
on OS partition. This
workaround still may create
ambiguities, so the issue
should be fixed in one of
the further releases by
completely removing 'sys'
prefix.
2022-11-10 00:24:52 +01:00
Lefucjusz
b281a39f42 [MOS-744] Fix MTP integration
Fixed issues with integration
of MTP with filesystem:
- fixed memory corruption in
get_disk_properties();
- removed spare space hack
causing MTP to return invalid
free space and capacity of
the storage;
- added mtime and ctime
handling;
- minor code cleanup.
2022-10-27 18:47:27 +02:00
Pawel Olejniczak
fd5bef0ef2 [CP-1536] Fix storage memory overflow
The user was able to upload more files than there was free space.
In addition, the difference between the declared free space
through MTP and MC has been corrected.
2022-09-27 13:37:56 +02:00
Adam Wulkiewicz
fe708cdf31 [MOS-670] Change clang-format AlwaysBreakTemplateDeclarations to Yes
Add --all and --fix-all options to style-check-hook
2022-08-26 15:22:39 +02:00
Mateusz Piesta
2f42cd5e73 [BH-1424] FreeRTOS update
Updated FreeRTOS source code to 10.4.6.
Moved FreeRTOS sources to the third-party directory.
Added necessary changes to the CMake configuration.
Split FreeRTOSConfig.h. From now, each board has its own.
Added missing log headers.
Minor refactor of the module-os cmake.
Fixed stack overflows in bell application main and time service.
2022-04-07 13:31:28 +02:00
Lefucjusz
dd3eeaf1e2 [MOS-240] PVS Studio analysis bugs fix
Fixes to major part of issues found
by PVS Studio static analysis
mainly micro-optimisations
2022-03-28 13:57:08 +02:00
Maciej Janicki
2b2bb13a49 [MOS-296] Merge remote-tracking branch 'origin/stable'
Merge stable Harmony branch into merge wip branch
2022-03-09 19:27:50 +01:00
Mateusz Piesta
c1391090c6 [BH-1389] Catch2 unit tests optimization
Removed redundant recompilation of catch2 main
resulted in over 20% speed up of unit tests compilation.
2022-01-26 15:04:23 +01:00
Lucjan Bryndza
c812b5e458 [EGD-8198] Fix reporting block size on the fat patrtition
Fix statvfs() function for reporting proper block size on
the vfat parition

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2022-01-20 18:08:20 +01:00
Lucjan Bryndza
b83605d227 [EGD-7573] Add support for reliance edge fs
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.
2021-12-14 09:44:34 +01:00
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