sysclk: fix cpu volt bug

this is the most hacky way ever to do this but hey, it works
This commit is contained in:
souldbminersmwc
2026-01-01 19:09:15 -05:00
parent ea20003df0
commit 7e4474dca5
2 changed files with 17 additions and 2 deletions

View File

@@ -100,13 +100,27 @@ ClockManager::ClockManager()
-2 -2
); );
threadStart(&governorTHREAD); threadStart(&governorTHREAD);
FixCpuBug();
this->context->speedos[HorizonOCSpeedo_CPU] = Board::getCPUSpeedo(); this->context->speedos[HorizonOCSpeedo_CPU] = Board::getCPUSpeedo();
this->context->speedos[HorizonOCSpeedo_GPU] = Board::getGPUSpeedo(); this->context->speedos[HorizonOCSpeedo_GPU] = Board::getGPUSpeedo();
this->context->speedos[HorizonOCSpeedo_SOC] = Board::getSOCSpeedo(); this->context->speedos[HorizonOCSpeedo_SOC] = Board::getSOCSpeedo();
}
void ClockManager::FixCpuBug() {
Board::SetHz(SysClkModule_CPU, 1785000000); // this will just set to the max when kip is unloaded so idgaf
svcSleepThread(5'000'000);
Board::SetHz(SysClkModule_CPU, 1963000000);
svcSleepThread(5'000'000);
Board::SetHz(SysClkModule_CPU, 2091000000);
svcSleepThread(5'000'000);
Board::SetHz(SysClkModule_CPU, 2397000000);
svcSleepThread(5'000'000);
Board::SetHz(SysClkModule_CPU, 1020000000);
svcSleepThread(5'000'000);
ResetToStockClocks();
} }
ClockManager::~ClockManager() ClockManager::~ClockManager()

View File

@@ -49,6 +49,7 @@ class ClockManager
ClockManager(); ClockManager();
virtual ~ClockManager(); virtual ~ClockManager();
void FixCpuBug();
SysClkContext GetCurrentContext(); SysClkContext GetCurrentContext();
Config* GetConfig(); Config* GetConfig();