Commit Graph

20 Commits

Author SHA1 Message Date
KazushiM
a5e63bc034 Save 5KiB heap space from pcv; Separate configurator entries with tabs 2023-01-31 22:24:06 +08:00
KazushiM
f47e7604fe - pages: Drop cust v2 support; Show update time in download section
- oc_loader: Separate Vddq and Vdd2 DRAM voltage for Mariko

- sys-clk-OC: Fix wrong regulator ID; Auto CPU Boost for Erista
2023-01-27 10:45:06 +08:00
KazushiM
cdbd0b0045 Release: 1.4.1 2023-01-25 21:01:04 +08:00
KazushiM
f33a59370a Introduce redesigned project homepage; Fix #64 #65
- loaderConfigurator now renamed to pages, with configurator section supporting both v2 and v3 Cust
2023-01-25 18:58:43 +08:00
KazushiM
120367cf7c EMC voltage for Mariko; Fix #60; Show battery & voltage info in overlay on Erista
- From previous analysis, EMC voltage is set before AMS loads on Mariko, and will not be set again or changed afterwards.

- sys-clk-OC will take care of setting emc voltage on Mariko once it loads.

- OS will not hang at boot as it always boots with EMC @ 1600 MHz.
2023-01-24 23:24:58 +08:00
KazushiM
139c7dfcad - oc_loader: pcv_erista: use 1963.5 MHz instead of 1989
- sys-clk-OC: update safe/unsafe frequencies (Erista CPU 1785/2091, Mariko CPU 1963/2397, Mariko GPU 998/1305); add 408/510 MHz CPU clocks; add unsafe toggle for Erista
2022-12-30 20:58:33 +08:00
KazushiM
b0b80c8458 - oc_loader: major refactoring 2022-12-29 19:41:50 +08:00
KazushiM
b52bef3c31 Updated: Sys-clk-OC, Loader, System_settings
- Sys-clk-OC

  - Major cleanup in clock_manager, preparing to add basic Erista support.

  - Added an experimental CPU & GPU frequency governor.

    - Known issue:

      - Occasional stuttering is expected: GPU load% metric PMU_GET_GPU_LOAD does not reflect real utilization precisely. Use another metric, some interpolation algo or add min frequency option for improvement.

- Loader

  - Addressed an issue for Erista variants: Boot with unmodified Fusee or Hekate, nn::pcv::EmcDvfsPeriodicCompHandler will fail with rc 0x8C5. Fixed by removing 40.8 MHz while retaining 1600.0 MHz MEM table -- however, this means user has to use modified sys-clk.
2022-10-23 23:36:52 +08:00
KazushiM
1d7395da56 - [Sys-clk-OC] (#31) Fix the inverted priority of per-app and global settings in clocks and patches detection
- [loader] Bump to 1.4.0-pre

- [system_settings] Add possible entries introduced in HOS 15.0.0
2022-10-13 02:11:24 +08:00
KazushiM
c8587ce441 Misc gui in sys-clk overlay updated, HOS 15.0.0 test passed
Extracting nca...
79c6b910fe436a85496d3b822f23b8b9.nca (ptm) -> /Volumes/RAMDISK/ptm/
e11685a3958d1f25a8f44f54126b10ff.nca (pcv) -> /Volumes/RAMDISK/pcv/

Converting nca to elf...

Building...

Patching...
Patching pcv for Erista...
CpuClkOSLimit   Count: 1
CpuVoltLimit*   Count: 14
MemClkOSLimit   Count: 32
MemVoltHOS      Count: 2
MemClkPllmLimit Count: 2
	in void ams::ldr::oc::pcv::Erista::Patch(uintptr_t, size_t)
Saving to "/Volumes/RAMDISK/pcv/main.elf.erista"...
Patching pcv for Mariko...
CpuClkOSLimit   Count: 1
CpuClkOfficial  Count: 1
GpuClkOfficial  Count: 1
CpuVoltOfficial Count: 13
MemClkOSLimit   Count: 32
GpuClkPllLimit  Count: 1
MemClkPllmLimit Count: 2
GpuAsmPattern   Count: 2
	in void ams::ldr::oc::pcv::Mariko::Patch(uintptr_t, size_t)
Saving to "/Volumes/RAMDISK/pcv/main.elf.mariko"...
Passed!

Patching ptm (Mariko Only)...
cpuPtmBoost Count: 2
memPtmMax   Count: 9
memPtmAlt   Count: 7
	in void ams::ldr::oc::ptm::Patch(uintptr_t, size_t)
Saving to "/Volumes/RAMDISK/ptm/main.elf.mariko"...
Passed!
2022-10-11 15:28:09 +08:00
KazushiM
c369641229 - [Sys-clk-OC]: Avoid conflicts with ptm module setting boost clocks
- [Sys-clk-OC]: Reduce sensitivity of Auto CPU Boost (≥95%)
- [test_patch]: Throw error if no patching entries were found.
2022-04-14 23:06:39 +08:00
KazushiM
926b9016b1 ldr_oc_suite: adopt ams style return code; test is now clang compatible; loader.kip will not crash if pcv/ptm sysmodules is manually patched. 2022-04-02 22:20:21 +08:00
KazushiM
0bb4249a5f Add info and script on patching sysmodules manually 2022-03-31 23:53:01 +08:00
KazushiM
d6e2ac2527 HOS 14.0.0 passed:
Extracting nca...
./43772e89bbf8147fef94a4e8d81f4810.nca (pcv) -> /Volumes/RAM/pcv/
./5110ceed5e759af52d8ad3efcd005580.nca (ptm) -> /Volumes/RAM/ptm/

Converting nca to elf...

Building and testing...
Patching pcv...
CpuClkOSLimit   Count: 1
CpuVoltLimit*   Count: 14
MemClkOSLimit   Count: 32
MemVoltHOS      Count: 2
MemClkPllmLimit Count: 2
	in void ams::ldr::oc::pcv::Erista::Patch(uintptr_t, size_t)
CpuClkOSLimit   Count: 1
CpuClkOfficial  Count: 1
GpuClkOfficial  Count: 1
CpuVoltOfficial Count: 13
MemClkOSLimit   Count: 32
GpuClkPllLimit  Count: 1
MemClkPllmLimit Count: 2
GpuAsmPattern   Count: 2
	in void ams::ldr::oc::pcv::Mariko::Patch(uintptr_t, size_t)
Passed!

Patching ptm...
cpuPtmBoost Count: 2
memPtmMax   Count: 9
memPtmAlt   Count: 7
	in void ams::ldr::oc::ptm::Patch(uintptr_t, size_t)
Passed!
2022-03-23 13:51:48 +08:00
KazushiM
6585abfcb8 Configurable CPU Boost Freq 2022-03-17 12:21:06 +08:00
KazushiM
94ac52e80b homebrew to query clkrst registers, requires rebuilding nx-hbloader to allow access; emc pllm(b) divm accepts 1/2/4 only 2022-02-09 19:06:55 +08:00
KazushiM
c701de9ca5 Match pattern before check configuration 2022-02-08 11:48:18 +08:00
KazushiM
7fd47ce576 Add loader configurator in python script 2022-02-08 00:35:05 +08:00
KazushiM
1421586391 Erista EMC volt in uV; Add safety checks (voltage and cust) 2022-02-07 02:25:18 +08:00
KazushiM
c3432281da Cleanup and add self-test 2022-02-07 01:22:14 +08:00