loader: hopefully fix gpu pll patch on mariko

This commit is contained in:
souldbminersmwc
2025-10-31 16:01:11 -04:00
parent 09e4a73720
commit 1817314ce5
2 changed files with 13 additions and 6 deletions

View File

@@ -190,13 +190,11 @@ namespace ams::ldr::oc::pcv::mariko
R_SUCCEED();
}
Result GpuFreqPllLimit(u32 *ptr)
{
Result GpuFreqPllLimit(u32 *ptr) {
clk_pll_param *entry = reinterpret_cast<clk_pll_param *>(ptr);
// All zero except for freq
for (size_t i = 1; i < sizeof(clk_pll_param) / sizeof(u32); i++)
{
for (size_t i = 1; i < sizeof(clk_pll_param) / sizeof(u32); i++) {
R_UNLESS(*(ptr + i) == 0, ldr::ResultInvalidGpuPllEntry());
}
@@ -533,7 +531,7 @@ namespace ams::ldr::oc::pcv::mariko
{"CPU Volt Dfll", &CpuVoltDfll, 1, nullptr, 0x0000FFCF},
{"GPU Freq Table", GpuFreqCvbTable<true>, 1, nullptr, GpuCvbDefaultMaxFreq},
{"GPU Freq Asm", &GpuFreqMaxAsm, 2, &GpuMaxClockPatternFn},
{"GPU Freq PLL", &GpuFreqPllLimit, 1, nullptr, GpuClkPllLimit},
{"GPU Freq PLL", &GpuFreqPllLimit, 0, nullptr, GpuClkPllLimit},
{"MEM Freq Mtc", &MemFreqMtcTable, 0, nullptr, EmcClkOSLimit},
{"MEM Freq Dvb", &MemFreqDvbTable, 1, nullptr, EmcClkOSLimit},
{"MEM Freq Max", &MemFreqMax, 0, nullptr, EmcClkOSLimit},

View File

@@ -9,12 +9,21 @@
*/
#pragma once
#include <cstdint>
#ifdef __cplusplus
#include "cpp_util.hpp"
extern "C" {
#endif
typedef std::uint32_t Result;
typedef std::uint32_t u32;
typedef std::int32_t s32;
typedef std::uint64_t u64;
typedef std::int64_t s64;
typedef std::uint8_t u8;
typedef std::int16_t s16;
typedef std::uint16_t u16;
#include "sysclk/ipc.h"
#include "sysclk/board.h"
#include "sysclk/clock_manager.h"