Commit Graph
128 Commits
Author SHA1 Message Date
hanabbi b9b36de4c9 feat(sys-clk-oc): set mariko min clock to 1020Mhz if using governor
Mariko: If using governor and cpu profile is higher than 1020, min clock will be set to 1020.
Not much power saved by underclocking below 1020, so to prevent stutter and hanging
2023-05-26 12:46:41 +09:00
hanabbi ccf0eccbf1 fix(sys-clk-oc): improve governor by changing get_next_freq algorithm
use freq set in profile as max_freq instead of last entry in table
2023-05-26 12:46:41 +09:00
hanabbi 8cfab71f4d fix(sys-clk-oc): fix governor not setting clocks correctly: fixes #1
- move hz check from ApplyTargetFreq to caller
2023-05-26 12:46:41 +09:00
hanabbi f981716933 refact(reversenx): separate ipc initialization from init
- Fix bug caused by calling serviceIsActive() w/o initializing Service struct
- Refactor init
2023-05-26 12:46:41 +09:00
hanabbi 78e814b0a6 fix(loader): fix timing adjust for mariko_4266 2023-05-26 12:46:41 +09:00
hanabbi 4b9f6b20d7 docs: update docs 2023-05-26 12:46:41 +09:00
hanabbi 9675b97228 revert gpu dvfs table @7bfee60 2023-05-26 12:46:41 +09:00
hanabbi 77e6f57593 fix(sys-clk-oc): revert charging current limit back to 2000mA 2023-05-26 12:46:41 +09:00
hanabbi e123195b4e fix(reversenx): fix reversenx sync connect error 2023-05-26 12:46:41 +09:00
hanabbi 3c02f170d6 feat(loader): change mariko cust table
- mariko: gpu undervolt with gpu dvfs table from l4t
- mariko: remove 2397 CPU and 1305 GPU
2023-05-26 12:46:41 +09:00
hanabbi 210040d4df fix(sys-clk-oc): temporary fix sysmodule not starting
fix 'cannot create directory' by remove call to mkdir in config in sysmodule
2023-05-26 12:46:41 +09:00
hanabbi d2cf257fa4 refact(sys-clk-oc): change config directory 2023-05-26 12:46:41 +09:00
hanabbi 0d60f56289 git subrepo clone --force https://github.com/WerWolv/libtesla Source/sys-clk-OC/overlay/lib/tesla/
subrepo:
  subdir:   "Source/sys-clk-OC/overlay/lib/tesla"
  merged:   "779b4ea"
upstream:
  origin:   "https://github.com/WerWolv/libtesla"
  branch:   "master"
  commit:   "779b4ea"
git-subrepo:
  version:  "0.4.5"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "dbb99be"
2023-05-26 12:46:41 +09:00
hanai3Bi 3db0b9b380 1.5.1 2023-05-26 12:45:29 +09:00
KazushiM 63bbde2f58 pages: cleanup 2023-02-12 23:55:54 +08:00
KazushiM b0ace1d8ae sys-clk-OC: Separate governor into multiple modules that could be disabled individually 2023-02-09 22:21:11 +08:00
KazushiM 8285e84071 Maximum RAM frequency will not be used automatically 2023-02-02 17:13:52 +08:00
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 012cd40a68 - sys-clk-OC: force disable charging, a temporary toggle that will be reset once power state changes (#57) 2023-01-04 14:25:33 +08:00
KazushiM 277f8d48e5 - sys-clk-OC: Charging current limit 2023-01-02 16:12:13 +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 b50899f4d1 [sys-clk-OC] Governor: Improve utility responsiveness 2022-12-02 20:22:09 +08:00
KazushiM a360904ac0 Save cust config to localStorage 2022-11-09 12:01:24 +08:00
KazushiM d884077db8 Online loader_configurator for web browser 2022-11-08 17:21:45 +08:00
KazushiM 523d2dc45a Fix maxMemFreq detection; Add some other alternative governor logic 2022-11-01 23:13:53 +08:00
KazushiM 72a8421df6 Create config dir if it does not exist; Fixed maxMemFreq detection 2022-10-31 17:22:39 +08:00
KazushiM 6a1ac29733 AutoCPUBoost for governor 2022-10-31 13:16:57 +08:00
KazushiM f1225c9ed1 Revert IpcService thread stack size (#47) 2022-10-31 11:49:34 +08:00
KazushiM 2962163f19 Fix memory leaks; Adjust heap & thread stack size (#47) 2022-10-31 11:20:24 +08:00
KazushiM 859841ab8e - Fixed gpu_hz_list typo in governor (#46)
- Parse loader.kip config from { "/", "/atmosphere/", "/atmosphere/kips/", "/bootloader/" } (#44)
2022-10-31 00:43:40 +08:00
KazushiM 524247955f spl: is unavailable in overlay (ovlloader specifically) 2022-10-29 03:11:52 +08:00
KazushiM 4eed01f458 Fixed SplConfigItem_HardwareType detection 2022-10-30 01:46:02 +08:00
KazushiM c808daa51f Config directory -> /config/sysclk/ #42 2022-10-30 00:40:56 +08:00
KazushiM 1dcd8cc1bb sys-clk-OC manager 2022-10-29 22:29:30 +08:00
KazushiM 26c0bff4dd Sys-clk-OC: Fixed #41; Erista support added; Manager is deprecated 2022-10-29 18:38:57 +08:00
KazushiM a6dcf1da5c [Sys-clk-OC] Added an governor toggle per title in overlay (default: governor enabled) (#37); Fixed an issue where governor does not bump CPU frequency immediately to max when some non-system core (Core0/1/2) util is 100%. 2022-10-28 22:18:20 +08:00
KazushiM 851839be0a Schedutil-like governor with proper load_avg calculation; Fixed #36 2022-10-27 01:41:38 +08:00
KazushiM 0f6fb06e53 Boost mode typo; uplift sample rate to 200/s; GPU boost mode = GPU throttled mode 2022-10-24 12:22:23 +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 d596016c84 Fix ReverseNX RT/Tool mode synchronization 2022-10-16 11:38:21 +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 1063022b65 Sys-clk-OC: remove temp. charging toggle, add charging limiter 2022-10-01 20:47:27 +08:00
KazushiM ff0dcb5ece git subrepo clone --force https://github.com/WerWolv/libtesla Source/sys-clk-OC/overlay/lib/tesla
subrepo:
  subdir:   "Source/sys-clk-OC/overlay/lib/tesla"
  merged:   "930ce85"
upstream:
  origin:   "https://github.com/WerWolv/libtesla"
  branch:   "master"
  commit:   "930ce85"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/Homebrew/brew"
  commit:   "7a14ae618"
2022-10-01 17:09:03 +08:00
KazushiM 6f5de53382 [sys-clk-OC] Disable unsafe frequencies by default; Remove emulator-mode; Move fast-charging handler to sysmodule 2022-05-15 19:37:50 +08:00