hoc-sys: add wip emc patcher and soctherm

This commit is contained in:
souldbminersmwc
2025-11-06 21:49:51 -05:00
parent 79e71db91a
commit 31e1f1e1c6
50 changed files with 39192 additions and 16 deletions

View File

@@ -73,19 +73,19 @@ void EMCpatcher::ApplyEMCPatch()
u64 emc_out_size = 0;
Result rc;
rc = svcQueryMemoryMapping(&mc_virt_addr, &mc_out_size, MC_BASE, MC_EMC_BASE_SIZE); // map mc
ASSERT_RESULT_OK(rc, "svcQueryMemoryMapping");
// rc = svcQueryMemoryMapping(&mc_virt_addr, &mc_out_size, MC_BASE, MC_EMC_BASE_SIZE); // map mc
// ASSERT_RESULT_OK(rc, "svcQueryMemoryMapping");
rc = svcQueryMemoryMapping(&emc_virt_addr, &emc_out_size, EMC_BASE, MC_EMC_BASE_SIZE); // map emc
ASSERT_RESULT_OK(rc, "svcQueryMemoryMapping");
// rc = svcQueryMemoryMapping(&emc_virt_addr, &emc_out_size, EMC_BASE, MC_EMC_BASE_SIZE); // map emc
// ASSERT_RESULT_OK(rc, "svcQueryMemoryMapping");
write_reg64(emc_virt_addr, EMC_RAS_0, 1);
write_reg64(EMC_BASE, EMC_RAS_0, 1);
write_reg64(emc_virt_addr, EMC_TIMING_CONTROL_0, 0x1); // apply shadow regs
write_reg64(EMC_BASE, EMC_TIMING_CONTROL_0, 0x1); // apply shadow regs
svcUnmapMemory((void *)mc_virt_addr, (void *)MC_BASE, MC_EMC_BASE_SIZE); // clean up
svcUnmapMemory((void *)emc_virt_addr, (void *)EMC_BASE, MC_EMC_BASE_SIZE);
// svcUnmapMemory((void *)mc_virt_addr, (void *)MC_BASE, MC_EMC_BASE_SIZE); // clean up
// svcUnmapMemory((void *)emc_virt_addr, (void *)EMC_BASE, MC_EMC_BASE_SIZE);
}
}