Files
MuditaOS/module-sys/common/include/system/messages/RequestCpuFrequencyMessage.hpp
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

40 lines
1009 B
C++

// Copyright (c) 2017-2023, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include <Service/Message.hpp>
#include <bsp/common.hpp>
namespace sys
{
struct IsCpuPermanent : public sys::DataMessage
{
public:
explicit IsCpuPermanent()
{}
};
struct IsCpuPermanentResponse : public sys::ResponseMessage
{
public:
explicit IsCpuPermanentResponse(bool permanent) : permanent(permanent)
{}
const bool permanent = false;
};
struct HoldCpuFrequencyPermanentlyMessage : public sys::DataMessage
{
public:
explicit HoldCpuFrequencyPermanentlyMessage(bsp::CpuFrequencyMHz request) : request(request)
{}
const bsp::CpuFrequencyMHz request;
};
class HoldCpuFrequencyPermanentlyResponse : public sys::ResponseMessage
{};
class ReleaseCpuPermanentFrequencyMessage : public sys::DataMessage
{};
} // namespace sys