From 896ae8b014af3312cac52d92d9faad4a8090091e Mon Sep 17 00:00:00 2001 From: Lightos1 <124387232+Lightos1@users.noreply.github.com> Date: Wed, 8 Jul 2026 20:24:08 +0200 Subject: [PATCH] pcv_mariko: timing fixes dram_timings struct uses tRP and tRFC stock values in ns. nWR in emc_mrw needed to be adjusted. --- .../stratosphere/loader/source/oc/pcv/pcv_mariko.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp index 92e2b50f..cb40d156 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp @@ -530,11 +530,13 @@ namespace ams::ldr::hoc::pcv::mariko { table->la_scale_regs.mc_latency_allowance_hc_1 = (table->la_scale_regs.mc_latency_allowance_hc_1 & Mask2) | allowance1; table->la_scale_regs.mc_latency_allowance_vi2_0 = (table->la_scale_regs.mc_latency_allowance_vi2_0 & Mask2) | allowance1; - table->dram_timings.t_rp = tRFCpb; - table->dram_timings.t_rfc = tRFCab; + table->dram_timings.t_rp = tRP_values[0]; + const u32 tRFCabStock = tRFC_values[0] * 2; + table->dram_timings.t_rfc = tRFCabStock; table->dram_timings.rl = RL; table->emc_mrw2 = (table->emc_mrw2 & ~0xFFu) | static_cast(mrw2); + table->emc_mrw = (table->emc_mrw & ~0x70u) | 0x40; /* nWR /* table->emc_cfg_2 = 0x11083D; }