diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp b/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp index 55b56d46..73004035 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp @@ -22,7 +22,6 @@ /* Never edit these. */ #define AUTO 0 -#define AUTO_RAM 1 #define ENABLED 1 #define DISABLED 0 #define DEACTIVATED_GPU_FREQ 2000 @@ -105,7 +104,7 @@ volatile CustomizeTable C = { /* For automatic vmin detection, set this to AUTO. */ /* vmin past 795mV won't work due to HOS limitation */ /* Vmin is automatically set to 800mV when SoC temperature is below 20C */ -.marikoGpuVmin = AUTO_RAM, +.marikoGpuVmin = AUTO, .marikoGpuVmax = 800, diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp index 31854886..ab52f759 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv.hpp @@ -122,16 +122,6 @@ namespace ams::ldr::hoc::pcv { {0xFFFFFFFF, 35}, }; - static const u32 ramBrackets[][22] = { - { 2133, 2200, 2266, 2300, 2366, 2400, 2433, 2466, 2533, 2566, 2600, 2633, 2700, 2733, 2766, 2833, 2866, 2900, 2933, 3033, 3066, 3100, }, - { 2300, 2366, 2433, 2466, 2533, 2566, 2633, 2700, 2733, 2800, 2833, 2900, 2933, 2966, 3033, 3066, 3100, 3133, 3166, 3200, 3233, 3266, }, - { 2433, 2466, 2533, 2600, 2666, 2733, 2766, 2800, 2833, 2866, 2933, 2966, 3033, 3066, 3100, 3133, 3166, 3200, 3233, 3300, 3333, 3366, }, - { 2500, 2533, 2600, 2633, 2666, 2733, 2800, 2866, 2900, 2966, 3033, 3100, 3166, 3200, 3233, 3266, 3300, 3333, 3366, 3400, 3400, 3400, }, - }; - - static const u32 gpuBudgetDvfsArray[] = { 590, 600, 610, 620, 630, 640, 650, 660, 670, 680, 690, 700, 710, 720, 730, 740, 750, 760, 770, 780, 790, 800}; - - /* GPU Max Clock asm Pattern: * * MOV W11, #0x1000 MOV (wide immediate) 0x1000 0xB (11) 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 44b19be1..c0f70447 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp @@ -50,30 +50,6 @@ namespace ams::ldr::hoc::pcv::mariko { return ramScale; } - u32 GetSpeedoBracket() { - u32 speedoBracket = 3; - if ((C.gpuSpeedo < 1754) && (speedoBracket = 2, C.gpuSpeedo < 1690)) { - speedoBracket = !!(1625 < C.gpuSpeedo); - } - - return speedoBracket; - } - - u32 GetGpuBudgetDvfsVoltage() { - u32 bracket = GetSpeedoBracket(); - - if (ramFreqMhz <= 1600) - return 0; - - for (u32 voltageIndex = 0; voltageIndex < 22; voltageIndex++) { - if (ramFreqMhz <= ramBrackets[bracket][voltageIndex]) { - return gpuBudgetDvfsArray[voltageIndex]; - } - } - - return 800; - } - /* Note: EOS (probably?) has a bug in this function that always results in high vmin, this is fixed here. */ u32 GetAutoVoltage() { u32 voltage = GetGpuVminVoltage(); @@ -102,14 +78,13 @@ namespace ams::ldr::hoc::pcv::mariko { } /* C.marikoGpuVmin is non zero, user sets manual voltage. */ - if (C.marikoGpuVmin != 0 && C.marikoGpuVmin != 1) { + if (C.marikoGpuVmin) { PATCH_OFFSET(ptr, C.marikoGpuVmin); R_SUCCEED(); } - /* C.marikoGpuVmin is zero OR one, auto voltage is applied. */ - /* Get vmin depending on speedo and ram clock. */ - u32 autoVmin = C.marikoGpuVmin == 0 ? GetAutoVoltage() : GetGpuBudgetDvfsVoltage(); + /* C.marikoGpuVmin is zero, auto voltage is applied. */ + u32 autoVmin = GetAutoVoltage(); PATCH_OFFSET(ptr, autoVmin); R_SUCCEED(); } @@ -122,8 +97,8 @@ namespace ams::ldr::hoc::pcv::mariko { u32 vmin = C.marikoGpuVmin; /* Automatic voltage. */ - if (!C.marikoGpuVmin || C.marikoGpuVmin == 1) { - vmin = C.marikoGpuVmin == 0 ? GetAutoVoltage() : GetGpuBudgetDvfsVoltage(); + if (!C.marikoGpuVmin) { + vmin = GetAutoVoltage(); PATCH_OFFSET(ptr, vmin); PATCH_OFFSET(ptr + 3, vmin); PATCH_OFFSET(ptr + 6, vmin); diff --git a/Source/sys-clk/overlay/src/ui/gui/misc_gui.cpp b/Source/sys-clk/overlay/src/ui/gui/misc_gui.cpp index 6b504bfb..7aeda2fa 100644 --- a/Source/sys-clk/overlay/src/ui/gui/misc_gui.cpp +++ b/Source/sys-clk/overlay/src/ui/gui/misc_gui.cpp @@ -1001,7 +1001,7 @@ protected: }; std::vector mGpuVoltsVmin = { - NamedValue("Auto", 0), NamedValue("Auto (RAM)", 1), + NamedValue("Auto", 0), NamedValue("480mV", 480), NamedValue("485mV", 485), NamedValue("490mV", 490), NamedValue("495mV", 495), NamedValue("500mV", 500), NamedValue("505mV", 505), NamedValue("510mV", 510), NamedValue("515mV", 515), NamedValue("520mV", 520),