Commit graph

641 commits

Author SHA1 Message Date
CTCaer
ca0263fa8c hekate: info: fully deinit/unmount sd card 2023-03-31 09:17:51 +03:00
CTCaer
b1112e0949 hos: set proper exo hos version for 12.1.0
Even if 12.0.0 one is api compatible, there was a master key change on 12.1.0.
2023-03-31 09:17:13 +03:00
CTCaer
3c3fcb29f9 hekate: clear rtc interrupt and stop alarm
Stopping rtc alarm is now done in the function that actually checks it, in order to avoid power offs from HOS if it's fired and user wants to continue booting.

Additionally, clear the interrupt which is the actual thing that is checked by HOS.
2023-03-31 09:15:56 +03:00
CTCaer
5bdf323e5c Bump hekate to v6.0.2 and Nyx to v1.5.2 2023-02-23 01:25:19 +02:00
CTCaer
2e8bfc1f56 hos: add 16.0.0 support 2023-02-22 13:45:46 +02:00
CTCaer
7f92f65c26 fatfs/nyx: set minimum year to 2023 2023-02-22 13:23:40 +02:00
CTCaer
a44a4881d4 hekate/nyx: stylistic and copyright updates 2023-02-22 13:04:42 +02:00
CTCaer
64dac28073 hekate: allow accessing launch options without ini 2023-02-11 23:52:43 +02:00
CTCaer
5193416658 hekate/nyx: stylistic corrections 2023-02-11 23:51:43 +02:00
CTCaer
361aaf8629 l4t: disable AHB aperture and pllc war
We don't need AHB aperture after that point and new deinit fixes the pllc init issue on L4T boot.
2023-02-11 23:25:22 +02:00
CTCaer
080e3e2aa7 hos: disable AHB aperture before secmon launch
Seems that old secmon were missing that and it may cause bad behavior on boot.

Only affects stock old secmon versions.
2023-02-11 23:22:53 +02:00
CTCaer
f9e99212fc Bump hekate to v6.0.1 and Nyx to v1.5.1 2022-12-22 12:39:51 +02:00
CTCaer
1666daf447 l4t: fix several issues
- Fixed an issue where cached data would not be flushed after setting the fw carveout. Now they are flushed before setting it.
- Fixed and off-by-one bug and setting incorrect number of mtc entries.
2022-12-22 12:37:56 +02:00
CTCaer
47784faab2 Bump hekate to v6.0.0 and Nyx to v1.5.0 2022-12-20 17:01:42 +02:00
CTCaer
a2a302b9d5 l4t: Add L4T loader for T210 and T210B01 2022-12-20 17:00:33 +02:00
CTCaer
20915dd661 hekate: blink 3 times on OLED for auto hos pwr off
The OLED panel does not allow for variable PWM fade without sending DCS commands, so blink instead.
2022-12-19 06:03:53 +02:00
CTCaer
f49aecad19 hekate: update to ini_check_special_section 2022-12-19 05:43:48 +02:00
CTCaer
2e989c2338 hekate: increase battery enough limits 2022-12-19 05:35:45 +02:00
CTCaer
2119401b5c hekate: add T210B01 R2P 2022-12-19 05:31:35 +02:00
CTCaer
f16159542c hekate/nyx: slight refactor 2022-12-19 05:04:50 +02:00
CTCaer
227fe9b7ea cfg: remove creation from hekate and move to Nyx
There's no reason for hekate to create the hekate config if missing, since Nyx is the sole manager of it.

So move the auto creation there to save binary space.
2022-12-19 04:41:21 +02:00
CTCaer
c86554e954 Cleanup for years unused code
Compiler was also getting confused and actually not removing the unused functions.
So that also saves binary space.
2022-12-19 04:27:38 +02:00
CTCaer
1bef259571 Bump hekate to v5.9.0 and Nyx to v1.4.0 2022-10-12 12:31:31 +03:00
CTCaer
7e7e86b713 hos: add HOS 15.0.0 support 2022-10-11 10:29:41 +03:00
CTCaer
a6d0bf54cd hos: improve warmboot config
Add more checks, simplify it and allow it to be called on non-HOS code.
2022-10-11 08:53:46 +03:00
CTCaer
31c8292f23 config: set default auto hos power off to enabled for T210B01
For new users, set Auto HOS Power Off feature to enabled if T210B01 based SoC.
2022-10-11 07:51:45 +03:00
CTCaer
414721a1ff bootloader: Add animated ticker for VOL- wait
Now an animated line is drawn while bootlogo wait is active.
This will remind user to press VOL- if needed and also give visible feedback.

A new config key was added to disable it for custom bootlogos. Set `noticker=1` in `[config]` section.
It always show for default hekate one.

For now now there's no GUI option for it.
2022-10-11 07:49:17 +03:00
CTCaer
c0b16320cc bootloader: improve launch code
- Fix error not showing if payload is missing or can't be read
- Move errors to their callee function to save binary space
- Refactor various parameters and comments
- Reduce size on some errors
- Do not read HOS specific config in case of payload launch
- Remove unneeded code
2022-10-11 07:21:41 +03:00
CTCaer
e7866387cd bootloader: remove volatile from reloc
To save binary space, as it's not needed.
2022-10-11 07:00:24 +03:00
CTCaer
6739f03893 bootloader: remove rtc stop alarm from auto hos powerr off
It's done in power_set_state anyway.
2022-10-11 06:59:39 +03:00
CTCaer
0a9c71d5d6 bootloader: simplify emmcsn_path_impl 2022-10-11 06:58:22 +03:00
CTCaer
5392971c2c hekate/nyx: utilize emmc_end 2022-10-11 04:19:29 +03:00
CTCaer
1499f958dd Bump hekate to v5.8.0 and Nyx to v1.3.0 2022-07-01 13:47:47 +03:00
CTCaer
fe7fd6370e hekate/nyx: push some missed changes 2022-07-01 11:33:43 +03:00
CTCaer
535ea95086 hekate/nyx: gfx: add text color defines
And reduce code size when using W/EPRINTF macros
2022-07-01 04:37:57 +03:00
CTCaer
eba6b285ec hekate: utilize watchdog to catch sd based hangs
Utilize watchdog when configuring LP0/Minerva.
A problematic SD card connector can cause corrupted reads to happen and thus cause hekate to hang on a black screen.

By using a watchdog there, such issues can be avoided and the user can get notified visually.
2022-06-29 12:19:19 +03:00
CTCaer
3fa01a1975 hekate: fix a bug in low battery monitor
Do not try to deinit display if it's not enabled.

Can happen if LBM disables display to reserve power while charging and user presses both VOL buttons to exit the mode.
2022-06-04 22:03:47 +03:00
CTCaer
10205b17dd hekate: remove sd mount/unmout management for payload launch
Callers manage it anyway.
Fixes a case where missing the payload would result to Nyx not relaunching because sd was unmount.
2022-05-21 13:10:12 +03:00
CTCaer
75b7d91abf hekate: always init sublist on section creation
Even if there are no edge cases here
2022-05-21 13:08:46 +03:00
CTCaer
8428ce1a2e hekate/nyx: gfx: changes to putn 2022-05-19 15:06:37 +03:00
CTCaer
334d89973f hekate/nyx: adhere to uart driver changes 2022-05-08 05:46:23 +03:00
CTCaer
c2869703af hekate: gfx: add negative decimals printing
And remove external handling
2022-05-08 05:29:30 +03:00
CTCaer
8f540b2543 Bump hekate to v5.7.2 and Nyx to v1.2.2 2022-03-23 19:34:59 +02:00
CTCaer
f687c4f6da hos: add support for HOS 14.0.0 2022-03-23 02:21:59 +02:00
CTCaer
547c90a0a9 hekate: remove ipatches info from main hekate 2022-03-23 00:24:13 +02:00
CTCaer
cfd6567f5d pkg1: move warmboot rsa patching into pkg1
And create a function for hekatf to be used
2022-02-15 00:26:07 +02:00
CTCaer
9aa55c2d76 hekate/nyx: correct type on heap_init 2022-02-15 00:23:23 +02:00
CTCaer
ad4014f295 hekate: sd info: always reset mode after done 2022-02-15 00:18:24 +02:00
CTCaer
73d38e1183 hos: loop through counter instead of explicit sets 2022-02-15 00:16:42 +02:00
CTCaer
70ee61f0da More 2022 copyright updates 2022-01-29 01:43:35 +02:00
CTCaer
ce16a08694 main: check pstore log size if 0 2022-01-29 01:37:02 +02:00
CTCaer
0ad42762e7 main: rename logo buffer 2022-01-29 01:36:35 +02:00
CTCaer
5f337bffd6 config: do not unmount on exit
Fixes Nyx not found for new users without hekate_ipl.ini
2022-01-29 01:35:09 +02:00
CTCaer
aee5861f65 hekate/nyx: improve cyclomatic complexity 2022-01-29 01:23:40 +02:00
CTCaer
2f1d1572f7 Bump hekate to v5.7.0 and Nyx to v1.2.0 2022-01-20 14:34:54 +02:00
CTCaer
49f34581bb hos: add 13.2.1 support 2022-01-20 14:06:50 +02:00
CTCaer
17b0270eb5 hekate: move display init above others that need it 2022-01-20 13:57:25 +02:00
CTCaer
39ce19e6f4 hekate: remove unnecessary sd mounts
- Main already mounts sd. Also by trying again it takes forever to go into TUI
- Skip l4t kernel pstore dump and auto launch fw if sd failed to mount
2022-01-20 13:56:36 +02:00
CTCaer
b18b5076b3 hos: change order of deinits and update for newer exo 2022-01-20 13:49:29 +02:00
CTCaer
6ac9d79282 pkg2: do not hash kernel/ini1 if exo 2022-01-20 13:34:18 +02:00
CTCaer
836530d4e3 pkg2: refactor bitflags and remove debugging code 2022-01-20 13:32:48 +02:00
CTCaer
3b2f438f69 pkg2: ini patches: reduce heap fragmentation/pressure 2022-01-20 13:31:16 +02:00
CTCaer
28167b7304 hekate/nyx: move emmc ops to bdk and adhere to changes 2022-01-20 13:15:04 +02:00
CTCaer
943f675046 hekate/main: move sd ops into bdk 2022-01-20 12:49:18 +02:00
CTCaer
06e7af150e hekate/nyx: improve exceptions reporting
- Do not report HOS panic if status is 0
- Do not report LP0/MTC libs missing if failed to mount sd
- Rename panics to be explicit of their source
2022-01-16 01:33:07 +02:00
CTCaer
864ec50a2d main: add L4T kernel panic report back
L4T kernel now uses a PANIC magic flag instead of a bitflag and so it's simpler to detect.
2022-01-16 01:23:39 +02:00
CTCaer
aa0a9da37b fatfs: default year to 2022 2022-01-16 01:09:45 +02:00
CTCaer
30a4861da6 exo: change BOOT2 error message 2022-01-16 01:08:56 +02:00
CTCaer
5894062b93 hekate/nyx: utilize bdk global header 2022-01-16 00:04:34 +02:00
CTCaer
01b6e645b3 Bump hekate to v5.6.5 and Nyx to v1.1.1 2021-10-26 11:39:53 +03:00
CTCaer
db8c41cdaa hos: pkg2: add 13.1.0 support 2021-10-26 11:39:32 +03:00
CTCaer
c6fdb637ca Bump hekate to v5.6.4 and Nyx to v1.1.0 2021-10-19 09:16:49 +03:00
CTCaer
d2684f66a1 hos: change exfat check order 2021-10-19 09:11:36 +03:00
CTCaer
a7f0701cbf hos: move storage end above final touches 2021-10-15 16:47:06 +03:00
CTCaer
65b3b87c99 hos: pkg1: explicitly which type pkg1 is wrongly flashed 2021-10-15 16:42:39 +03:00
CTCaer
8d3700b76b hos: improve error for missing BEK or corrupt pkg1 on T210B01 2021-10-15 16:40:06 +03:00
CTCaer
d2595a00b6 nyx: move autorcm protection in nyx 2021-10-15 16:34:15 +03:00
CTCaer
c4bf129d5e hos: name pkg1/secmon states 2021-10-15 16:30:14 +03:00
CTCaer
503f4d4cd6 tui: tools: simplify autorcm warning 2021-10-15 16:26:57 +03:00
CTCaer
9c29ee437a Bump hekate to v5.6.3 and Nyx to v1.0.8 2021-10-01 15:54:49 +03:00
CTCaer
785baad5ea hos: exo: better fatal description for boot2 2021-10-01 15:46:38 +03:00
CTCaer
91b08f10fd hekate/nyx: use size defines where applicable 2021-10-01 15:45:25 +03:00
CTCaer
b47c01981f hekate: add OS panic error reporting 2021-10-01 14:35:39 +03:00
CTCaer
05ce867064 hekate: move emummc config load inside relevant functions
This ensures that hekate can re-read it in case of sd card swap while in TUI and also doesn't read it if not needed.
2021-09-26 12:23:54 +03:00
CTCaer
0160df7fb9 Bump hekate to v5.6.2 2021-09-20 11:45:58 +03:00
CTCaer
05c989a1ce emummc: correct id size and also set id if emupath is used
This corrects a truncation that was happening and also if `emupath` key is used to change emuMMC on the fly, it now uses the path as id instead of 0.
2021-09-20 11:41:48 +03:00
CTCaer
ebefd1c2d3 Bump hekate to v5.6.1 and Nyx to v1.0.7 2021-09-19 22:35:56 +03:00
CTCaer
d61be73bca nyx: add reminder that reload also checks for update.bin 2021-09-17 23:34:16 +03:00
CTCaer
768b3ba2d9 hos: update some log messages 2021-09-17 23:32:48 +03:00
CTCaer
0ff121284a hos: add full 13.0.0 support
- 13.0.0 master key support
- Derive proper keys per mkey revision instead of the latest for Erista devices
 This allows to identify issues with Pkg1/Pkg2 mismatch and also allows using old Exosphere/Atmosphere versions.
- Simplify pkg2 decryption because of proper keys
 7.0.0 is still done via 8.1.0 mkey because of an Exosphere bug.
- Add nogc patches
2021-09-17 23:32:13 +03:00
CTCaer
bcc2512cb6 hos: exo: fatal: add check for mixed atmosphere sysmods
Normally that can only happen if atmosphere is updated and config uses fusee-secondary instead of package3. In that case boot2 sysmodule (0100000000000008) will fatal.
2021-09-17 23:23:43 +03:00
CTCaer
a2d18f0848 hos: update fss0 parser
- Move extra key checks in the parser
- Remove some sept leftover checks
- Update printing to reflect PK3 name (FSS0 -> FSS/PK3)
2021-09-17 23:20:39 +03:00
CTCaer
197ed8c319 Bump hekate to v5.6.0 and Nyx to v1.0.6 2021-08-28 20:08:44 +03:00
CTCaer
f61e284ac0 config: add clamping of bootwait 2021-08-28 17:57:36 +03:00
CTCaer
9d69c9bd3f main: deduplicate code 2021-08-28 17:56:19 +03:00
CTCaer
9258025eea hos: add wrong pkg1 flashed detection 2021-08-28 17:55:30 +03:00
CTCaer
063abb3e23 hos: Fix compilation 2021-08-28 17:55:03 +03:00
CTCaer
f5ec4a3a37 hekate/Nyx: remove Sept completely
- remove any reference to sept and parsing of it
- completely refactor and simplify keygen
- use new Atmo tsec keygen for 7.0.0 and up
- simplify all info/tools that depend on hos keygen and bis keys
2021-08-28 17:53:14 +03:00
CTCaer
d8995ee9c0 hekate: clean unused stuff
Remove anything that will never be in TUI in the future.
Especially these that need modernization.
2021-08-22 16:56:05 +03:00
CTCaer
42f86cf82c Bump hekate to v5.5.8 and Nyx to v1.0.5 2021-07-06 20:02:23 +03:00