This commit is contained in:
hanai3Bi authored and hanabbi committed 2023-05-26 12:45:29 +09:00
1 parent 63bbde2f58
commit 3db0b9b380
210 files changed
+1286 -48394

No files matched your search

+1 -1
View File
@@ -1 +1 @@
<!doctype html><html lang=en><meta charset=UTF-8><meta name=viewport content="width=device-width,initial-scale=1"><title>Switch OC Suite | Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</title><meta name=description content="Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2."><link rel=stylesheet href=https://unpkg.com/@picocss/pico@latest/css/pico.min.css><style>#nav-list{display:none}#nav-popup{display:unset}@media (min-width:768px){#nav-list{display:unset}#nav-popup{display:none}}details[open]>summary:not([role]):not(:focus){color:unset}div.hero>nav.container-fluid{position:fixed;top:0;z-index:99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}div.hero>header{padding-top:6rem}button[role=tab]{border-radius:0;border-left-width:calc(var(--border-width)/ 2);border-right-width:calc(var(--border-width)/ 2)}button[role=tab]:first-child{border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius);border-left-width:var(--border-width)}button[role=tab]:last-child{border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);border-right-width:var(--border-width)}button[role=tab]:not(.outline){pointer-events:none;cursor:default}div.cust-element{margin:1.5rem 0 1.5rem 0}div.cust-element>blockquote,div.cust-element>blockquote>ul{margin:0;font-size:calc(var(--font-size) * .8);color:var(--muted-color)}div#download_btn_grid>a{margin:.5rem 0}</style><div class=hero><nav class=container-fluid><ul><li><a href=#head class=contrast><b>Switch OC Suite</b></a></ul><ul id=nav-popup><li><details role=list dir=rtl><summary aria-haspopup=group role=link class=contrast>Jump to</summary><ul role=group><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Configurator</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub repository</a></ul></details></ul><ul id=nav-list><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Config</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub</a></ul></nav><header class=container><hgroup><h1>Switch OC Suite</h1><h2>Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</h2></hgroup></header></div><section aria-label=README id=readme><div class=container><article><header><hgroup><h2>README</h2><h3>🚨DISCLAIMER: THIS IS PROVIDED AS IS. USE AT YOUR OWN RISK!🚨</h3></hgroup><ul><li>Overclocking in general will shorten the lifespan of some hardware components. <strong>YOU ARE RESPONSIBLE for any problem or potential damage</strong> if unsafe frequencies are ENABLED in sys-clk-OC. Issues like asking for bypassing limit will BE IGNORED OR CLOSED WITHOUT REPLY.<li>Due to HorizonOS design, instabilities from unsafe RAM clocks may cause filesystem corruption. <strong>Always make backup before enabling DRAM OC.</strong></ul></header><h3>Features</h3><details open><summary>For Erista variant (HAC-001)</summary><ul><li>CPU Overclock (Safe: 1785 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2091 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1862.4 MHz)</ul></details><details open><summary>For Mariko variant (HAC-001-01, HDH-001, HEG-001)</summary><ul><li>CPU / GPU Overclock (Safe: 1963 / 998 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2397 / 1305 MHz or 2295 / 1267 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1996.8 MHz)</ul></details><details open><summary>Modded sys-clk and ReverseNX-RT</summary><ul><li>Auto CPU Boost<ul><li>For faster game loading<li>Enable CPU Boost (1785 MHz) when CPU Core#3 (System Core) is stressed (mainly I/O operations).<li>Effective only when charger is connected.</ul><li>CPU &amp; GPU frequency governor (Experimental)<ul><li>Adjust frequency based on load. Might decrease power draw but can introduce stutters. Can be turned off for specific titles.</ul><li>Set charging current (100 mA - 2000 mA) and charging limit (20% - 100%)<ul><li>Long-term use of charge limit may render the battery gauge inaccurate. Performing full cycles could help recalibration, or try <a href=https://github.com/CTCaer/battery_desync_fix_nx>battery_desync_fix_nx</a>.</ul><li>Global Profile<ul><li>Designated a dummy title id <code>0xA111111111111111</code>.<li>Priority: "Temp overrides" &gt; "Application profile" &gt; "Global profile" &gt; "System default".</ul><li>Sync ReverseNX Mode<ul><li>No need to change clocks manually after toggling modes in ReverseNX (-RT and -Tool)</ul></ul></details><details open><summary>SystLine truncated
<!doctype html><html lang=en><meta charset=UTF-8><meta name=viewport content="width=device-width,initial-scale=1"><title>Switch OC Suite | Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</title><meta name=description content="Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2."><link rel=stylesheet href=https://unpkg.com/@picocss/pico@latest/css/pico.min.css><style>#nav-list{display:none}#nav-popup{display:unset}@media (min-width:768px){#nav-list{display:unset}#nav-popup{display:none}}details[open]>summary:not([role]):not(:focus){color:unset}div.hero>nav.container-fluid{position:fixed;top:0;z-index:99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}div.hero>header{padding-top:6rem}button[role=tab]{border-radius:0;border-left-width:calc(var(--border-width)/ 2);border-right-width:calc(var(--border-width)/ 2)}button[role=tab]:first-child{border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius);border-left-width:var(--border-width)}button[role=tab]:last-child{border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);border-right-width:var(--border-width)}button[role=tab]:not(.outline){pointer-events:none;cursor:default}div.cust-element{margin:1.5rem 0 1.5rem 0}div.cust-element>blockquote,div.cust-element>blockquote>ul{margin:0;font-size:calc(var(--font-size) * .8);color:var(--muted-color)}div#download_btn_grid>a{margin:.5rem 0}</style><div class=hero><nav class=container-fluid><ul><li><a href=#head class=contrast><b>Switch OC Suite</b></a></ul><ul id=nav-popup><li><details role=list dir=rtl><summary aria-haspopup=group role=link class=contrast>Jump to</summary><ul role=group><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Configurator</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub repository</a></ul></details></ul><ul id=nav-list><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Config</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub</a></ul></nav><header class=container><hgroup><h1>Switch OC Suite</h1><h2>Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</h2></hgroup></header></div><section aria-label=README id=readme><div class=container><article><header><hgroup><h2>README</h2><h3>🚨DISCLAIMER: THIS IS PROVIDED AS IS. USE AT YOUR OWN RISK!🚨</h3></hgroup><ul><li>Overclocking in general will shorten the lifespan of some hardware components. <strong>YOU ARE RESPONSIBLE for any problem or potential damage</strong> if unsafe frequencies are ENABLED in sys-clk-OC. Issues like asking for bypassing limit will BE IGNORED OR CLOSED WITHOUT REPLY.<li>Due to HorizonOS design, instabilities from unsafe RAM clocks may cause filesystem corruption. <strong>Always make backup before enabling DRAM OC.</strong></ul></header><h3>Features</h3><details open><summary>For Erista variant (HAC-001)</summary><ul><li>CPU Overclock (Safe: 1785 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2091 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1862.4 MHz)</ul></details><details open><summary>For Mariko variant (HAC-001-01, HDH-001, HEG-001)</summary><ul><li>CPU / GPU Overclock (Safe: 1963 / 998 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2397 / 1305 MHz or 2295 / 1267 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1996.8 MHz)</ul></details><details open><summary>Modded sys-clk and ReverseNX-RT</summary><ul><li>Auto CPU Boost<ul><li>For faster game loading<li>Enable CPU Boost (1785 MHz) when CPU Core#3 (System Core) is stressed (mainly I/O operations).<li>Effective only when charger is connected or governor is enabled.<li>This feature is considered unsafe on Erista, especially when combined with high GPU frequency or with governor enabled.</ul><li>CPU &amp; GPU frequency governor (Experimental)<ul><li>Adjust frequency based on load. Might decrease power draw but can introduce stutters. Can be turned off for specific titles.</ul><li>Set charging current (100 mA - 2000 mA) and charging limit (20% - 100%)<ul><li>Long-term use of charge limit may render the battery gauge inaccurate. Performing full cycles could help recalibration, or try <a href=https://github.com/CTCaer/battery_desync_fix_nx>battery_desync_fix_nx</a>.</ul><li>Global Profile<ul><li>Designated a dummy title id <code>0xA111111111111111</code>.<li>Priority: "Temp overrides" &gt; "Application profile" &gt; "Global profile" &gt; "System default".</ul><li>Sync ReversLine truncated
+1 -1
View File
@@ -1 +1 @@
var __awaiter=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(a,l){function r(e){try{n(s.next(e))}catch(e){l(e)}}function o(e){try{n(s.throw(e))}catch(e){l(e)}}function n(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(r,o)}n((s=s.apply(e,t||[])).next())}))};const CUST_REV=3;var CustPlatform;!function(e){e[e.Undefined=0]="Undefined",e[e.Erista=1]="Erista",e[e.Mariko=2]="Mariko",e[e.All=3]="All"}(CustPlatform||(CustPlatform={}));class CustEntry{constructor(e,t,i,s,a,l,r=[0,1e6],o=1,n=!0){this.id=e,this.name=t,this.platform=i,this.size=s,this.desc=a,this.defval=l,this.step=o,this.zeroable=n,this.min=r[0],this.max=r[1]}validate(){let e=new ErrorToolTip(this.id).clear();return Number.isNaN(this.value)||void 0===this.value?(e.setMsg("Invalid value: Not a number").show(),!1):!(!this.zeroable||0!=this.value)||(this.value<this.min||this.value>this.max?(e.setMsg(`Expected range: [${this.min}, ${this.max}], got ${this.value}.`).show(),!1):this.value%this.step==0||(e.setMsg(`${this.value} % ${this.step} ≠ 0`).show(),!1))}getInputElement(){return document.getElementById(this.id)}updateValueFromElement(){var e;this.value=Number(null===(e=this.getInputElement())||void 0===e?void 0:e.value)}isAvailableFor(e){return e===CustPlatform.Undefined||this.platform===e||this.platform===CustPlatform.All}createElement(){let e=this.getInputElement();if(!e){let t=document.createElement("div");t.classList.add("grid","cust-element"),e=document.createElement("input"),e.min=String(this.zeroable?0:this.min),e.max=String(this.max),e.id=this.id,e.type="number",e.step=String(this.step);let i=document.createElement("label");i.setAttribute("for",this.id),i.innerHTML=this.name,i.appendChild(e),t.appendChild(i);let s=document.createElement("blockquote");s.innerHTML="<ul>"+this.desc.map((e=>`<li>${e}</li>`)).join("")+"</ul>",s.setAttribute("for",this.id),t.appendChild(s),document.getElementById("config-list-basic").appendChild(t),new ErrorToolTip(this.id).addChangeListener()}e.value=String(this.value)}setElementValue(){this.getInputElement().value=String(this.value)}setElementDefaultValue(){this.getInputElement().value=String(this.defval)}removeElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.remove()}showElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.removeProperty("display")}hideElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.setProperty("display","none")}}var CustTable=[new CustEntry("mtcConf","DRAM Timing",CustPlatform.Mariko,2,["<b>0</b>: AUTO_ADJ_MARIKO_SAFE: Auto adjust timings for LPDDR4 ≤3733 Mbps specs, 8Gb density. (Default)","<b>1</b>: AUTO_ADJ_MARIKO_4266: Auto adjust timings for LPDDR4X 4266 Mbps specs, 8Gb density.","<b>2</b>: NO_ADJ_ALL: No timing adjustment for both Erista and Mariko. Might achieve better performance on Mariko but lower maximum frequency is expected."],0,[0,2],1),new CustEntry("marikoCpuMaxClock","Mariko CPU Max Clock in kHz",CustPlatform.Mariko,4,["System default: 1785000","2397000 might be unreachable for some SoCs."],2397e3,[1785e3,3e6],1),new CustEntry("marikoCpuBoostClock","Mariko CPU Boost Clock in kHz",CustPlatform.Mariko,4,["System default: 1785000","Boost clock will be applied when applications request higher CPU frequency for quicker loading.","This will be set regardless of whether sys-clk is enabled."],1785e3,[102e4,3e6],1,!1),new CustEntry("marikoCpuMaxVolt","Mariko CPU Max Voltage in mV",CustPlatform.Mariko,4,["System default: 1120","Acceptable range: 1100 ≤ x ≤ 1300"],1235,[1100,1300],5),new CustEntry("marikoGpuMaxClock","Mariko GPU Max Clock in kHz",CustPlatform.Mariko,4,["System default: 921600","Tegra X1+ official maximum: 1267200","1305600 might be unreachable for some SoCs."],1305600,[768e3,1536e3],100),new CustEntry("marikoEmcMaxClock","Mariko RAM Max Clock in kHz",CustPlatform.Mariko,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM."],1996800,[16e5,24e5],3200),new CustEntry("marikoEmcVddqVolt","EMC Vddq (Mariko Only) Voltage in uV",CustPlatform.Mariko,4,["Acceptable range: 550000 ≤ x ≤ 650000","Value should be divided evenly by 5000","Default: 600000","Not enabled by default.","This will not work without sys-clk-OC."],0,[55e4,65e4],5e3),new CustEntry("eristaCpuMaxVolt","Erista CPU Max Voltage in mV",CustPlatform.Erista,4,["Acceptable range: 1100 ≤ x ≤ 1300"],1235,[1100,1300],1),new CustEntry("eristaEmcMaxClock","Erista RAM Max Clock in kHz",CustPlatform.Erista,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"],1862400,[16e5,24e5],3200),new CustEntry("commonEmcMemVolt","EMC Vddq (Erista Only) & RAM Vdd2 Voltage in uV",CustPlatform.All,4,["Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be dLine truncated
var __awaiter=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(a,l){function r(e){try{o(s.next(e))}catch(e){l(e)}}function n(e){try{o(s.throw(e))}catch(e){l(e)}}function o(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(r,n)}o((s=s.apply(e,t||[])).next())}))};const CUST_REV=3;var CustPlatform;!function(e){e[e.Undefined=0]="Undefined",e[e.Erista=1]="Erista",e[e.Mariko=2]="Mariko",e[e.All=3]="All"}(CustPlatform||(CustPlatform={}));class CustEntry{constructor(e,t,i,s,a,l,r=[0,1e6],n=1,o=!0){this.id=e,this.name=t,this.platform=i,this.size=s,this.desc=a,this.defval=l,this.step=n,this.zeroable=o,this.min=r[0],this.max=r[1]}validate(){let e=new ErrorToolTip(this.id).clear();return Number.isNaN(this.value)||void 0===this.value?(e.setMsg("Invalid value: Not a number").show(),!1):!(!this.zeroable||0!=this.value)||(this.value<this.min||this.value>this.max?(e.setMsg(`Expected range: [${this.min}, ${this.max}], got ${this.value}.`).show(),!1):this.value%this.step==0||(e.setMsg(`${this.value} % ${this.step} ≠ 0`).show(),!1))}getInputElement(){return document.getElementById(this.id)}updateValueFromElement(){var e;this.value=Number(null===(e=this.getInputElement())||void 0===e?void 0:e.value)}isAvailableFor(e){return e===CustPlatform.Undefined||this.platform===e||this.platform===CustPlatform.All}createElement(){let e=this.getInputElement();if(!e){let t=document.createElement("div");t.classList.add("grid","cust-element"),e=document.createElement("input"),e.min=String(this.zeroable?0:this.min),e.max=String(this.max),e.id=this.id,e.type="number",e.step=String(this.step);let i=document.createElement("label");i.setAttribute("for",this.id),i.innerHTML=this.name,i.appendChild(e),t.appendChild(i);let s=document.createElement("blockquote");s.innerHTML="<ul>"+this.desc.map((e=>`<li>${e}</li>`)).join("")+"</ul>",s.setAttribute("for",this.id),t.appendChild(s),document.getElementById("config-list-basic").appendChild(t),new ErrorToolTip(this.id).addChangeListener()}e.value=String(this.value)}setElementValue(){this.getInputElement().value=String(this.value)}setElementDefaultValue(){this.getInputElement().value=String(this.defval)}removeElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.remove()}showElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.removeProperty("display")}hideElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.setProperty("display","none")}}var CustTable=[new CustEntry("mtcConf","DRAM Timing",CustPlatform.Mariko,2,["<b>0</b>: AUTO_ADJ_MARIKO_SAFE: Auto adjust timings for LPDDR4 ≤3733 Mbps specs, 8Gb density. (Default)","<b>1</b>: AUTO_ADJ_MARIKO_4266: Auto adjust timings for LPDDR4X 4266 Mbps specs, 8Gb density.","<b>2</b>: NO_ADJ_ALL: No timing adjustment for both Erista and Mariko. Might achieve better performance on Mariko but lower maximum frequency is expected."],0,[0,2],1),new CustEntry("marikoCpuMaxClock","Mariko CPU Max Clock in kHz",CustPlatform.Mariko,4,["System default: 1785000","2397000 might be unreachable for some SoCs."],2397e3,[1785e3,3e6],1),new CustEntry("marikoCpuBoostClock","Mariko CPU Boost Clock in kHz",CustPlatform.Mariko,4,["System default: 1785000","Boost clock will be applied when applications request higher CPU frequency for quicker loading.","This will be set regardless of whether sys-clk is enabled."],1785e3,[102e4,3e6],1,!1),new CustEntry("marikoCpuMaxVolt","Mariko CPU Max Voltage in mV",CustPlatform.Mariko,4,["System default: 1120","Acceptable range: 1100 ≤ x ≤ 1300"],1235,[1100,1300],5),new CustEntry("marikoGpuMaxClock","Mariko GPU Max Clock in kHz",CustPlatform.Mariko,4,["System default: 921600","Tegra X1+ official maximum: 1267200","1305600 might be unreachable for some SoCs."],1305600,[768e3,1536e3],100),new CustEntry("marikoEmcMaxClock","Mariko RAM Max Clock in kHz",CustPlatform.Mariko,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM."],1996800,[16e5,24e5],3200),new CustEntry("marikoEmcVddqVolt","EMC Vddq (Mariko Only) Voltage in uV",CustPlatform.Mariko,4,["Acceptable range: 550000 ≤ x ≤ 650000","Value should be divided evenly by 5000","Default: 600000","Not enabled by default.","This will not work without sys-clk-OC."],0,[55e4,65e4],5e3),new CustEntry("eristaCpuMaxVolt","Erista CPU Max Voltage in mV",CustPlatform.Erista,4,["Acceptable range: 1100 ≤ x ≤ 1300"],1235,[1100,1300],1),new CustEntry("eristaEmcMaxClock","Erista RAM Max Clock in kHz",CustPlatform.Erista,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"],1862400,[16e5,24e5],3200),new CustEntry("commonEmcMemVolt","EMC Vddq (Erista Only) & RAM Vdd2 Voltage in uV",CustPlatform.All,4,["Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be dLine truncated
+1
View File
@@ -0,0 +1 @@
<!doctype html><html lang=en><meta charset=UTF-8><meta name=viewport content="width=device-width,initial-scale=1"><title>Switch OC Suite | Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</title><meta name=description content="Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2."><link rel=stylesheet href=https://unpkg.com/@picocss/pico@latest/css/pico.min.css><style>#nav-list{display:none}#nav-popup{display:unset}@media (min-width:768px){#nav-list{display:unset}#nav-popup{display:none}}details[open]>summary:not([role]):not(:focus){color:unset}div.hero>nav.container-fluid{position:fixed;top:0;z-index:99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}div.hero>header{padding-top:6rem}button[role=tab]{border-radius:0;border-left-width:calc(var(--border-width)/ 2);border-right-width:calc(var(--border-width)/ 2)}button[role=tab]:first-child{border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius);border-left-width:var(--border-width)}button[role=tab]:last-child{border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);border-right-width:var(--border-width)}button[role=tab]:not(.outline){pointer-events:none;cursor:default}div.cust-element{margin:1.5rem 0 1.5rem 0}div.cust-element>blockquote,div.cust-element>blockquote>ul{margin:0;font-size:calc(var(--font-size) * .8);color:var(--muted-color)}div#download_btn_grid>a{margin:.5rem 0}</style><div class=hero><nav class=container-fluid><ul><li><a href=#head class=contrast><b>Switch OC Suite</b></a></ul><ul id=nav-popup><li><details role=list dir=rtl><summary aria-haspopup=group role=link class=contrast>Jump to</summary><ul role=group><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Configurator</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub repository</a></ul></details></ul><ul id=nav-list><li><a href=#readme>README</a><li><a href=#download>Download</a><li><a href=#config>Config</a><li><a href=https://github.com/KazushiMe/Switch-OC-Suite target=_blank>GitHub</a></ul></nav><header class=container><hgroup><h1>Switch OC Suite</h1><h2>Overclocking suite for Horizon OS (HOS) running on Atmosphere CFW. Licensed under GPL v2.</h2></hgroup></header></div><section aria-label=README id=readme><div class=container><article><header><hgroup><h2>README</h2><h3>🚨DISCLAIMER: THIS IS PROVIDED AS IS. USE AT YOUR OWN RISK!🚨</h3></hgroup><ul><li>Overclocking in general will shorten the lifespan of some hardware components. <strong>YOU ARE RESPONSIBLE for any problem or potential damage</strong> if unsafe frequencies are ENABLED in sys-clk-OC. Issues like asking for bypassing limit will BE IGNORED OR CLOSED WITHOUT REPLY.<li>Due to HorizonOS design, instabilities from unsafe RAM clocks may cause filesystem corruption. <strong>Always make backup before enabling DRAM OC.</strong></ul></header><h3>Features</h3><details open><summary>For Erista variant (HAC-001)</summary><ul><li>CPU Overclock (Safe: 1785 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2091 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1862.4 MHz)</ul></details><details open><summary>For Mariko variant (HAC-001-01, HDH-001, HEG-001)</summary><ul><li>CPU / GPU Overclock (Safe: 1963 / 998 MHz)<ul><li>Unsafe<ul><li>Due to the limit of board power draw or power IC<li>Unlockable frequencies up to 2397 / 1305 MHz or 2295 / 1267 MHz<li>See <a href=https://github.com/KazushiMe/Switch-OC-Suite/blob/master/Source/sys-clk-OC/README.md target=_blank>README for sys-clk-OC</a></ul></ul><li>DRAM Overclock (Safe: 1996.8 MHz)</ul></details><details open><summary>Modded sys-clk and ReverseNX-RT</summary><ul><li>Auto CPU Boost<ul><li>For faster game loading<li>Enable CPU Boost (1785 MHz) when CPU Core#3 (System Core) is stressed (mainly I/O operations).<li>Effective only when charger is connected or governor is enabled.<li>This feature is considered unsafe on Erista, especially when combined with high GPU frequency or with governor enabled.</ul><li>CPU &amp; GPU frequency governor (Experimental)<ul><li>Adjust frequency based on load. Might decrease power draw but can introduce stutters. Can be turned off for specific titles.</ul><li>Set charging current (100 mA - 2000 mA) and charging limit (20% - 100%)<ul><li>Long-term use of charge limit may render the battery gauge inaccurate. Performing full cycles could help recalibration, or try <a href=https://github.com/CTCaer/battery_desync_fix_nx>battery_desync_fix_nx</a>.</ul><li>Global Profile<ul><li>Designated a dummy title id <code>0xA111111111111111</code>.<li>Priority: "Temp overrides" &gt; "Application profile" &gt; "Global profile" &gt; "System default".</ul><li>Sync ReversLine truncated
+1
View File
@@ -0,0 +1 @@
var __awaiter=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(a,l){function n(e){try{o(s.next(e))}catch(e){l(e)}}function r(e){try{o(s.throw(e))}catch(e){l(e)}}function o(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(n,r)}o((s=s.apply(e,t||[])).next())}))};const CUST_REV=4;var CustPlatform;!function(e){e[e.Undefined=0]="Undefined",e[e.Erista=1]="Erista",e[e.Mariko=2]="Mariko",e[e.All=3]="All"}(CustPlatform||(CustPlatform={}));class CustEntry{constructor(e,t,i,s,a,l,n=[0,1e6],r=1,o=!0){this.id=e,this.name=t,this.platform=i,this.size=s,this.desc=a,this.defval=l,this.step=r,this.zeroable=o,this.min=n[0],this.max=n[1]}validate(){let e=new ErrorToolTip(this.id).clear();return Number.isNaN(this.value)||void 0===this.value?(e.setMsg("Invalid value: Not a number").show(),!1):!(!this.zeroable||0!=this.value)||(this.value<this.min||this.value>this.max?(e.setMsg(`Expected range: [${this.min}, ${this.max}], got ${this.value}.`).show(),!1):this.value%this.step==0||(e.setMsg(`${this.value} % ${this.step} ≠ 0`).show(),!1))}getInputElement(){return document.getElementById(this.id)}updateValueFromElement(){var e;this.value=Number(null===(e=this.getInputElement())||void 0===e?void 0:e.value)}isAvailableFor(e){return e===CustPlatform.Undefined||this.platform===e||this.platform===CustPlatform.All}createElement(){let e=this.getInputElement();if(!e){let t=document.createElement("div");t.classList.add("grid","cust-element"),e=document.createElement("input"),e.min=String(this.zeroable?0:this.min),e.max=String(this.max),e.id=this.id,e.type="number",e.step=String(this.step);let i=document.createElement("label");i.setAttribute("for",this.id),i.innerHTML=this.name,i.appendChild(e),t.appendChild(i);let s=document.createElement("blockquote");s.innerHTML="<ul>"+this.desc.map((e=>`<li>${e}</li>`)).join("")+"</ul>",s.setAttribute("for",this.id),t.appendChild(s),document.getElementById("config-list-basic").appendChild(t),new ErrorToolTip(this.id).addChangeListener()}e.value=String(this.value)}setElementValue(){this.getInputElement().value=String(this.value)}setElementDefaultValue(){this.getInputElement().value=String(this.defval)}removeElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.remove()}showElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.removeProperty("display")}hideElement(){let e=this.getInputElement();e&&e.parentElement.parentElement.style.setProperty("display","none")}}var CustTable=[new CustEntry("mtcConf","DRAM Timing",CustPlatform.Mariko,2,["<b>0</b>: AUTO_ADJ_MARIKO_SAFE: Auto adjust timings for LPDDR4 ≤3733 Mbps specs, 8Gb density. (Default)","<b>1</b>: AUTO_ADJ_MARIKO_4266: Auto adjust timings for LPDDR4X 4266 Mbps specs, 8Gb density.","<b>2</b>: NO_ADJ_ALL: No timing adjustment for both Erista and Mariko. Might achieve better performance on Mariko but lower maximum frequency is expected."],0,[0,2],1),new CustEntry("commonCpuBoostClock","Boost Clock in kHz",CustPlatform.All,4,["System default: 1785000","Boost clock will be applied when applications request higher CPU frequency for quicker loading.","This will be set regardless of whether sys-clk is enabled."],1785e3,[102e4,3e6],1,!1),new CustEntry("commonEmcMemVolt","EMC Vddq (Erista Only) & RAM Vdd2 Voltage in uV",CustPlatform.All,4,["Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be divided evenly by 12500.","Erista Default (HOS): 1125000 (bootloader: 1100000)","Mariko Default: 1100000 (It will not work without sys-clk-OC)","Not enabled by default"],0,[11e5,125e4],12500),new CustEntry("eristaCpuMaxVolt","Erista CPU Max Voltage in mV",CustPlatform.Erista,4,["Acceptable range: 1100 ≤ x ≤ 1300","L4T Default: 1235"],1235,[1100,1300],1),new CustEntry("eristaEmcMaxClock","Erista RAM Max Clock in kHz",CustPlatform.Erista,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"],1862400,[16e5,24e5],3200),new CustEntry("marikoCpuMaxVolt","Mariko CPU Max Voltage in mV",CustPlatform.Mariko,4,["System default: 1120","Acceptable range: 1100 ≤ x ≤ 1300"],1235,[1100,1300],5),new CustEntry("marikoEmcMaxClock","Mariko RAM Max Clock in kHz",CustPlatform.Mariko,4,["Values should be ≥ 1600000, and divided evenly by 3200.","<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM."],1996800,[16e5,24e5],3200),new CustEntry("marikoEmcVddqVolt","EMC Vddq (Mariko Only) Voltage in uV",CustPlatform.Mariko,4,["Acceptable range: 550000 ≤ x ≤ 650000","Value should be divided evenly by 5000","Default: 600000","Not enabled by default.","This will not work without sys-clk-OC."],0,[55e4,65e4],5e3)];class ErrorToolTip{constructor(e,t){this.id=e,this.msg=t,this.id=e,this.element=document.getElementById(e),t&&this.setMsg(t)}setMsg(e){return this.msg=e,this}show(){var e,t,i,s,a,l;return null===(e=this.elementLine truncated
+2 -1
View File
@@ -190,7 +190,8 @@
<li>For faster game loading</li>
<li>Enable CPU Boost (1785 MHz) when CPU Core#3 (System Core) is
stressed (mainly I/O operations).</li>
<li>Effective only when charger is connected.</li>
<li>Effective only when charger is connected or governor is enabled.</li>
<li>This feature is considered unsafe on Erista, especially when combined with high GPU frequency or with governor enabled.</li>
</ul>
</li>
<li>CPU &amp; GPU frequency governor (Experimental)
+43 -61
View File
@@ -1,5 +1,5 @@
/* Config: Cust */
const CUST_REV = 3;
const CUST_REV = 4;
enum CustPlatform {
Undefined = 0,
@@ -135,20 +135,9 @@ var CustTable: Array<CustEntry> = [
1
),
new CustEntry(
"marikoCpuMaxClock",
"Mariko CPU Max Clock in kHz",
CustPlatform.Mariko,
4,
["System default: 1785000",
"2397000 might be unreachable for some SoCs."],
2397_000,
[1785_000, 3000_000],
1,
),
new CustEntry(
"marikoCpuBoostClock",
"Mariko CPU Boost Clock in kHz",
CustPlatform.Mariko,
"commonCpuBoostClock",
"Boost Clock in kHz",
CustPlatform.All,
4,
["System default: 1785000",
"Boost clock will be applied when applications request higher CPU frequency for quicker loading.",
@@ -158,6 +147,41 @@ var CustTable: Array<CustEntry> = [
1,
false
),
new CustEntry(
"commonEmcMemVolt",
"EMC Vddq (Erista Only) & RAM Vdd2 Voltage in uV",
CustPlatform.All,
4,
["Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be divided evenly by 12500.",
"Erista Default (HOS): 1125000 (bootloader: 1100000)",
"Mariko Default: 1100000 (It will not work without sys-clk-OC)",
"Not enabled by default"],
0,
[1100_000, 1250_000],
12500,
),
new CustEntry(
"eristaCpuMaxVolt",
"Erista CPU Max Voltage in mV",
CustPlatform.Erista,
4,
["Acceptable range: 1100 ≤ x ≤ 1300",
"L4T Default: 1235"],
1235,
[1100, 1300],
1,
),
new CustEntry(
"eristaEmcMaxClock",
"Erista RAM Max Clock in kHz",
CustPlatform.Erista,
4,
["Values should be ≥ 1600000, and divided evenly by 3200.",
"<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"],
1862_400,
[1600_000, 2400_000],
3200,
),
new CustEntry(
"marikoCpuMaxVolt",
"Mariko CPU Max Voltage in mV",
@@ -169,18 +193,6 @@ var CustTable: Array<CustEntry> = [
[1100, 1300],
5
),
new CustEntry(
"marikoGpuMaxClock",
"Mariko GPU Max Clock in kHz",
CustPlatform.Mariko,
4,
["System default: 921600",
"Tegra X1+ official maximum: 1267200",
"1305600 might be unreachable for some SoCs."],
1305_600,
[768_000, 1536_000],
100,
),
new CustEntry(
"marikoEmcMaxClock",
"Mariko RAM Max Clock in kHz",
@@ -206,40 +218,6 @@ var CustTable: Array<CustEntry> = [
[550_000, 650_000],
5000,
),
new CustEntry(
"eristaCpuMaxVolt",
"Erista CPU Max Voltage in mV",
CustPlatform.Erista,
4,
["Acceptable range: 1100 ≤ x ≤ 1300"],
1235,
[1100, 1300],
1,
),
new CustEntry(
"eristaEmcMaxClock",
"Erista RAM Max Clock in kHz",
CustPlatform.Erista,
4,
["Values should be ≥ 1600000, and divided evenly by 3200.",
"<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"],
1862_400,
[1600_000, 2400_000],
3200,
),
new CustEntry(
"commonEmcMemVolt",
"EMC Vddq (Erista Only) & RAM Vdd2 Voltage in uV",
CustPlatform.All,
4,
["Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be divided evenly by 12500.",
"Erista Default (HOS): 1125000 (bootloader: 1100000)",
"Mariko Default: 1100000 (It will not work without sys-clk-OC)",
"Not enabled by default"],
0,
[1100_000, 1250_000],
12500,
),
];
class ErrorToolTip {
@@ -416,6 +394,10 @@ class Cust {
createHTMLForm() {
CustTable.forEach(i => i.createElement());
let advanced = document.createElement("p");
advanced.innerHTML = "Advanced configuration: Coming soon...";
document.getElementById("config-list-advanced")?.appendChild(advanced);
let default_btn = document.getElementById("load_default")!;
default_btn.removeAttribute("disabled");
default_btn.addEventListener('click', () => {