hoc: 133mhz step mode
This commit is contained in:
@@ -40,7 +40,7 @@ volatile CustomizeTable C = {
|
|||||||
.eristaEmcMaxClock1 = 1600000,
|
.eristaEmcMaxClock1 = 1600000,
|
||||||
.eristaEmcMaxClock2 = 1600000,
|
.eristaEmcMaxClock2 = 1600000,
|
||||||
|
|
||||||
/* Available: 66MHz step rate, 100MHz step rate and jedec. */
|
/* Available: 66MHz step rate, 100MHz step rate, 133MHz step rate and jedec. */
|
||||||
/* Jedec freqs are 1333MHz, 1600MHz, 1866MHz, 2133MHz, 2400MHz, 2666MHz, 2933MHz, 3200MHz. */
|
/* Jedec freqs are 1333MHz, 1600MHz, 1866MHz, 2133MHz, 2400MHz, 2666MHz, 2933MHz, 3200MHz. */
|
||||||
.stepMode = StepMode_66MHz,
|
.stepMode = StepMode_66MHz,
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ enum StepMode: u32 {
|
|||||||
StepMode_66MHz = 0,
|
StepMode_66MHz = 0,
|
||||||
StepMode_100MHz = 1,
|
StepMode_100MHz = 1,
|
||||||
StepMode_Jedec = 2,
|
StepMode_Jedec = 2,
|
||||||
|
StepMode_133MHz = 3,
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -609,6 +609,25 @@ namespace ams::ldr::hoc::pcv::mariko {
|
|||||||
newEmcList.resize(std::min(newEmcList.size(), DvfsTableEntryLimit));
|
newEmcList.resize(std::min(newEmcList.size(), DvfsTableEntryLimit));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MtcGenerate133StepTable() {
|
||||||
|
const u32 StepFreqs133[] = { 1733000, 1866000, 2000000, 2133000, 2266000, 2400000, 2533000, 2666000, 2800000, 2933000, 3066000, 3200000, 3333000, 3466000, }; // Avoid rounding issues
|
||||||
|
constexpr u32 StepFreqs133Size = std::size(StepFreqs133);
|
||||||
|
|
||||||
|
for (u32 i = 0; i < StepFreqs133Size; ++i) {
|
||||||
|
if (StepFreqs133[i] <= C.marikoEmcMaxClock) {
|
||||||
|
newEmcList.push_back(StepFreqs133[i]);
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (newEmcList.back() != C.marikoEmcMaxClock) {
|
||||||
|
newEmcList.push_back(static_cast<u32>(C.marikoEmcMaxClock));
|
||||||
|
}
|
||||||
|
|
||||||
|
newEmcList.resize(std::min(newEmcList.size(), DvfsTableEntryLimit));
|
||||||
|
}
|
||||||
|
|
||||||
void MtcGenerateFreqTables() {
|
void MtcGenerateFreqTables() {
|
||||||
if (C.marikoEmcMaxClock <= EmcClkOSLimit) {
|
if (C.marikoEmcMaxClock <= EmcClkOSLimit) {
|
||||||
return;
|
return;
|
||||||
@@ -629,6 +648,9 @@ namespace ams::ldr::hoc::pcv::mariko {
|
|||||||
case StepMode_Jedec:
|
case StepMode_Jedec:
|
||||||
MtcGenerateJedecTable();
|
MtcGenerateJedecTable();
|
||||||
return;
|
return;
|
||||||
|
case StepMode_133MHz:
|
||||||
|
MtcGenerate133StepTable();
|
||||||
|
return;
|
||||||
default:
|
default:
|
||||||
stepRate = 66667;
|
stepRate = 66667;
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -986,6 +986,7 @@ protected:
|
|||||||
std::vector<NamedValue> stepMode = {
|
std::vector<NamedValue> stepMode = {
|
||||||
NamedValue("66MHz", 0),
|
NamedValue("66MHz", 0),
|
||||||
NamedValue("100MHz", 1),
|
NamedValue("100MHz", 1),
|
||||||
|
NamedValue("133MHz", 3), // Mantain compatability
|
||||||
NamedValue("JEDEC.", 2),
|
NamedValue("JEDEC.", 2),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
BIN
dist/atmosphere/kips/hoc.kip
vendored
BIN
dist/atmosphere/kips/hoc.kip
vendored
Binary file not shown.
BIN
dist/switch/.overlays/horizon-oc-overlay.ovl
vendored
BIN
dist/switch/.overlays/horizon-oc-overlay.ovl
vendored
Binary file not shown.
Reference in New Issue
Block a user