Commit graph

475 commits

Author SHA1 Message Date
CTCaer
46921aca22 Disable battery management on dev units 2021-01-04 02:58:07 +02:00
CTCaer
41f96d4305 hos: Utilize burnt fuse info instead of keyblob
Streamline identification of HOS version quirks
2021-01-04 02:57:07 +02:00
CTCaer
0959dc3a2d nyx: Add touch panel info
This can probably also show if the panel is paired to the firmware.
In case it's not, an error will show up.
2021-01-04 02:49:07 +02:00
CTCaer
31baf3d19a nyx: Rearrange hw info a bit 2021-01-04 02:47:08 +02:00
CTCaer
f4696da0ef sdram: Update names for Aula 2021-01-04 02:45:32 +02:00
CTCaer
1a9372b4ce nyx: Add MSC partition for L4T Android 2021-01-03 14:52:13 +02:00
CTCaer
87b91174ec nyx: Disable Flash Linux/Android buttons if partitions not found 2021-01-03 14:51:48 +02:00
CTCaer
26fff275ce nyx: Remove L4T joycon driver mitigation
Seems that this was fixed long ago
2021-01-03 14:46:42 +02:00
CTCaer
53b44a525d Refactor emmcsn_path_impl and return serial number if needed
The refactoring also makes consecutive requests instantaneous.
2021-01-03 14:45:06 +02:00
CTCaer
faaf801534 nyx: Add metadata copy in partitioning and extra warns 2020-12-28 05:34:01 +02:00
CTCaer
3fa775e3ad nyx: Add burnt fuses - HOS pair info
Additionally add raw value info for ODM fuses 4, 6 and 7.
2020-12-28 05:32:23 +02:00
CTCaer
6663330de3 nyx: Split T210B01 fuse dumping for better readability 2020-12-28 05:30:34 +02:00
CTCaer
ed916360eb display: Add new panel revision 2020-12-28 05:24:42 +02:00
CTCaer
60b629e57f Move display related objects to display parrent 2020-12-28 05:19:23 +02:00
CTCaer
cbbd427d3a Change coreboot error from T210B01 to Mariko
Change T210B01 name in order for users to understand that it's about Mariko.
2020-12-26 17:30:49 +02:00
CTCaer
a85891ae00 Refactor AutoRCM tools 2020-12-26 16:38:21 +02:00
CTCaer
2628044ba8 fuse: Move more parsing into its specific object 2020-12-26 16:34:12 +02:00
CTCaer
52c65661d8 Improve Power off by resetting all regulators 2020-12-15 19:37:52 +02:00
CTCaer
601c85c23e util: Refactor power management (reboot/power off) 2020-12-15 19:33:46 +02:00
CTCaer
f1386c60af hos: Fix sleep on modchiped Erista 2020-12-11 18:22:33 +02:00
CTCaer
b6ec217484 exo: Support uart logging
This can be enabled via compile time flags or exosphere.ini.
Compile time flags override exosphere.ini
2020-12-11 18:14:00 +02:00
CTCaer
ad560b650e nyx: di: Set display id we got from bootloader 2020-12-11 17:49:06 +02:00
CTCaer
14a048a496 nyx: Add SD init info from bootloader
This shows info about the sd initialization process that happened on hekate main
2020-12-11 17:46:44 +02:00
CTCaer
fce59fba43 nyx: Add SD card AU info 2020-12-11 17:41:09 +02:00
CTCaer
685663dcf6 nyx: Add bis key print in console 2020-12-11 17:39:30 +02:00
CTCaer
cb61e856ad hos: Fix bis keygen for keygen rev 11 (HOS 9.1.0+) 2020-12-11 17:39:05 +02:00
CTCaer
5b8fb9fb6b Various refactoring and addition of comments 2020-12-11 17:25:59 +02:00
CTCaer
b8eff953c6 nyx: Utilize full shutdown based reboot for patched Erista also 2020-12-02 22:27:22 +02:00
CTCaer
cf1f94662c sdram: Correct some dram names 2020-12-02 22:26:06 +02:00
CTCaer
d287d40208 hos: Add HOS 11.0.0 support 2020-12-02 02:41:32 +02:00
CTCaer
2aa1ce5390 nyx: Add eMMC and SD vendor id decoding into names 2020-12-02 02:11:22 +02:00
CTCaer
cf175fc00d nyx: Add alternate power saving modes
T210:
By default max power savings is enabled.
By changing `newpowersave=` to 0, it reverts to the old behavior of smaller power savings.

This was added to mitigate some strange DRAM chips, hanging from constant frequency change of a 800 MHz - 1600 MHz back and forth.

T210B01:
Defaults to a simple loop with no power savings. That's because of untrained ram.
2020-12-02 02:07:31 +02:00
CTCaer
0954eb2b09 nyx: Use full shutdown based reboot on T210B01
That's because of how the system is exploited.
2020-12-02 01:45:12 +02:00
CTCaer
2424ecc4f0 Disable coreboot.rom chainloading for T210B01
Unlike all RCM payloads that are based on hekate's hwinit, coreboot does full power management before sdram init is run.

Because of that and because it doesn't support T210B01, it does not hang as expected and configures all regulators and pins which can be dangerous!
2020-12-02 00:57:32 +02:00
CTCaer
495907b8a4 sept: Mark as ready for Mariko 2020-07-04 21:36:37 +03:00
CTCaer
f9a1935762 nyx: Fix Dump pkg1/pkg2 and cal0 for Mariko 2020-07-04 21:36:04 +03:00
CTCaer
8ef9f888f6 hos: Add PK21 decryption support for Mariko 2020-07-04 21:35:26 +03:00
CTCaer
9b3e9724b7 hos: Add Mariko PK11 decryption and unpacking 2020-07-04 21:32:36 +03:00
CTCaer
8880dfab24 eks: Disallow on Mariko 2020-07-04 21:21:48 +03:00
CTCaer
5ffbbf40a5 hos: Add Mariko keygen 2020-07-04 21:13:25 +03:00
CTCaer
7acad84932 nyx: Disable TSEC keys status for T210B01 2020-07-04 21:04:57 +03:00
CTCaer
8d2230dc51 fuse: Correct fuse array size for T210B01 2020-07-04 21:04:20 +03:00
CTCaer
e4c0756ded nyx: Add DRAM names info + Mariko new ram codes 2020-06-26 22:41:34 +03:00
CTCaer
1c9efa327c Correct RCM patched status for Mariko
This also disallows AutoRCM for Mariko.
2020-06-26 22:40:06 +03:00
CTCaer
cabaa6cfb8 Utilize BIT macro everywhere 2020-11-26 01:41:45 +02:00
CTCaer
e45ffab5d8 Remove stray hekate cfg set. It's handled by default. 2020-11-15 14:00:35 +02:00
CTCaer
55568b037f nyx: Properly calculate Ranks and Channels in hw info 2020-11-15 13:50:19 +02:00
CTCaer
b5df428e43 nyx: Create bootloader folder on screenshots if missing 2020-11-15 13:47:47 +02:00
CTCaer
67a03bbd85 eks: Use LOT0 for identification 2020-11-15 13:43:22 +02:00
CTCaer
32955380c7 nyx: Fix icons for backup/restore swap 2020-11-15 13:40:53 +02:00
CTCaer
485edb4883 emc: Rename Device to Rank 2020-11-15 13:23:37 +02:00
CTCaer
8f222fd0bd main: Fix update.bin creation on first boot 2020-10-27 21:27:51 +02:00
CTCaer
1f5b371608 Refactor some names
Additionally:
- Do not retry to init sd if all modes failed in Nyx.
- Do not try to read/write if sdmmc controller and card are not initialized.
2020-10-23 06:32:24 +03:00
CTCaer
ce156ab4e7 hos: Automate some eks and bis checks 2020-10-20 11:53:28 +03:00
CTCaer
94235dd005 bm92t30: Add proper info
The driver will now show more charger supported profiles and will also show selected profile.
2020-10-20 10:42:57 +03:00
CTCaer
27b1f0e843 Various small fixes 2020-10-20 10:32:32 +03:00
CTCaer
dae7be8ec4 nyx: Allow disabling of Joycon
Setting `jcdisable=1` in nyx.ini disables the usage of Joycon completely.

This also disables the BT pairing data dumping tool.
2020-10-20 10:21:48 +03:00
CTCaer
2f5b52223c config: Add bootloader protection
`bootprotect=1` enables protection of the `bootloader` folder inside HOS.

This disallows any reading/writing of the folder and its contents inside HOS, preventing any corruption of it.

This of course has the side-effect of homebrew that depend on it (e.g. hekate Toolbox) to not work fully.
2020-10-20 10:16:12 +03:00
CTCaer
e3e5dab0fc nyx: Add USB Charger info 2020-09-15 20:14:56 +03:00
CTCaer
e7900b11b4 nyx: Allow L4T last part to be unaligned 2020-09-02 13:11:03 +03:00
CTCaer
461d14c39a di: Correct panel id for AUO A062TAN02 2020-08-28 05:26:18 +03:00
CTCaer
3d05b58856 nyx: Add eMMC NAND cells life estimation 2020-08-15 12:33:11 +03:00
CTCaer
78c4e6510d hos: Add backup bootloader support 2020-08-15 12:30:18 +03:00
CTCaer
cd76d5ac09 nyx: Fix hang on using B button after Launch window 2020-08-15 12:22:01 +03:00
CTCaer
9c2a064817 nyx: Allow SD removal without reloading Nyx 2020-08-15 12:21:25 +03:00
CTCaer
db2da89f69 nyx: Remove delay on JC calibration
This does not help with drifting as the logged values are always changing drastically.
2020-08-15 12:19:43 +03:00
CTCaer
4fc420616d nyx: Control UART debug completely via makefile
Also enables LvGL log.
2020-08-13 10:21:00 +03:00
CTCaer
5140992a7b nyx: Add proper info about SD write protect 2020-07-19 20:56:08 +03:00
CTCaer
b8ca88ee0a exo: Change fatal names and add stack overflow 2020-07-18 12:53:05 +03:00
CTCaer
adfa7c0780 fuse: Use fuse count function for burnt fuses 2020-07-18 01:15:28 +03:00
CTCaer
11df6030f9 Various fixes 2020-07-18 00:54:35 +03:00
CTCaer
32e58d2bb3 hw init: Cosmetic refactoring 2020-07-17 18:08:27 +03:00
CTCaer
638a3909c5 Refactor various variables and names 2020-07-17 18:00:32 +03:00
CTCaer
3c2d86ef7b sdmmc: Add protected area info (Content Protection) 2020-07-17 17:01:40 +03:00
CTCaer
f559017aeb di: Update display panels and info 2020-07-17 16:57:45 +03:00
CTCaer
3ddd1c26ad pkg1: Fix PK11 component split in pkg1/2 dump tool 2020-07-14 23:29:48 +03:00
CTCaer
ab5b59e10d Refactor fatal/hard error names 2020-07-14 22:41:48 +03:00
CTCaer
1f67251331 nyx: Use strcat whenever possible 2020-07-14 22:26:40 +03:00
CTCaer
4eecdfa553 nyx: Add decrypted CAL0 dumping 2020-07-14 21:16:52 +03:00
CTCaer
80dd0f1580 joycon: Skip first 4 packets for calibration 2020-07-14 21:13:37 +03:00
CTCaer
4e0c70a402 nyx: Do not timeout joycon with screenshot
Additionally, screenshots are allowed only every 2s instead per second.
2020-07-14 21:12:09 +03:00
CTCaer
ddc89c9f49 hos: Reduce size of pkg1 id array 2020-06-22 12:04:49 +03:00
CTCaer
3214fc2f93 nyx: Fix validation check for emuMMC restore
When checking a partition for enough size for emuMMC restore, always check against the extra 16MB.
2020-06-18 01:23:06 +03:00
CTCaer
3b0925b912 touch: Check if init failed and stop parsing if yes 2020-06-17 00:41:37 +03:00
CTCaer
564f36fc8b hos: Fix mkey validation on BIS derivation 2020-06-15 17:31:29 +03:00
CTCaer
6159284be6 nyx: Check for huge files in part manager backup 2020-06-15 15:05:47 +03:00
CTCaer
9afc6f0a4e joycon: Add bigger deadzone for virtual mouse 2020-06-15 15:04:46 +03:00
CTCaer
f689bb253e nyx: Add simple CAL0 info 2020-06-15 15:03:14 +03:00
CTCaer
0738c96867 nyx: Fix pkg1/2 dumping with new changes 2020-06-15 15:01:18 +03:00
CTCaer
edba8ca986 hos: Add BIS keys derivation 2020-06-15 14:59:45 +03:00
CTCaer
2aa9055fae Various fixes 2020-06-15 14:58:50 +03:00
CTCaer
029d66bd95 Fix build for lvgl UART log 2020-06-14 17:33:57 +03:00
CTCaer
c73b4ad6ba nyx: Include Hoag as Mariko in fuses info 2020-06-14 16:51:06 +03:00
CTCaer
6e256d29c7 Utilize hekate's BDK for hekate main and Nyx 2020-06-14 16:45:45 +03:00
CTCaer
185526d134 Introducing Bootloader Development Kit (BDK)
BDK will allow developers to use the full collection of drivers,
with limited editing, if any, for making payloads for Nintendo Switch.

Using a single source for everything will also help decoupling
Switch specific code and easily port it to other Tegra X1/X1+ platforms.
And maybe even to lower targets.

Everything is now centrilized into bdk folder.
Every module or project can utilize it by simply including it.

This is just the start and it will continue to improve.
2020-06-14 15:25:21 +03:00
CTCaer
9b1c61fbcf storage: Add cal0 struct 2020-06-14 14:11:15 +03:00
CTCaer
ae7ef7d79a fuse: Add get odm keygen type 2020-06-14 14:10:29 +03:00
CTCaer
273f11cd59 sdram: Extend sdram id 2020-06-14 14:07:21 +03:00
CTCaer
f5092bc981 heap: Add heap object copy 2020-06-14 14:02:13 +03:00
CTCaer
d607a8830b hos: Support new sept/exo keyslots 2020-06-14 13:53:21 +03:00
CTCaer
92d013dd65 eks: Upgrade to new version and support BIS keys 2020-06-14 13:42:48 +03:00
CTCaer
242bbdada5 storage: Better BIS support
It now supports more than one crypto block and keys are expected to slot 0 and up to slot 5.
2020-06-14 13:36:36 +03:00
CTCaer
d95449c22d usb: Fix some issues with usb descriptors 2020-06-14 13:33:13 +03:00
CTCaer
4d8dbe068d sept: Remove support for obsolete no _00/01 suffix 2020-06-14 13:25:08 +03:00
CTCaer
157e415636 uart: Decreases timeouts to reduce latency 2020-06-14 13:21:59 +03:00
CTCaer
48f84c5cf4 gpio: Remove dependency to irq driver 2020-06-14 13:20:56 +03:00
CTCaer
1d3d1c8454 clock: Prevent PLLC4 from glitching 2020-06-14 13:19:53 +03:00
CTCaer
bb2b339b54 ianos: Remove sd (un)mount usage 2020-06-14 13:17:26 +03:00
CTCaer
5790c585f5 nyx: Reduce idle power draw by 280mW 2020-06-14 13:14:32 +03:00
CTCaer
a2655912d4 nyx: Auto center cursor based on its size 2020-06-14 13:13:27 +03:00
CTCaer
e2c905e9b2 joycon: More robust spi dumping for bd addr/ltk 2020-06-14 13:13:04 +03:00
CTCaer
9619417b07 nyx: Allow arc bits tool to work on all compat folders 2020-06-14 13:09:10 +03:00
CTCaer
b0bcdeafac nyx: Find best cluster size automatically 2020-06-14 13:07:42 +03:00
CTCaer
7b76015fd1 nyx: Fix an issue with hos partition initial size 2020-06-14 13:07:21 +03:00
CTCaer
465955c8f5 nyx: Use sd actual size for partition making 2020-06-14 13:06:43 +03:00
CTCaer
90a759b98e Use reconfig workaround for power off and reboots 2020-06-14 13:05:51 +03:00
CTCaer
0096b91146 Add corrupted bmp protection 2020-06-14 13:04:13 +03:00
CTCaer
125f000894 nyx: Use date/time for screenshot names
Now that RTC clock can be offset in software it's good to have actual dates on screenshots.
2020-06-14 13:02:54 +03:00
CTCaer
f9a0e6ce4f nyx: Show clock edit on boot if 0 offset 2020-06-14 13:00:55 +03:00
CTCaer
0d5a1416d0 nyx: Show SD card total blocks in info 2020-06-14 12:59:41 +03:00
CTCaer
43f3132069 nyx: Do not show SFD partitions as valid for emuMMC 2020-06-14 12:53:35 +03:00
CTCaer
3d00a1be21 nyx: Support multiple backup based emuMMC 2020-06-14 12:52:54 +03:00
CTCaer
87ce09f4b1 Some fixes 2020-06-14 12:50:54 +03:00
CTCaer
31f90a0a47 se: Fix CBC encryption 2020-06-14 03:10:30 +03:00
CTCaer
af30904624 se: Simplify oneshot execute calls 2020-06-14 03:10:04 +03:00
CTCaer
f2f995af17 se: Allow sha256 continuation without saving the msg 2020-06-14 03:08:27 +03:00
CTCaer
3dcd2ad15f hos: Header for pkg2 is now more proper 2020-06-14 02:23:02 +03:00
CTCaer
eb2c8a032f power: Enable charger unconditionally 2020-06-14 02:04:50 +03:00
CTCaer
416db840ec power: Refactor max17050 driver 2020-06-14 02:03:43 +03:00
CTCaer
b0c4cef077 power: Fix max77621 DVS voltage reg names 2020-06-14 02:02:26 +03:00
CTCaer
58d12e5754 power: Refactor bq24193 driver 2020-06-14 02:01:26 +03:00
CTCaer
bcda64a5df tsec: Decouple hos header dependency 2020-06-14 01:32:54 +03:00
CTCaer
ba77de3dc5 exo: Refactor exo_cfg context to exo_ctx 2020-06-14 01:29:41 +03:00
CTCaer
53325617bb hos: Small refactoring 2020-06-14 01:27:08 +03:00
CTCaer
8e836d958f Rename cluster to ccplex 2020-06-14 01:09:17 +03:00
CTCaer
21548545fc Equalize hekate main and Nyx sd based functions 2020-06-13 18:32:40 +03:00
CTCaer
7dd3178d48 Equalize hekate main and Nyx common functions 2020-06-13 18:16:29 +03:00
Dave Murphy
cc54df87d7 fixes for compiling with gcc 10
gcc 10 no longer lets you get away with not externing global variables in header files. This adds the necessary extern and adds defines in appropriate c files
2020-05-08 23:32:44 +01:00
CTCaer
9698cbc9d7 nyx: Fix archive bits fixer and extention folders 2020-05-05 21:24:28 +03:00
CTCaer
d8b6aa3831 nyx: Correct the error message for format 2020-05-05 19:28:34 +03:00
CTCaer
3e5ef39686 nyx: Fix emummc slider when there's not enough space 2020-05-05 19:28:15 +03:00
CTCaer
bc7c65447d nyx: Add start clearing for ext4 partitions 2020-05-05 19:27:45 +03:00
CTCaer
a91378b9c1 nyx: Allow always writeable emmc via config
The key is `umsemmcrw` and resides in nyx.ini
2020-05-05 19:26:10 +03:00
CTCaer
5b91c54936 fatfs: Backport some fixes 2020-05-05 19:21:07 +03:00
CTCaer
322280757f nyx: Fix time offset parsing 2020-05-05 19:20:04 +03:00
CTCaer
b1636fbb96 nyx: Add unsaved config changes pop up 2020-05-05 19:19:12 +03:00
CTCaer
cc18a7b146 nyx: Allow changing Date/Time via tickers 2020-05-05 19:17:29 +03:00
CTCaer
5fe84a78ac rtc: Remove custom encoding 2020-05-05 19:16:16 +03:00
CTCaer
822e0dcd98 Various small fixes 2020-05-05 19:11:39 +03:00
CTCaer
a6be3714a3 ums: Update Nyx status bar during UMS 2020-05-05 19:02:01 +03:00