Commit graph

418 commits

Author SHA1 Message Date
CTCaer
fe7fd6370e hekate/nyx: push some missed changes 2022-07-01 11:33:43 +03:00
CTCaer
3369dcd110 nyx: if no full backup, backup MWS folder also
When full backup is not possible, together with bootloader folder, also backup mariko warmboot storage if it exists.
2022-06-25 06:47:12 +03:00
CTCaer
677770bfee nyx: offer wipe if partitioning can backup files 2022-06-25 06:41:34 +03:00
CTCaer
e2f6e925c4 nyx: info: show total size of fat partition 2022-06-19 12:39:02 +03:00
CTCaer
0e526bf9e8 nyx: tools: fix hybrid mbr changes
- MBR is now checked if it has GPT partition, in order to avoid revival of a dead but valid GPT
- MBR secret attributes can now be cleared even if there's no GPT
2022-05-27 04:44:42 +03:00
CTCaer
358896eb7d nyx: tools: inform user on erros in archive bit fixer 2022-05-21 14:24:43 +03:00
CTCaer
af22085172 nyx: move emuMMC backup folder to {emmc_sn}/emummc 2022-05-19 15:15:36 +03:00
CTCaer
38010ce65e nyx: utilize ini free and fix various memleaks
With the new changes the heap and heap node usage drops 95% on boot. Subsequent accesses to Launch/More config keep the counter the same.
2022-05-19 15:14:05 +03:00
CTCaer
fb45804adf nyx: refactor various functions and add comments
Emphasis on partition manager deduplication and remove of some magic numbers.
2022-05-16 13:28:38 +03:00
CTCaer
796207a41b nyx: do not allow joycon pairing info dump on Hoag 2022-05-16 13:12:45 +03:00
CTCaer
1649d446cd nyx: options: set min year for clock offset to 2022 2022-05-16 13:12:11 +03:00
CTCaer
7459214fed nyx: info: add mov r1 print for patched t210 2022-05-16 13:06:40 +03:00
CTCaer
c2ff5dbd1c nyx: add no box and 5 entries per line support
Icons that have `_nobox.bmp` in their name will make the grey background disappear.

Additionally a new option was added in Nyx Options called `Extended Boot Entries` that allows user to have a total of 10 entries showing up in Launch and More configs menus.
2022-05-13 03:49:32 +03:00
CTCaer
b9cdf5d697 nyx: fix s_printf bugs pointed by format checker 2022-05-12 16:43:18 +03:00
CTCaer
7df76bff4a nyx: input: add Sio support (for Hoag) 2022-05-09 06:13:10 +03:00
CTCaer
62d68b33c3 nyx: tools: use actual gpt entries num in part manager 2022-05-08 05:59:57 +03:00
CTCaer
c51877d588 nyx: tools: add mbr hidden attr fixer in hybrid mbr fixer 2022-05-08 05:59:32 +03:00
CTCaer
471f3c50ea nyx: tools: do not allow part manager backup/restore to hang on corruption 2022-05-08 05:57:59 +03:00
CTCaer
6d66bfc168 nyx: tools: do not allow arc bit fixer to hang on corruption
Check if path exceeds 1024 characters.
2022-05-08 05:56:44 +03:00
CTCaer
9163151dd0 nyx: info: add battery lot and another old panel rev 2022-05-08 05:55:46 +03:00
CTCaer
ae394d9f37 nyx: remove negative decimal external handling 2022-05-08 05:32:21 +03:00
CTCaer
1b7b7ab7f5 nyx: info: add new hynix chip model info 2022-05-08 05:00:46 +03:00
CTCaer
5c4e895c35 nyx: update dram/touch info for HOS 14.0.0 2022-03-23 02:21:21 +02:00
CTCaer
69c312daac nyx: clear B button context on option actions
Fixes an issue that was causing an NULL pointer dereference when a certain access path was followed
2022-03-23 00:55:18 +02:00
CTCaer
b7e59dfc28 nyx: print sd oemid in hex also 2022-03-23 00:53:56 +02:00
CTCaer
c04d423f4b nyx: add option to use right joycon as mouse control
`jcforceright=1` in nyx.ini enables that feature.
Useful for users with broken touch screen and broken left joycon rail.
2022-03-23 00:49:47 +02:00
CTCaer
af1ece903b nyx: Do not reserve alignment space if no extra partitions 2022-03-23 00:24:51 +02:00
CTCaer
a76ad9838e nyx: cosmetics 2022-02-15 00:29:23 +02:00
CTCaer
70ee61f0da More 2022 copyright updates 2022-01-29 01:43:35 +02:00
CTCaer
4a13a1d190 nyx: fix aula full emummc creation (for real this time) 2022-01-29 01:39:01 +02:00
CTCaer
2b7217242d nyx: align down resized emu sectors to cluster size 2022-01-29 01:37:57 +02:00
CTCaer
aee5861f65 hekate/nyx: improve cyclomatic complexity 2022-01-29 01:23:40 +02:00
CTCaer
d52283f0c2 nyx: add support for FULL emuMMC for OLED model
That supports creating a 64GB emuMMC partition.
That's added for consistency.
Because it's a waste of space, better use resized emuMMC.
2022-01-20 14:11:36 +02:00
CTCaer
49f34581bb hos: add 13.2.1 support 2022-01-20 14:06:50 +02:00
CTCaer
0a1db98210 nyx: add eMMC hw issues reporting 2022-01-20 14:00:45 +02:00
CTCaer
781f377083 nyx: adhere to nx_emmc_bis changes 2022-01-20 13:26:24 +02:00
CTCaer
28167b7304 hekate/nyx: move emmc ops to bdk and adhere to changes 2022-01-20 13:15:04 +02:00
CTCaer
6092994240 nyx: sd part: set attributes to folders also on restore 2022-01-16 01:38:47 +02:00
CTCaer
5a88f7bc06 nyx: info: highlight battery temp info if cold/hot 2022-01-16 01:37:26 +02:00
CTCaer
5894062b93 hekate/nyx: utilize bdk global header 2022-01-16 00:04:34 +02:00
CTCaer
b0fe84070f nyx: add new touch panel fw info
Additionally, do not alloc/free heap every time status bar update must run
2021-10-26 10:55:11 +03:00
CTCaer
bdd9e48606 nyx: simplify touch ic fw ids 2021-10-19 09:16:18 +03:00
CTCaer
25a7544010 nyx: add new mircon ram model info 2021-10-19 09:15:28 +03:00
CTCaer
821ad23341 nyx: add fuses keygen revision info 2021-10-19 09:14:36 +03:00
CTCaer
3c81ac91df nyx: fix months that have 30/31 days on date picker 2021-10-15 16:50:16 +03:00
CTCaer
147c82e0e2 nyx: fix text color on restore emmc errors 2021-10-15 16:49:28 +03:00
CTCaer
d2595a00b6 nyx: move autorcm protection in nyx 2021-10-15 16:34:15 +03:00
CTCaer
734e70b755 nyx: add samsung display/touch model info 2021-10-15 16:08:48 +03:00
CTCaer
91b08f10fd hekate/nyx: use size defines where applicable 2021-10-01 15:45:25 +03:00
CTCaer
e31d6446db nyx: correct reboot name for patched devices 2021-09-26 12:53:34 +03:00
CTCaer
609a76045a nyx: remove always true check 2021-09-26 12:16:04 +03:00
CTCaer
000ea3096a nyx: check if emuMMC path is null before producing the ID 2021-09-26 12:15:25 +03:00
CTCaer
983d661da5 nyx: add many SD manufacturers
This will now properly identify many more manufacturers.
As a reminder, it shows who made the sd card, even if the SD card has another vendor name.

In that case, it's normally because the manufacturing is outsourced and vendor only puts a label on it.
For example, now lexar, transcend and sony do not exist in the list as they don't manufacture sd card nands and microcontrollers
2021-09-17 23:45:48 +03:00
CTCaer
da08d00d21 nyx: replace Tsec Keys with Lockpick RCM
This checks if bootloader/payloads/Lockpick_RCM.bin exists and if found it allows to launch it directly from there.

Only works with Lockpick RCM copied there and is version 1.9.5 or newer.
2021-09-17 23:41:40 +03:00
CTCaer
6bd4c31965 nyx: add info for new touch panels
New 6.2" touch panel and a new firmware for 7.0"
2021-09-17 23:37:43 +03:00
CTCaer
af7bee2231 nyx: derive emuMMC ID from its main path
This allows every emuMMC to have a unique id because its path is unique.
2021-09-17 23:35:13 +03:00
CTCaer
d61be73bca nyx: add reminder that reload also checks for update.bin 2021-09-17 23:34:16 +03:00
CTCaer
9363494c3f nyx: lower launch priority for ums boot
This fixes the backlight not being dimmed if UMS is launched from boot
2021-08-28 20:08:08 +03:00
CTCaer
792a3511da nyx: clear nand patrol for resized emummc
On used eMMCs, the usage size might exceed the new resized size.
In such cases if the nand patrol points there, it will cause the sd card to timeout because of out of bounds access.

Clearing that allows resized emuMMC to always have the same speed as full sized emuMMC.
2021-08-28 18:09:34 +03:00
CTCaer
9ba867f19e nyx: fix missing labels in launch if a previous label was big 2021-08-28 18:07:32 +03:00
CTCaer
49943ee46f nyx: unconditionally dump pk1/2 encrypted states 2021-08-28 18:06:32 +03:00
CTCaer
2a8c58af31 nyx: improve info tools
- Add Aula report
- Add new dram ids/names
- Signify that a SD card is fake if MID is 0
2021-08-28 18:05:49 +03:00
CTCaer
66cf88b967 nyx: fix percentage when restoring size unmatched emmc backup 2021-08-28 18:04:24 +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
a704679990 nyx: add sandisk device report for eMMC mods 2021-07-06 19:51:00 +03:00
CTCaer
e94bd23d6f nyx: info: add missing old touch fw version 2021-07-06 10:10:17 +03:00
CTCaer
cd5b93feb1 nyx: tools: improve error messaging when restore folder is empty 2021-07-06 10:09:06 +03:00
CTCaer
8eda2d805f nyx: explicitly state if fuses are overburnt 2021-06-08 05:57:39 +03:00
CTCaer
432d4a4ffa Use bit_count for burnt fuses counting 2021-06-08 05:57:00 +03:00
CTCaer
8058d550ab nyx: reflect 5v regulator changes 2021-06-08 05:51:52 +03:00
CTCaer
3f22601022 Bump hekate to v5.5.6 and Nyx to v1.0.3 2021-05-12 12:55:03 +03:00
CTCaer
7c450f4a5f hos: 12.0.2 support 2021-05-12 11:47:39 +03:00
CTCaer
6316d3076d nyx: fix restore logic when backup does not match emmc
- If sd backup size exceeds eMMC size, bail out.
- If partial files backup is smaller allow restoring in case user has an eMMC upgrade.
 Following the same behavior that single file backup has when it's smaller.
2021-05-12 11:47:25 +03:00
CTCaer
d0fefabad7 nyx: return unknown if SD vendor is not known
TODO: Investigate which OEM/ODM makes the new Lexar SD cards.
2021-05-11 10:07:08 +03:00
CTCaer
44db160ab1 nyx: add info about new InnoLux panel revision 2021-05-11 10:04:31 +03:00
CTCaer
66b7130641 nyx: align total sectors to guarantee alignment
Helps on some sd cards with weird total sectors number.
2021-05-11 09:57:29 +03:00
CTCaer
588a834ae4 nyx: allow backing up resized emummc 2021-05-11 09:34:19 +03:00
CTCaer
833dda7e7c nyx: bpmp: automatically find best clock for t210
There were 4 reports of Nyx hanging or UMS and backup verification failing because of low binned Erista SoC.

This change reduces clock for hekate main and Nyx will now automatically try and find a working one.
In case Nyx hangs it will reduce it on next inject.

If Nyx works and user still has issues with UMS/Verification, manually editing nyx.ini and setting `bpmpclock=2` will fix that.
2021-05-11 09:32:38 +03:00
CTCaer
978e8344cf nyx: check for errors in benchmark 2021-04-11 09:28:28 +03:00
CTCaer
160d6eacc0 nyx: add new touch panel id 2021-04-11 09:27:47 +03:00
CTCaer
f66ddca100 nyx: make hybrid mbr fixer smarter
Allow usage of FatFS simple gpt parsing for setting the fat partition in case its label is not hos_data.
Additionally allow hos_data partition to not be the first one.
2021-03-17 09:20:01 +02:00
CTCaer
6981c59de3 gpt: properly check that GPT is valid 2021-03-17 09:14:50 +02:00
CTCaer
f21f13b15d ums/nyx: reinit sd to update cal trimmers for max perf 2021-03-17 09:12:30 +02:00
CTCaer
ef5a01433d nyx: inform user that Fix RAW also fixes partition type 2021-03-17 09:09:59 +02:00
CTCaer
0e12d8545b Decrease stack usage on various functions 2021-03-17 09:08:34 +02:00
CTCaer
dbe431095a touch: report gpio info in case of unknown panel 2021-03-17 08:53:23 +02:00
CTCaer
38ce46a158 nyx: Add more info while formatting emuMMC USER 2021-02-08 03:52:23 +02:00
CTCaer
c6ec175045 Bump hekate to v5.5.4 and Nyx to v1.0.0 2021-02-06 17:32:07 +02:00
CTCaer
3b9ab66cf1 nyx: Add resized emuMMC creation 2021-02-06 17:19:37 +02:00
CTCaer
b6e458e97b sept: Correct bct buffer pointer and turn on backlight on error 2021-02-06 17:14:07 +02:00
CTCaer
c5152f6a9d nyx: Correct double emuMMC values in part manager 2021-02-06 17:12:09 +02:00
CTCaer
f3f1d4d4f0 sdmmc: More functions use the global emmc storage 2021-02-06 17:10:13 +02:00
CTCaer
796b15a861 nyx: Correct text in Launch when missing boot entries 2021-02-06 04:47:23 +02:00
CTCaer
add351289a nyx: Show status for migration and update main window 2021-02-06 04:46:10 +02:00
CTCaer
a31bedda97 ramdisk: Sypport variable size 2021-02-06 04:15:19 +02:00
CTCaer
a25c82a8ce nyx: Allow fix hybrid mbr tool to always run 2021-02-06 04:10:50 +02:00
CTCaer
8ccc47dfa5 nyx: Add resized raw emuMMC support in partition manager 2021-02-06 04:10:02 +02:00
CTCaer
9de5a4ba66 nyx: Swap tab for Partition Manager and Dump Pkg1/2 2021-02-06 04:07:28 +02:00
CTCaer
84e437ae5b nyx: Explicitly state status in Joycon BT dumping 2021-02-06 04:06:09 +02:00
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
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
8cd438146d sdmmc: Use global emmc storage in various places 2021-02-06 03:19:42 +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
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
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
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
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
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
f9a1935762 nyx: Fix Dump pkg1/pkg2 and cal0 for Mariko 2020-07-04 21:36:04 +03:00
CTCaer
9b3e9724b7 hos: Add Mariko PK11 decryption and unpacking 2020-07-04 21:32:36 +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
55568b037f nyx: Properly calculate Ranks and Channels in hw info 2020-11-15 13:50:19 +02:00