diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp index fa2d28bf..4afaedbf 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp @@ -175,14 +175,14 @@ namespace ams::ldr::hoc::pcv { PATCH_OFFSET(&(entry->cvb_pll_param.c0), (C.marikoGpuVoltArray[i] * 1000)); ClearCvbPllEntry(entry); } else { - PATCH_OFFSET(&(entry->cvb_pll_param.c0), (entry->cvb_pll_param.c0 - C.commonGpuVoltOffset * 1000)); + PATCH_OFFSET(&(entry->cvb_pll_param.c0), (u32)((s32)entry->cvb_pll_param.c0 + C.commonGpuVoltOffset * 1000)); } } else { if (C.eristaGpuVoltArray[i] != 0) { PATCH_OFFSET(&(entry->cvb_pll_param.c0), (C.eristaGpuVoltArray[i] * 1000)); ClearCvbPllEntry(entry); } else { - PATCH_OFFSET(&(entry->cvb_pll_param.c0), (entry->cvb_pll_param.c0 - C.commonGpuVoltOffset * 1000)); + PATCH_OFFSET(&(entry->cvb_pll_param.c0), (u32)((s32)entry->cvb_pll_param.c0 + C.commonGpuVoltOffset * 1000)); } } ++entry; @@ -190,7 +190,7 @@ namespace ams::ldr::hoc::pcv { if (C.commonGpuVoltOffset && !(isMariko ? C.marikoGpuUV : C.eristaGpuUV)) { cvb_entry_t *entry = static_cast(gpu_cvb_table_head); for (size_t i = 0; i < customize_entry_count; ++i) { - PATCH_OFFSET(&(entry->cvb_pll_param.c0), (entry->cvb_pll_param.c0 - C.commonGpuVoltOffset * 1000)); + PATCH_OFFSET(&(entry->cvb_pll_param.c0), (u32)((s32)entry->cvb_pll_param.c0 + C.commonGpuVoltOffset * 1000)); ++entry; } } diff --git a/Source/hoc-clk/sysmodule/src/mgr/clock_manager.cpp b/Source/hoc-clk/sysmodule/src/mgr/clock_manager.cpp index e0a4d888..3f13a2ca 100644 --- a/Source/hoc-clk/sysmodule/src/mgr/clock_manager.cpp +++ b/Source/hoc-clk/sysmodule/src/mgr/clock_manager.cpp @@ -79,57 +79,58 @@ namespace clockManager { if (module == HocClkModule_GPU) { if (profile < HocClkProfile_HandheldCharging) { switch (board::GetSocType()) { - case HocClkSocType_Erista: - return 460800000; - case HocClkSocType_Mariko: - if(board::GetConsoleType() == HocClkConsoleType_Hoag) { - switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { - case 0 ... 2: - return 614400000; - case 3 ... 4: - return 768000000; - default: - return 614400000; + case HocClkSocType_Erista: + return 460800000; + case HocClkSocType_Mariko: + if(board::GetConsoleType() == HocClkConsoleType_Hoag) { + switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { + case 0 ... 2: + return 614400000; + case 3 ... 4: + return 768000000; + default: + return 614400000; + } + } else { + switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { + case 0: + return 614400000; + case 1: + return 691200000; + case 2: + return 768000000; + case 3: + return 844800000; + case 4: + return 921600000; + default: + return 614400000; + } } - } else { - switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { - case 0: - return 614400000; - case 1: - return 691200000; - case 2: - return 768000000; - case 3: - return 844800000; - case 4: - return 921600000; - default: - return 614400000; - } - } - default: - return 460800000; + default: + return 460800000; + } } else if (profile <= HocClkProfile_HandheldChargingUSB) { switch (board::GetSocType()) { - case HocClkSocType_Erista: - return 768000000; - case HocClkSocType_Mariko: - switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { - case 0: - return 844800000; - case 1: - return 921600000; - case 2: - return 998400000; - case 3: - return 1075200000; - case 4: - return 1152000000; - default: - return 844800000; - } - default: - return 768000000; + case HocClkSocType_Erista: + return 768000000; + case HocClkSocType_Mariko: + switch (config::GetConfigValue(KipConfigValue_marikoGpuUV)) { + case 0: + return 844800000; + case 1: + return 921600000; + case 2: + return 998400000; + case 3: + return 1075200000; + case 4: + return 1152000000; + default: + return 844800000; + } + default: + return 768000000; } } } else if (module == HocClkModule_CPU) { diff --git a/dist/atmosphere/contents/00FF0000636C6BFF/exefs.nsp b/dist/atmosphere/contents/00FF0000636C6BFF/exefs.nsp index 96fc67e0..a11a38a4 100644 Binary files a/dist/atmosphere/contents/00FF0000636C6BFF/exefs.nsp and b/dist/atmosphere/contents/00FF0000636C6BFF/exefs.nsp differ diff --git a/dist/atmosphere/kips/hoc.kip b/dist/atmosphere/kips/hoc.kip index 6771f8a1..9baad703 100644 Binary files a/dist/atmosphere/kips/hoc.kip and b/dist/atmosphere/kips/hoc.kip differ diff --git a/dist/switch/.overlays/horizon-oc-overlay.ovl b/dist/switch/.overlays/horizon-oc-overlay.ovl index 7fddaf23..e840307c 100644 Binary files a/dist/switch/.overlays/horizon-oc-overlay.ovl and b/dist/switch/.overlays/horizon-oc-overlay.ovl differ