CTCaer
9e34c5995d
bis: Pull latest lockpick driver and refactor it
...
- Refactor various variables and functions
- Flush whole cache when full
- Allow cache to be disabled
- Add support for raw emuMMC in nyx contenxt
- Use partition names for keys (to avoid issues with different ordering)
- Add deinit function that flushes the whole cache
- Change bis lookup address
- Halve cache size to 256MB in order to support 512MB ramdisk also.
Co-Authored-By: shchmue <7903403+shchmue@users.noreply.github.com>
2021-02-06 04:05:31 +02:00
CTCaer
8683a0ff58
gfx: Accept any type in gfx_hexdump
2021-02-06 03:57:39 +02:00
CTCaer
eea5463a5c
nyx: Refactor nyx extra cfg
2021-02-06 03:55:01 +02:00
CTCaer
af790aeaf8
nyx: Beef up eMMC/SD benchmark
...
- Added 4KB sequential and random tests that shows IOPS and rate
- The test is now faster as it does 1GB raw reads and 512GB for random reads
- Still does 3 iterations in order to cover both nands that most eMMCs and SDs have.
2021-02-06 03:51:26 +02:00
CTCaer
a8a45b215a
nyx: Add emmc info about write cache and enhanced area
2021-02-06 03:44:27 +02:00
CTCaer
38f456a2ee
sdmmc: Refactor again
...
- Refactor various variables and defines
- Removed Card/BGA and OEM ID info as they are static and useless
- Commented out bkops functions completely as not used
- Remove extra buf usage when there's already storage for storing that data
- Optimize various functions to save space
- Clean up useless or duplicate code
2021-02-06 03:41:35 +02:00
CTCaer
ea83566fc9
sept: Disallow sept if improper BCT to avoid black screen
2021-02-06 03:24:58 +02:00
CTCaer
0857d7ff0e
hos: Do not clear SBK in Nyx for HOS 4.0.0 to 6.0.0
2021-02-06 03:21:14 +02:00
CTCaer
48e98ab8c9
eks: Update old version automatically
2021-02-06 03:20:43 +02:00
CTCaer
8cd438146d
sdmmc: Use global emmc storage in various places
2021-02-06 03:19:42 +02:00
CTCaer
2428736bfa
hos: Use structs for eks keyblobs and tsec keys
2021-02-06 03:00:48 +02:00
CTCaer
a7bf8bf118
se: Refactor with proper names
...
Additionally fix some bugs in rsa access control
2021-02-06 02:55:58 +02:00
CTCaer
15a7e49dde
fatfs: Add simple GPT support
...
This allows for a simple GPT parsing and checking first partition to see if it's FAT based.
This allows hekate booting GPT with tiny size cost.
2021-02-05 23:27:52 +02:00
CTCaer
7aa1e77642
nyx: Do not over decrypt pkg1 on t210b01
2021-01-11 23:28:06 +02:00
CTCaer
abcf7f6f57
nyx: Allow reboot to OFW for patched units
...
- OFW: This bypasses fuses like always and does not cause a SYS Reset.
- Normal: Resets regulators and causes a SYS Reset.
2021-01-11 22:18:36 +02:00
CTCaer
d1f0ea3de7
Formalize language in various messages
2021-01-11 21:39:44 +02:00
CTCaer
dbc8f4a4c2
nyx: Fix an underflow on Android UDA partition
2021-01-11 21:32:35 +02:00
CTCaer
c6c396ce2a
reg5V: Manage battery source based on charger status
2021-01-11 21:30:59 +02:00
CTCaer
74b91b0085
nyx: Cover edge case on backup/restore checks for partition manager
...
An edge was fixed where the checks for if it's possible to backup files for partition manager would overflow and end up with a value < 1GB and thus proceeding to the backup/restore process.
2021-01-10 02:09:03 +02:00
CTCaer
53c9ca8072
nyx: Fix nyx hanging when updating the partition buttons
2021-01-06 21:29:18 +02:00
CTCaer
147ccd3070
nyx: Add Main/CPU/GPU pmic info.
2021-01-05 17:12:03 +02:00
CTCaer
dc5c26e7c6
nyx: Change fuse dumping names for T210B01 again
...
Use offsets in names for making it easier to parse.
2021-01-05 15:52:34 +02:00
CTCaer
4914af1200
nyx: Allow selection of emuMMC migration type
2021-01-05 15:44:35 +02:00
CTCaer
b57d26e99a
nyx: Add nyx options save reminder
2021-01-05 15:41:27 +02:00
CTCaer
f196b8bb0e
eks: Add compatibility support for v1.1
2021-01-05 15:37:36 +02:00
CTCaer
9daa14abec
ums: Dim backlight and change the maintenance order
2021-01-04 20:12:26 +02:00
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