From 6309950402409f8dccb880d1166930442b63dbd7 Mon Sep 17 00:00:00 2001 From: Lightos1 <124387232+Lightos1@users.noreply.github.com> Date: Sun, 12 Jul 2026 16:24:36 +0200 Subject: [PATCH] extend soc volt table --- .../Atmosphere/stratosphere/loader/source/oc/customize.cpp | 2 ++ .../Atmosphere/stratosphere/loader/source/oc/customize.hpp | 2 +- .../stratosphere/loader/source/oc/pcv/pcv_mariko.cpp | 2 ++ Source/hoc-clk/common/include/hocclk/config.h | 6 ++++++ Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp | 2 ++ Source/hoc-clk/sysmodule/src/file/kip.cpp | 2 +- Source/hoc-clk/sysmodule/src/file/kip.hpp | 6 +++++- 7 files changed, 19 insertions(+), 3 deletions(-) diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp b/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp index d95cb720..087eef42 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/customize.cpp @@ -215,6 +215,8 @@ volatile CustomizeTable C = { 0 /* >= 3133 */, 0 /* >= 3166 */, 0 /* >= 3200 */, + 0 /* >= 3266 */, + 0 /* >= 3333 */, }, /* Advanced. */ diff --git a/Source/Atmosphere/stratosphere/loader/source/oc/customize.hpp b/Source/Atmosphere/stratosphere/loader/source/oc/customize.hpp index 7b25b748..098df10d 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/customize.hpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/customize.hpp @@ -128,7 +128,7 @@ struct CustomizeTable { u32 eristaGpuVoltArray[27]; u32 marikoGpuVoltArray[24]; - s32 marikoSocVoltArray[26]; + s32 marikoSocVoltArray[28]; u32 fineTune_t6_tRTW; u32 fineTune_t7_tWTR; 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 8e80ba9f..bb83b928 100644 --- a/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp +++ b/Source/Atmosphere/stratosphere/loader/source/oc/pcv/pcv_mariko.cpp @@ -889,6 +889,8 @@ namespace ams::ldr::hoc::pcv::mariko { { 3133000, { DVB_OC(1025, 1000, 975, 23) }, }, { 3166000, { DVB_OC(1037, 1012, 987, 24) }, }, { 3200000, { DVB_OC(1050, 1025, 1000, 25) }, }, + { 3266000, { DVB_OC(1075, 1050, 1025, 26) }, }, + { 3333000, { DVB_OC(1100, 1075, 1050, 27) }, }, { ~0u, { }, }, }; #undef DVB diff --git a/Source/hoc-clk/common/include/hocclk/config.h b/Source/hoc-clk/common/include/hocclk/config.h index 3a7a6f47..724be4d6 100644 --- a/Source/hoc-clk/common/include/hocclk/config.h +++ b/Source/hoc-clk/common/include/hocclk/config.h @@ -224,6 +224,8 @@ typedef enum { KipConfigValue_g_soc_volt_3133000, KipConfigValue_g_soc_volt_3166000, KipConfigValue_g_soc_volt_3200000, + KipConfigValue_g_soc_volt_3266000, + KipConfigValue_g_soc_volt_3333000, KipConfigValue_t6_tRTW_fine_tune, KipConfigValue_t7_tWTR_fine_tune, @@ -542,6 +544,8 @@ static inline const char* hocclkFormatConfigValue(HocClkConfigValue val, bool pr case KipConfigValue_g_soc_volt_3133000: return pretty ? "Mariko SOC Volt 3133 MHz" : "g_soc_volt_3133000"; case KipConfigValue_g_soc_volt_3166000: return pretty ? "Mariko SOC Volt 3166 MHz" : "g_soc_volt_3166000"; case KipConfigValue_g_soc_volt_3200000: return pretty ? "Mariko SOC Volt 3200 MHz" : "g_soc_volt_3200000"; + case KipConfigValue_g_soc_volt_3266000: return pretty ? "Mariko SOC Volt 3266 MHz" : "g_soc_volt_3266000"; + case KipConfigValue_g_soc_volt_3333000: return pretty ? "Mariko SOC Volt 3333 MHz" : "g_soc_volt_3333000"; case KipCrc32: return pretty ? "CRC32" : "crc32"; @@ -765,6 +769,8 @@ static inline uint64_t hocclkValidConfigValue(HocClkConfigValue val, uint64_t in case KipConfigValue_g_soc_volt_3133000: case KipConfigValue_g_soc_volt_3166000: case KipConfigValue_g_soc_volt_3200000: + case KipConfigValue_g_soc_volt_3266000: + case KipConfigValue_g_soc_volt_3333000: case KipConfigValue_eristaCpuVmin: case KipConfigValue_eristaCpuUnlock: case KipConfigValue_t6_tRTW_fine_tune: diff --git a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp index bf393683..d143606c 100644 --- a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp +++ b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp @@ -2721,6 +2721,8 @@ class SocCustomTableSubmenuGui : public MiscGui { addConfigButton(KipConfigValue_g_soc_volt_3133000, "3133MHz", ValueRange(0, 0, 0, "0", 1), "Voltage", &voltageThresholds, {}, socVolts, false, true); addConfigButton(KipConfigValue_g_soc_volt_3166000, "3166MHz", ValueRange(0, 0, 0, "0", 1), "Voltage", &voltageThresholds, {}, socVolts, false, true); addConfigButton(KipConfigValue_g_soc_volt_3200000, "3200MHz", ValueRange(0, 0, 0, "0", 1), "Voltage", &voltageThresholds, {}, socVolts, false, true); + addConfigButton(KipConfigValue_g_soc_volt_3266000, "3266MHz", ValueRange(0, 0, 0, "0", 1), "Voltage", &voltageThresholds, {}, socVolts, false, true); + addConfigButton(KipConfigValue_g_soc_volt_3333000, "3333MHz", ValueRange(0, 0, 0, "0", 1), "Voltage", &voltageThresholds, {}, socVolts, false, true); } }; diff --git a/Source/hoc-clk/sysmodule/src/file/kip.cpp b/Source/hoc-clk/sysmodule/src/file/kip.cpp index 88078f67..50aadf24 100644 --- a/Source/hoc-clk/sysmodule/src/file/kip.cpp +++ b/Source/hoc-clk/sysmodule/src/file/kip.cpp @@ -140,7 +140,7 @@ namespace kip { table.eristaGpuVoltArray[i] = config::GetConfigValue((HocClkConfigValue)(KipConfigValue_g_volt_e_76800 + i)); } - for (size_t i = 0; i < 26; ++i) { + for (size_t i = 0; i < 28; ++i) { table.marikoSocVoltArray[i] = config::GetConfigValue((HocClkConfigValue) (KipConfigValue_g_soc_volt_1866000 + i)); } diff --git a/Source/hoc-clk/sysmodule/src/file/kip.hpp b/Source/hoc-clk/sysmodule/src/file/kip.hpp index a1ab2bf1..80cff655 100644 --- a/Source/hoc-clk/sysmodule/src/file/kip.hpp +++ b/Source/hoc-clk/sysmodule/src/file/kip.hpp @@ -97,7 +97,7 @@ namespace kip { u32 eristaGpuVoltArray[27]; u32 marikoGpuVoltArray[24]; - s32 marikoSocVoltArray[26]; + s32 marikoSocVoltArray[28]; u32 t6_tRTW_fine_tune; u32 t7_tWTR_fine_tune; @@ -714,6 +714,8 @@ namespace kip { DECL_MARIKO_SOC_VOLT_HELPER(3133000, 23) DECL_MARIKO_SOC_VOLT_HELPER(3166000, 24) DECL_MARIKO_SOC_VOLT_HELPER(3200000, 25) + DECL_MARIKO_SOC_VOLT_HELPER(3266000, 26) + DECL_MARIKO_SOC_VOLT_HELPER(3333000, 27) #define DECL_ERISTA_GPU_VOLT_GET(freq, idx) \ static inline u32 cust_get_erista_gpu_volt_##freq##_val(const char *p) { \ @@ -817,6 +819,8 @@ namespace kip { DECL_MARIKO_SOC_VOLT_GET(3133000, 23) DECL_MARIKO_SOC_VOLT_GET(3166000, 24) DECL_MARIKO_SOC_VOLT_GET(3200000, 25) + DECL_MARIKO_SOC_VOLT_GET(3266000, 26) + DECL_MARIKO_SOC_VOLT_GET(3333000, 27) void MigrateKipData(u32 custRev, u32 version); void SetKipData();