fix soctherm-BPMP

This commit is contained in:
souldbminersmwc committed 2026-08-25 19:19:19 -04:00
1 parent 209ff7afd8
commit ac41a498e1
3 files changed
+7 -1

No files matched your search

Binary file not shown.
+2 -1
View File
@@ -36,7 +36,7 @@ void MainLoop(HocClkBpmpSharedInfo &info) {
for (;;) {
const u32 temp1 = MMIO32(SocthermBase + SocthermSensorTemp1);
const u32 temp2 = MMIO32(SocthermBase + SocthermSensorTemp2);
info.tempCpu = TranslateSocthermTemp(static_cast<u16>(temp1 >> 16));
info.tempGpu = TranslateSocthermTemp(static_cast<u16>(temp1));
info.tempMem = TranslateSocthermTemp(static_cast<u16>(temp2 >> 16));
@@ -60,6 +60,7 @@ extern "C" void main() {
MainLoop(info);
printf("[hoc-bpmpfw]: PANIC\n");
/* Clear the magic so sysmodule knows of a panic */
info.magic = 0x0;
@@ -23,6 +23,7 @@
#include "../file/config.hpp"
#include "../file/file_utils.hpp"
#include "../mapping/mem_map.hpp"
#include "../tsensor/soctherm.hpp"
#include "bpmp.hpp"
#include "bpmpfw_bin.h"
@@ -121,6 +122,10 @@ namespace bpmp {
if (R_SUCCEEDED(rc)) {
if (state == PscPmState_Awake) {
svcSleepThread(500'000'000); // 500ms
/* I have no clue why this is needed as it wasn't needed before ¯\(ツ)/¯ */
tsensor::InitializeSoctherm();
Result wrc = StartBpmfwExecution();
if (R_FAILED(wrc)) {
fileUtils::LogLine("[bpmp] restart after wake failed: 0x%x", wrc);