~aleteoryx/muditaos

ref: 8883bf2df5dc6c01103e5c638f14ab9c7a9ca38a muditaos/module-bsp d---------
7fa508cd — Lefucjusz 2 years ago
[MOS-981] Fix crash on phone turn off

Fix of the issue that the phone
might sometimes crash on shutdown.
68b8330e — Lefucjusz 2 years ago
[MOS-981] Magnetometer driver cleanup

Cleanup of the magnetometer driver.
Added checks of all I2C operations
return codes and error messages
in case of failures.
433322b5 — Dawid Wojtas 2 years ago
[BH-1671] Reinit eMMC driver

Reinit eMMC driver if write/read transmission
failed.
f79313e3 — Lefucjusz 2 years ago
[BH-1661] E-ink display power management tweaks

Tweaks and changes required to optimize
power consumption for Harmony.
fdede98a — Lefucjusz 2 years ago
[BH-1672] Add logging of eMMC parameters

Added logging of eMMC storage card
parameters so that it's easy to
determine what chip is installed
in the device the logs are from.
d2bf42d4 — Adam Wulkiewicz 2 years ago
[BH-1655] Fix memory leaks in clock faces and shortcuts

Disable libphonenumber initialization since it is not used in Harmony
but takes around 1.4MB of memory

Add heap allocation statistics
2cbadc6a — Dawid Wojtas 2 years ago
[BH-1630] Turn off the device for low voltage

The system closes only if the SoC is 0%, but
it doesn't react if the voltage has low level.
The new implementation invokes the close
procedure if the voltage is less than 3.4V.
This solution should avoid possiblity to
hang the MCU.
f7980fea — Dawid Wojtas 2 years ago
[BH-1649] Reimplement I2C communication attempts

The CW2015 driver should avoid any logic.
Thus I2C communication attempts were moved
to the BatteryCharger which is product specific.
3934e718 — Lefucjusz 2 years ago
[MOS-000] Remove redundant newlines when printing clocks

As described.
9279e9ac — Dawid Wojtas 3 years ago
[BH-1628] Reinit I2C after bus error

A lack of timeout in I2C could cause
the worker could get stuck in a loop
if the communication has been broken somehow.
The Harmony is unresponsive in this case.
The only solution is just to perform a hardware
reset using Frontlight and Back buttons simultaneously.

There are also additional 5 attempts to read and write
transactions if the bus error occurs in the Fuel Gauge driver.
It should be sufficient but if it would still persists
the system just will read 0% SOC and shutdown system.
5098d060 — Dawid Wojtas 3 years ago
[BH-1627] Enable brownout detection

There is the possibility of hanging
the MCU due to a power glitch
if the voltage drops to 2.8V
and the system wants to use some
peripherals like the eink or the backlight.

To prevent this situation brownout
detection has been enabled
which monitors the 1.1V and 2.5V
LDO regulators. If the voltage
will drop to the trigger voltages
then the interrupt is invoked.
The interrupt checks the source
of the interrupt and then reset
the MCU using WDOG_B pin
which is connected to the main power source.

After restarting, the MCU checks
the voltage. If it is too low
the system enters SNVS mode.
c3ccf0fb — Dawid Wojtas 3 years ago
[BH-1554] Add delay after init external oscillator

Some Harmony devices are struggling to switch between
internal to external oscillators.
According to the newest version of the library
(lpm.c - Low Power Mode) the NXP is recommending
adding at least a 200us delay after
enabling the external oscillator.

Their implementation is not full because
the CPU speed used in the delay function is hardcoded.
So if the CPU has a frequency 4MHz the delay takes ~26ms.

To avoid that situation we use
the proper speed of the CPU in the delay function.
e1a73af2 — Lefucjusz 2 years ago
[MOS-176] Fix long turn off time

Fix of the issue that resulted in long
turn off time of the phone, which was
caused by unfortunate coincidence
of functions names - as a result the
one from the included header file was
called instead of the one from the
anonymous namespace inside the file,
what resulted on not cutting off
board power until the watchdog
triggered.
9ece62c1 — Lefucjusz 3 years ago
[MOS-903] Remove reboot to USB MSC mode

Remove mechanics enabling to perform reboot
to MSC mode by sending request to one of the
endpoints via serial port, as it is not
implemented in bootloader and may potentially
be unsafe.
c0577999 — Lefucjusz 3 years ago
[MOS-887] Fix black screen left after power off

Fix of the issue that after powering off
the phone with dark mode enabled the
screen remained black instead of being
cleared to white.
d28fdb65 — Lefucjusz 3 years ago
[MOS-882] Fix FLAC file playback with USB cable connected

Fix of the issue that caused system crash when
trying to play 96kHz FLAC file with USB cable
connected. The reason of the issue was the lack
of FreeRTOS heap space left, what caused
pvPortMalloc() to fail when allocating
memory for stream buffer.

Additionally minor code cleanup.
09bab001 — Mateusz Piesta 3 years ago
[MOS-807] Update scripts

Added update scripts for both variants:
UDM update and further 'normal' updates.

Minor updates to the directories layout
eeafb5f1 — Lefucjusz 3 years ago
[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.
fef2ad61 — Bartosz 3 years ago
[MOS-786] A/B Booting - fixed factory reset from menu

Now factory reset works both from ecoboot and from menu
afd7e7bc — Lefucjusz 3 years ago
[MOS-783] Working Pure simulator after partition changes

Fixed iosyscalls so that Pure simulator
works after directory structure changes.
Next