Files
Horizon-OC/Source/hoc-clk/sysmodule/src/governor.hpp
2026-04-06 15:57:10 -04:00

42 lines
1.3 KiB
C++

/*
* Copyright (c) Souldbminer and Horizon OC Contributors
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
* version 2, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#include <switch.h>
#include <hocclk.h>
#include "board/board.hpp"
#include "clock_manager.hpp"
#include <cstring>
#include "file_utils.hpp"
#include "board/board.hpp"
#include "errors.hpp"
#include "config.hpp"
#include "integrations.hpp"
#include <nxExt/cpp/lockable_mutex.h>
namespace governor {
extern bool isCpuGovernorInBoostMode;
extern bool isVRREnabled;
extern bool isGpuGovernorEnabled;
extern bool isCpuGovernorEnabled;
extern bool lastGpuGovernorState;
extern bool lastCpuGovernorState;
extern bool lastVrrGovernorState;
void startThreads();
void exitThreads();
void HandleGovernor(uint32_t targetHz);
void GovernorThread(void* arg);
}