[EGD-5086] Fix voice not starting when calling
Due to a race condition between source and sink voice is not always
starting when calling. Introduce audio stream connections to avoid
race condition and improve handling of audio start and stop operations.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
[EGD-4887] Add PLL2 clock switching
Pll2 will be disabled at the lowest CPU frequency,
which will save power
[EGD-5086] Change audio device switching logic
Upon hardware change event, audio profile had been switched multiple
times forcing redundant initializations of all related objects. Logic
has been optimized and prepared for further refactor. Now upon hardware
event objects are initialized exactly once.
[EGD-5078] Fix Debug UART conditional enabling
Uart debug will be enabled only when redirecting logs to Uart
[EGD-4881] Add oscillator clock switching mechanisms
Osc will change automatically at the lowest CPU frequency,
which will save power
[EGD-5050] Add brownout detection
Brownout detectection realized through charger driver
[EGD-5089] linux battery bsp charging done added
[EGD-4999] fix charger pluging but no icon on Linux
[EGD-5061] Fix lack of audio during call
Audio might have not work if audio streams
were reused. This was fixed by introducing proper
cleaning procedures.
[EGD-5004] Add USB-CDC echo mechanism
Added echo mechanism to USB-CDC, update usb_stack submodule
and added a test case to test harness
[EGD-4694] Add CPU frequency shift mechanism
The CPU frequency changes automatically which saves energy
[EGD-5036] Change new filesystem
Due to vfs deprecation there is need
to remove all vfs calls from code.
This PR covers module bsp.
[EGD-4978] Add Bluetooth virtual audio device
Bluetooth audio device requires different handling than other
audio devices. The commit adds proxy device that does not
handle requests itself but instead sends requests too Bluetooth
service.
[EGD-4952] Added stetings for battery critical level
[EGD-4952] Moved battery level check to separate module
[EGD-4952] Fixes for rt1051
[EGD-4952] Added battery check at init and if crit level changed
[EGD-4952] Added critical level check + messages
[EGD-4534] Change audio data path synchronization
Refactor audio data path to fix several synchronization issues and
excessive copy operations on large memory blocks. Introduce
audio::Stream data structure to allow connecting audio source and sink
with a zero-copy capability.
Introduce system mechanisms:
- critical section guard lock needed for stream synchronization
- non-cacheable memory allocator to allocate memory for DMA safe
buffers
Update the Googletest CMake template to match the capabilities of the
Catch2 template.
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
Signed-off-by: Hubert Chrzaniuk <hubert.chrzaniuk@mudita.com>