Definition power_management.h:27
virtual void enterDeepSleep(uint64_t timerUs)=0
virtual void allowAutomaticSleep(bool allow)=0
virtual void notifyWake()=0
virtual void waitForWake(uint32_t timeoutMs)=0
virtual bool initializeWakeSources(const board::Pins &pins)=0
Configure GPIO/button wake sources from the selected board's pin map.
virtual void reportPowerModes()=0
Emit a one-time power-mode diagnostic report.
virtual ~IPowerManagement()=default
virtual bool acquirePerformance(PerformanceProfile profile, const char *reason)=0
virtual bool initialize()=0
virtual bool setTestCpuFrequencyMHz(unsigned mhz)=0
Queue a development CPU-frequency override for the next controlled restart.
virtual bool getPowerModeReport(char *buffer, size_t capacity)=0
Copy a power-mode report into a caller-owned buffer.
virtual unsigned testCpuFrequencyMHz() const =0
Return the queued development CPU-frequency override, or zero for automatic mode.
virtual void releasePerformance(PerformanceProfile profile, const char *reason)=0
Release a performance profile acquired earlier.
PerformanceProfile
Definition power_management.h:11
@ Interactive
Keep input and short event handling responsive while callbacks run.
@ Compute
Hold the platform's maximum CPU frequency for compute-heavy work.
@ DisplayRefresh
Hold the platform's display-safe frequency through drawing and refresh.