Commit Graph

23 Commits

Author SHA1 Message Date
Lefucjusz
32c6769cb6 [BH-1657][BH-1833][BH-1854] Add WFI and SDRAM self-refresh mode
* Added mechanism enabling CPU to
enter WFI mode when the OS is
in idle, what results in large
power consumption reduction.
* Added mechanism to switch SDRAM to
self-refresh mode before entering
WFI, what resulted in further power
consumption reduction.
2024-01-22 12:32:35 +01:00
Lefucjusz
3cbbeff551 [MOS-1011] Fix frequency switching stability
Multiple fixes of clock switching related
stability issues:
* added RC oscillator hysteresis as in NXP example;
* changed DCDC converter config;
* configure PLL2 to be able to run on any CPU
frequency level;
* added switching to 1.275V (overdrive) voltage
when applying any clock change above 12MHz as
well as LDO or bandgap switching, as done in
Mbed OS' lpm.c for RT1050;
* changed BMCR AXI queues weighs for SDRAM
in JLink scripts to disable operations
reordering, as it is known to cause data
integrity issues;
* extracted some code to separate files;
* smaller or bigger code cleanups.
2023-09-07 17:19:15 +02:00
Lefucjusz
e1d3862feb [BH-1673] Fixes for Harmony random resets
Next part of Harmony random resets fixes:
* added RC OSC startup delay as in newest lpm.c;
* changed order of clock source, oscillator and
LDO switching;
* removed connecting internal DCDC load resistor,
as it is only required to speed up converter
startup after it was turned off completely;
* changed DCDC operation mode to continuous
conduction;
* set low VDD_SOC_IN voltage back to 950mV as
suggested in RM.
* added switching DCDC converter mode to
discontinuous conduction for two lowest CPU
clock frequencies, as using CCM mode resulted
in very high current consumption that would
shorten Harmony's life on battery
significantly.
2023-05-29 14:22:05 +02:00
Bartosz
01857dd1bd [MOS-786] Added support for A/B boot codes in OS
Further implementation of A/B booting
2023-01-19 16:41:56 +01:00
Maciej Gibowicz
7f9bc6bf6f [EGD-7922] Added Permanent Frequency Setting
Added Permanent Frequency setting in Advanced Developer
Mode with simple set window.
2021-12-06 13:57:38 +01:00
Maciej Gibowicz
7394811560 [EGD-4809] Add LDO switching
To reduce the power consumption, we switch LDO
to the low power mode.
2021-09-09 09:34:59 +02:00
Maciej Gibowicz
1134a38584 [EGD-4875] Add internal load resistor switching
To reduce the power consumption, we disconnect
internal load resistor
2021-09-08 11:03:55 +02:00
Piotr Tański
90e7a48198 [EGD-7362] Merge release/0.76.1 into master
Merge release/0.76.1 into master.
2021-09-02 11:12:59 +02:00
Wojtek Rzepecki
b19ddb719e [EGD-6928] Fix system powe instability
Improved frequency switching mechanism
2021-07-15 11:36:40 +02:00
Lucjan Bryndza
5324fcc0a6 [CP-312] Add reboot to update function
Because update procedure it is splitted to the two stages
downloading and update throught separate binary we need
to pass ecoboot special flag to request reboot to updater
bin after update procedure.
This patch adds this functionality to the PureOS.

Signed-off-by: Lucjan Bryndza <lucjan.bryndza@mudita.com>
2021-07-07 10:46:29 +02:00
Maciej Gibowicz
9f87dead1c [EGD-4853] Add Wake up GSM modem on demand
System wakes up Cellular when there is a need to communicate
with the modem, e.g. to handle an outgoing call
2021-03-10 13:08:48 +01:00
Maciej-Mudita
11aa4c7ffb [EGD-5382] Add LowPower CpuSentinels
In order to synchronize the Low Power mode, the services were
immediately informed about the frequency change,
so that they can update their resources (e.g. PWM filling)
and services may request the maximum CPU frequency in order
to perform a task (e.g. screen redraw, telephone conversation)
2021-02-12 09:40:36 +01:00
Maciej-Mudita
ec56afc933 [EGD-5381] Add Low Power Drivers
Peripherals clock synchronization dependent on PLL2
2021-02-10 08:46:13 +01:00
Maciej-Mudita
1521858134 [EGD-4887] Add PLL2 clock switching
Pll2 will be disabled at the lowest CPU frequency,
which will save power
2021-01-12 10:02:58 +01:00
Maciej-Mudita
0c0fdef19b [EGD-4881] Add oscillator clock switching mechanisms
Osc will change automatically at the lowest CPU frequency,
which will save power
2021-01-08 10:00:11 +01:00
Maciej-Mudita
f9b9967b0e [EGD-4694] Add CPU frequency shift mechanism
The CPU frequency changes automatically which saves energy
2020-12-22 18:00:57 +01:00
Maciej Gibowicz
0cc2af0850 [EGD-4472] PowerManagement: Separation of CPU clock into separate clock domain (#1125)
Change CPU clock into separate clock domain

We can control the CPU frequency independently of the peripherals.
2020-12-03 12:04:53 +01:00
Radoslaw Wicik
2276ceed67 [EGD-3743] Update copyrights in fies 2020-10-20 12:55:10 +02:00
Adam Dobrowolski
51e8dac933 EGD-3056 Linux power manager stub - added missing override for Reboot & fixed typo in ServiceCellular 2020-04-15 16:50:19 +02:00
Radoslaw Wicik
a8573a404c Apply new style 2020-03-17 10:03:16 +01:00
Mateusz
99c0143ca6 WiP: Power switch off, ready to be tested 2019-10-03 12:18:04 +02:00
Mateusz
289236d863 WiP: Handling resume/suspend requests in incorrect state 2019-09-09 08:31:06 +02:00
Mateusz
383d40fc52 Fix: Linux build 2019-09-09 07:55:31 +02:00